diff options
author | Nathan Harold <nharold@google.com> | 2018-02-09 18:05:40 -0800 |
---|---|---|
committer | nharold <nharold@google.com> | 2018-02-14 23:49:44 +0000 |
commit | d0f9466801e262bd5d30ca3e4be9011f61f72b82 (patch) | |
tree | a804db28e1d262292465bc2978ada9679f210356 | |
parent | 73f36294ce40ce5cd342597d19bd1c2f7fbe37a3 (diff) | |
download | platform_hardware_interfaces-d0f9466801e262bd5d30ca3e4be9011f61f72b82.tar.gz platform_hardware_interfaces-d0f9466801e262bd5d30ca3e4be9011f61f72b82.tar.bz2 platform_hardware_interfaces-d0f9466801e262bd5d30ca3e4be9011f61f72b82.zip |
Update WcdmaSignalStrength to add RAT-specific fields
-Add RSCP and ECNO to WcdmaSignalStrength
-Add WcdmaSignalStrength to SignalStrength struct.
With this change we can now report the correct WCDMA
ASU due to our ability to now differentiate the SS
based on the RAT without needing additional info.
Bug: 71329173
Test: runtest frameworks-telephony
Change-Id: Ibce0ba38bf2d7e4f3e6c09f53303c0ba83dc6080
-rw-r--r-- | radio/1.2/Android.bp | 2 | ||||
-rw-r--r-- | radio/1.2/IRadioIndication.hal | 14 | ||||
-rw-r--r-- | radio/1.2/IRadioResponse.hal | 10 | ||||
-rw-r--r-- | radio/1.2/types.hal | 30 |
4 files changed, 51 insertions, 5 deletions
diff --git a/radio/1.2/Android.bp b/radio/1.2/Android.bp index 48ac5a13d5..90b4841e10 100644 --- a/radio/1.2/Android.bp +++ b/radio/1.2/Android.bp @@ -44,6 +44,8 @@ hidl_interface { "PhysicalChannelConfig", "RadioConst", "ScanIntervalRange", + "SignalStrength", + "WcdmaSignalStrength", ], gen_java: true, } diff --git a/radio/1.2/IRadioIndication.hal b/radio/1.2/IRadioIndication.hal index a12455738a..3d93b986fa 100644 --- a/radio/1.2/IRadioIndication.hal +++ b/radio/1.2/IRadioIndication.hal @@ -34,7 +34,7 @@ interface IRadioIndication extends @1.1::IRadioIndication { * Same information as returned by getCellInfoList() in 1.0::IRadio. * * @param type Type of radio indication - * @param records Current cell information known to radio + * @param records Current cell information */ oneway cellInfoList_1_2(RadioIndicationType type, vec<CellInfo> records); @@ -50,7 +50,7 @@ interface IRadioIndication extends @1.1::IRadioIndication { * suppressed by @1.2::IRadio.setIndicationFilter_1_2(). * * @param type Type of radio indication - * @param lce LinkCapacityEstimate information as defined in types.hal + * @param lce LinkCapacityEstimate */ oneway currentLinkCapacityEstimate(RadioIndicationType type, LinkCapacityEstimate lce); @@ -58,8 +58,16 @@ interface IRadioIndication extends @1.1::IRadioIndication { * Indicates physical channel configurations. * * @param type Type of radio indication - * @param configs List of PhysicalChannelConfigs as defined in types.hal + * @param configs Vector of PhysicalChannelConfigs */ oneway currentPhysicalChannelConfigs(RadioIndicationType type, vec<PhysicalChannelConfig> configs); + + /** + * Indicates current signal strength of the radio. + * + * @param type Type of radio indication + * @param signalStrength SignalStrength information + */ + oneway currentSignalStrength_1_2(RadioIndicationType type, SignalStrength signalStrength); }; diff --git a/radio/1.2/IRadioResponse.hal b/radio/1.2/IRadioResponse.hal index 93ec4d7497..fb362a00e6 100644 --- a/radio/1.2/IRadioResponse.hal +++ b/radio/1.2/IRadioResponse.hal @@ -88,4 +88,14 @@ interface IRadioResponse extends @1.1::IRadioResponse { * RadioError:CANCELLED */ oneway getCurrentCallsResponse_1_2(RadioResponseInfo info, vec<Call> calls); + + /** + * @param sigStrength Current signal strength + * + * Valid errors returned: + * RadioError:NONE + * RadioError:RADIO_NOT_AVAILABLE + * RadioError:INTERNAL_ERR + */ + oneway getSignalStrengthResponse_1_2(RadioResponseInfo info, SignalStrength sigStrength); }; diff --git a/radio/1.2/types.hal b/radio/1.2/types.hal index c353645cc7..9723326777 100644 --- a/radio/1.2/types.hal +++ b/radio/1.2/types.hal @@ -17,9 +17,9 @@ package android.hardware.radio@1.2; import @1.0::Call; -import @1.0::CdmaSignalStrength; import @1.0::CardState; import @1.0::CardStatus; +import @1.0::CdmaSignalStrength; import @1.0::CellIdentityCdma; import @1.0::CellIdentityGsm; import @1.0::CellIdentityLte; @@ -30,10 +30,12 @@ import @1.0::EvdoSignalStrength; import @1.0::GsmSignalStrength; import @1.0::LteSignalStrength; import @1.0::RadioConst; +import @1.0::RadioError; +import @1.0::SignalStrength; +import @1.0::TdScdmaSignalStrength; import @1.0::TimeStampType; import @1.0::WcdmaSignalStrength; import @1.1::RadioAccessSpecifier; -import @1.0::RadioError; import @1.1::ScanStatus; import @1.1::ScanType; @@ -397,3 +399,27 @@ struct Call { @1.0::Call base; AudioQuality audioQuality; }; + +struct WcdmaSignalStrength { + @1.0::WcdmaSignalStrength base; + /** + * CPICH RSCP as defined in TS 25.215 5.1.1 + * Valid values are (0-96, 255) as defined in TS 27.007 8.69 + */ + uint32_t rscp; + /** + * Ec/No value as defined in TS 25.215 5.1.5 + * Valid values are (0-49, 255) as defined in TS 27.007 8.69 + */ + uint32_t ecno; + +}; + +struct SignalStrength { + GsmSignalStrength gsm; + CdmaSignalStrength cdma; + EvdoSignalStrength evdo; + LteSignalStrength lte; + TdScdmaSignalStrength tdScdma; + WcdmaSignalStrength wcdma; +}; |