Fixes to Align TdScdma Reports with All Others
-Add uarfn to CellIdentityTdscdma
-Add OperatorNames to CellIdentityTdscdma
-Rename TdScdmaSignalStrength to TdsdcmaSignalStrength
-Add support for RSSI and BER reporting to match all
the other signal strength structures
-Change the reporting format for RSCP to use the ASU
format that is reported for all the other techs.
Bug: 73177585
Bug: 73177467
Bug: 73177872
Test: compilation
Change-Id: I4200ca603b03f182293de4960b01067263833d4a
diff --git a/radio/1.2/Android.bp b/radio/1.2/Android.bp
index 90b4841..a9c80b7 100644
--- a/radio/1.2/Android.bp
+++ b/radio/1.2/Android.bp
@@ -28,11 +28,13 @@
"CellIdentityGsm",
"CellIdentityLte",
"CellIdentityOperatorNames",
+ "CellIdentityTdscdma",
"CellIdentityWcdma",
"CellInfo",
"CellInfoCdma",
"CellInfoGsm",
"CellInfoLte",
+ "CellInfoTdscdma",
"CellInfoWcdma",
"DataRequestReason",
"IncrementalResultsPeriodicityRange",
@@ -45,6 +47,7 @@
"RadioConst",
"ScanIntervalRange",
"SignalStrength",
+ "TdscdmaSignalStrength",
"WcdmaSignalStrength",
],
gen_java: true,
diff --git a/radio/1.2/IRadioResponse.hal b/radio/1.2/IRadioResponse.hal
index fb362a0..f26c9ec 100644
--- a/radio/1.2/IRadioResponse.hal
+++ b/radio/1.2/IRadioResponse.hal
@@ -90,12 +90,12 @@
oneway getCurrentCallsResponse_1_2(RadioResponseInfo info, vec<Call> calls);
/**
- * @param sigStrength Current signal strength
+ * @param signalStrength Current signal strength
*
* Valid errors returned:
* RadioError:NONE
* RadioError:RADIO_NOT_AVAILABLE
* RadioError:INTERNAL_ERR
*/
- oneway getSignalStrengthResponse_1_2(RadioResponseInfo info, SignalStrength sigStrength);
+ oneway getSignalStrengthResponse_1_2(RadioResponseInfo info, SignalStrength signalStrength);
};
diff --git a/radio/1.2/types.hal b/radio/1.2/types.hal
index 9723326..8b38f42 100644
--- a/radio/1.2/types.hal
+++ b/radio/1.2/types.hal
@@ -23,6 +23,7 @@
import @1.0::CellIdentityCdma;
import @1.0::CellIdentityGsm;
import @1.0::CellIdentityLte;
+import @1.0::CellIdentityTdscdma;
import @1.0::CellIdentityWcdma;
import @1.0::CellInfoTdscdma;
import @1.0::CellInfoType;
@@ -253,6 +254,15 @@
int32_t bandwidth;
};
+struct CellIdentityTdscdma {
+ @1.0::CellIdentityTdscdma base;
+ /**
+ * 16-bit UMTS Absolute RF Channel Number defined in TS 25.102 5.4.4; this value must be valid.
+ */
+ int32_t uarfcn;
+ CellIdentityOperatorNames operatorNames;
+};
+
struct CellIdentityWcdma {
@1.0::CellIdentityWcdma base;
CellIdentityOperatorNames operatorNames;
@@ -279,6 +289,11 @@
LteSignalStrength signalStrengthLte;
};
+struct CellInfoTdscdma {
+ CellIdentityTdscdma cellIdentityTdscdma;
+ TdscdmaSignalStrength signalStrengthTdscdma;
+};
+
struct CellInfo {
/**
* Cell type for selecting from union CellInfo.
@@ -415,6 +430,24 @@
};
+struct TdscdmaSignalStrength {
+ /**
+ * UTRA carrier RSSI as defined in TS 25.225 5.1.4
+ * Valid values are (0-96, 99) as defined in TS 27.007 8.69
+ */
+ uint32_t signalStrength;
+ /**
+ * Transport Channel BER as defined in TS 25.225 5.2.5
+ * Valid values are (0-49, 99) as defined in TS 27.007 8.69
+ */
+ uint32_t bitErrorRate;
+ /**
+ * P-CCPCH RSCP as defined in TS 25.225 5.1.1
+ * Valid values are (0-96, 255) as defined in TS 27.007 8.69
+ */
+ uint32_t rscp;
+};
+
struct SignalStrength {
GsmSignalStrength gsm;
CdmaSignalStrength cdma;