summaryrefslogtreecommitdiff
path: root/telephony
diff options
context:
space:
mode:
authorZoey Chen <zoeychen@google.com>2021-07-24 09:13:19 +0800
committerZoey Chen <zoeychen@google.com>2021-07-27 00:43:16 +0000
commite5225ba858c721f8317cba21bc1d3caa535e7e8b (patch)
treed3c3b3c1d6de75b031a971bf13a547e4a262b147 /telephony
parentfd94d33a17226c09bfebe3c544fa034d7f4d864a (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')
-rw-r--r--telephony/java/android/telephony/AccessNetworkUtils.java12
-rw-r--r--telephony/java/android/telephony/PhysicalChannelConfig.java3
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(