diff options
author | Zoey Chen <zoeychen@google.com> | 2021-07-24 09:13:19 +0800 |
---|---|---|
committer | Zoey Chen <zoeychen@google.com> | 2021-07-27 00:43:16 +0000 |
commit | e5225ba858c721f8317cba21bc1d3caa535e7e8b (patch) | |
tree | d3c3b3c1d6de75b031a971bf13a547e4a262b147 /telephony/java | |
parent | fd94d33a17226c09bfebe3c544fa034d7f4d864a (diff) |
[PhysicalChannelConfig] UL's frequency should not be same with DL's
Bug: 194042135
Test: atset PhysicalChannelConfigTest
Change-Id: I1225a1429ff77b33c54af0dfce60a8739494e47a
Merged-In: I1225a1429ff77b33c54af0dfce60a8739494e47a
Diffstat (limited to 'telephony/java')
-rw-r--r-- | telephony/java/android/telephony/AccessNetworkUtils.java | 12 | ||||
-rw-r--r-- | telephony/java/android/telephony/PhysicalChannelConfig.java | 3 |
2 files changed, 14 insertions, 1 deletions
diff --git a/telephony/java/android/telephony/AccessNetworkUtils.java b/telephony/java/android/telephony/AccessNetworkUtils.java index 6b820459be98..b5d97abdd3eb 100644 --- a/telephony/java/android/telephony/AccessNetworkUtils.java +++ b/telephony/java/android/telephony/AccessNetworkUtils.java @@ -567,6 +567,10 @@ public class AccessNetworkUtils { */ public static int getFrequencyFromNrArfcn(int nrArfcn) { + if (nrArfcn == PhysicalChannelConfig.CHANNEL_NUMBER_UNKNOWN) { + return PhysicalChannelConfig.FREQUENCY_UNKNOWN; + } + int globalKhz = 0; int rangeOffset = 0; int arfcnOffset = 0; @@ -632,6 +636,10 @@ public class AccessNetworkUtils { */ public static int getFrequencyFromUarfcn(int band, int uarfcn, boolean isUplink) { + if (uarfcn == PhysicalChannelConfig.CHANNEL_NUMBER_UNKNOWN) { + return PhysicalChannelConfig.FREQUENCY_UNKNOWN; + } + int offsetKhz = 0; for (UtranBandArfcnFrequency uarfcnFrequency : AccessNetworkConstants. UtranBandArfcnFrequency.values()) { @@ -702,6 +710,10 @@ public class AccessNetworkUtils { */ public static int getFrequencyFromArfcn(int band, int arfcn, boolean isUplink) { + if (arfcn == PhysicalChannelConfig.CHANNEL_NUMBER_UNKNOWN) { + return PhysicalChannelConfig.FREQUENCY_UNKNOWN; + } + int uplinkFrequencyFirst = 0; int arfcnOffset = 0; int downlinkOffset = 0; diff --git a/telephony/java/android/telephony/PhysicalChannelConfig.java b/telephony/java/android/telephony/PhysicalChannelConfig.java index 8df41fb6b288..d250088c2f10 100644 --- a/telephony/java/android/telephony/PhysicalChannelConfig.java +++ b/telephony/java/android/telephony/PhysicalChannelConfig.java @@ -338,7 +338,8 @@ public final class PhysicalChannelConfig implements Parcelable { private void setUplinkFrequency() { switch (mNetworkType){ case TelephonyManager.NETWORK_TYPE_NR: - mUplinkFrequency = mDownlinkFrequency; + mUplinkFrequency = AccessNetworkUtils.getFrequencyFromNrArfcn( + mUplinkChannelNumber); break; case TelephonyManager.NETWORK_TYPE_LTE: mUplinkFrequency = AccessNetworkUtils.getFrequencyFromEarfcn( |