Loading radio/1.4/Android.bp +4 −0 Original line number Diff line number Diff line Loading @@ -25,8 +25,10 @@ hidl_interface { "CardStatus", "CarrierRestrictionsWithPriority", "CellConfigLte", "CellIdentityNr", "CellInfo", "CellInfoLte", "CellInfoNr", "DataCallFailCause", "DataConnActiveStatus", "DataProfileInfo", Loading @@ -39,6 +41,7 @@ hidl_interface { "LteVopsInfo", "NetworkScanResult", "NrIndicators", "NrSignalStrength", "PdpProtocolType", "PhysicalChannelConfig", "RadioAccessFamily", Loading @@ -46,6 +49,7 @@ hidl_interface { "RadioFrequencyInfo", "RadioTechnology", "SetupDataCallResult", "SignalStrength", "SimLockMultiSimPolicy", ], gen_java: true, Loading radio/1.4/IRadio.hal +9 −0 Original line number Diff line number Diff line Loading @@ -215,4 +215,13 @@ interface IRadio extends @1.3::IRadio { * Response callback is IRadioResponse.getAllowedCarriersResponse_1_3() */ oneway getAllowedCarriers_1_4(int32_t serial); /** * Requests current signal strength and associated information. Must succeed if radio is on. * * @param serial Serial number of request. * * Response function is IRadioResponse.getSignalStrengthResponse_1_4() */ oneway getSignalStrength_1_4(int32_t serial); }; radio/1.4/IRadioIndication.hal +8 −0 Original line number Diff line number Diff line Loading @@ -89,4 +89,12 @@ interface IRadioIndication extends @1.3::IRadioIndication { * 3. Unsolicited disconnect from either modem or network side. */ oneway dataCallListChanged_1_4(RadioIndicationType type, vec<SetupDataCallResult> dcList); /** * Indicates current signal strength of the radio. * * @param type Type of radio indication * @param signalStrength SignalStrength information */ oneway currentSignalStrength_1_4(RadioIndicationType type, SignalStrength signalStrength); }; radio/1.4/IRadioResponse.hal +11 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import @1.4::CellInfo; import @1.4::DataRegStateResult; import @1.4::RadioAccessFamily; import @1.4::SetupDataCallResult; import @1.4::SignalStrength; import @1.4::SimLockMultiSimPolicy; /** Loading Loading @@ -200,4 +201,14 @@ interface IRadioResponse extends @1.3::IRadioResponse { */ oneway getAllowedCarriersResponse_1_4(RadioResponseInfo info, CarrierRestrictionsWithPriority carriers, SimLockMultiSimPolicy multiSimPolicy); /** * @param signalStrength Current signal strength * * Valid errors returned: * RadioError:NONE * RadioError:RADIO_NOT_AVAILABLE * RadioError:INTERNAL_ERR */ oneway getSignalStrengthResponse_1_4(RadioResponseInfo info, SignalStrength signalStrength); }; radio/1.4/types.hal +149 −4 Original line number Diff line number Diff line Loading @@ -20,9 +20,13 @@ import @1.0::ApnAuthType; import @1.0::ApnTypes; import @1.0::Carrier; import @1.0::CellInfoType; import @1.0::CdmaSignalStrength; import @1.0::DataCallFailCause; import @1.0::DataProfileId; import @1.0::DataProfileInfoType; import @1.0::EvdoSignalStrength; import @1.0::GsmSignalStrength; import @1.0::LteSignalStrength; import @1.0::RadioAccessFamily; import @1.0::RadioCapabilityPhase; import @1.0::RadioCapabilityStatus; Loading @@ -39,10 +43,17 @@ import @1.2::CellInfoLte; import @1.2::CellInfoTdscdma; import @1.2::CellInfoWcdma; import @1.2::CardStatus; import @1.2::CellIdentity; import @1.2::CellConnectionStatus; import @1.2::CellIdentityCdma; import @1.2::CellIdentityGsm; import @1.2::CellIdentityLte; import @1.2::CellIdentityTdscdma; import @1.2::CellIdentityWcdma; import @1.2::CellIdentityOperatorNames; import @1.2::DataRegStateResult; import @1.2::PhysicalChannelConfig; import @1.2::TdscdmaSignalStrength; import @1.2::WcdmaSignalStrength; import android.hidl.safe_union@1.0::Monostate; Loading Loading @@ -188,12 +199,12 @@ enum EmergencyCallRouting : int32_t { }; enum RadioTechnology : @1.0::RadioTechnology { /** 5G NR. */ /** 5G NR. This is only use in 5G Standalone mode. */ NR = 20, }; enum RadioAccessFamily : @1.0::RadioAccessFamily { /** 5G NR. */ /** 5G NR. This is only use in 5G Standalone mode. */ NR = 1 << RadioTechnology:NR, }; Loading Loading @@ -1551,9 +1562,15 @@ struct CellInfo { CellInfoWcdma wcdma; CellInfoTdscdma tdscdma; CellInfoLte lte; CellInfoNr nr; } info; }; struct CellInfoNr { NrSignalStrength signalStrength; CellIdentityNr cellidentity; }; /** Overwritten from @1.2::NetworkScanResult in order to update the CellInfo to 1.4 version. */ struct NetworkScanResult { /** Loading Loading @@ -1770,3 +1787,131 @@ struct CarrierRestrictionsWithPriority { */ bool allowedCarriersPrioritized; }; struct CellIdentityNr { /** 3-digit Mobile Country Code, in range[0, 999], INT_MAX means invalid/unreported. */ string mcc; /** * 2 or 3-digit Mobile Network Code, in range [0, 999], INT_MAX means invalid/unreported. */ string mnc; /** * Physical cell id in range [0, 1007] described in 3GPP TS 38.331. This value must be valid. */ uint32_t pci; /** 16-bit tracking area code, INT_MAX means invalid/unreported. */ int32_t tac; /** * NR Absolute Radio Frequency Channel Number, in range [0, 3279165]. * Reference: 3GPP TS 38.101-1 and 3GPP TS 38.101-2 section 5.4.2.1. * This value must be valid. */ int32_t nrarfcn; CellIdentityOperatorNames operatorNames; }; struct NrSignalStrength { /** * SS reference signal received power, multipled by -1. * * Reference: 3GPP TS 38.215. * * Range [44, 140], INT_MAX means invalid/unreported. */ int32_t ssRsrp; /** * SS reference signal received quality, multipled by -1. * * Reference: 3GPP TS 38.215. * * Range [3, 20], INT_MAX means invalid/unreported. */ int32_t ssRsrq; /** * SS signal-to-noise and interference ratio. * * Reference: 3GPP TS 38.215 section 5.1.*, 3GPP TS 38.133 section 10.1.16.1. * * Range [-23, 40], INT_MAX means invalid/unreported. */ int32_t ssSinr; /** * CSI reference signal received power, multipled by -1. * * Reference: 3GPP TS 38.215. * * Range [44, 140], INT_MAX means invalid/unreported. */ int32_t csiRsrp; /** * CSI reference signal received quality, multipled by -1. * * Reference: 3GPP TS 38.215. * * Range [3, 20], INT_MAX means invalid/unreported. */ int32_t csiRsrq; /** * CSI signal-to-noise and interference ratio. * * Reference: 3GPP TS 138.215 section 5.1.*, 3GPP TS 38.133 section 10.1.16.1. * * Range [-23, 40], INT_MAX means invalid/unreported. */ int32_t csiSinr; }; /** Overwritten from @1.2::SignalStrength in order to add signal strength for NR. */ struct SignalStrength { /** * If GSM measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ GsmSignalStrength gsm; /** * If CDMA measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ CdmaSignalStrength cdma; /** * If EvDO measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ EvdoSignalStrength evdo; /** * If LTE measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ LteSignalStrength lte; /** * If TD-SCDMA measurements are provided, this structure must contain valid measurements; * otherwise all fields should be set to INT_MAX to mark them as invalid. */ TdscdmaSignalStrength tdscdma; /** * If WCDMA measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ WcdmaSignalStrength wcdma; /** * If NR 5G measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ NrSignalStrength nr; }; Loading
radio/1.4/Android.bp +4 −0 Original line number Diff line number Diff line Loading @@ -25,8 +25,10 @@ hidl_interface { "CardStatus", "CarrierRestrictionsWithPriority", "CellConfigLte", "CellIdentityNr", "CellInfo", "CellInfoLte", "CellInfoNr", "DataCallFailCause", "DataConnActiveStatus", "DataProfileInfo", Loading @@ -39,6 +41,7 @@ hidl_interface { "LteVopsInfo", "NetworkScanResult", "NrIndicators", "NrSignalStrength", "PdpProtocolType", "PhysicalChannelConfig", "RadioAccessFamily", Loading @@ -46,6 +49,7 @@ hidl_interface { "RadioFrequencyInfo", "RadioTechnology", "SetupDataCallResult", "SignalStrength", "SimLockMultiSimPolicy", ], gen_java: true, Loading
radio/1.4/IRadio.hal +9 −0 Original line number Diff line number Diff line Loading @@ -215,4 +215,13 @@ interface IRadio extends @1.3::IRadio { * Response callback is IRadioResponse.getAllowedCarriersResponse_1_3() */ oneway getAllowedCarriers_1_4(int32_t serial); /** * Requests current signal strength and associated information. Must succeed if radio is on. * * @param serial Serial number of request. * * Response function is IRadioResponse.getSignalStrengthResponse_1_4() */ oneway getSignalStrength_1_4(int32_t serial); };
radio/1.4/IRadioIndication.hal +8 −0 Original line number Diff line number Diff line Loading @@ -89,4 +89,12 @@ interface IRadioIndication extends @1.3::IRadioIndication { * 3. Unsolicited disconnect from either modem or network side. */ oneway dataCallListChanged_1_4(RadioIndicationType type, vec<SetupDataCallResult> dcList); /** * Indicates current signal strength of the radio. * * @param type Type of radio indication * @param signalStrength SignalStrength information */ oneway currentSignalStrength_1_4(RadioIndicationType type, SignalStrength signalStrength); };
radio/1.4/IRadioResponse.hal +11 −0 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import @1.4::CellInfo; import @1.4::DataRegStateResult; import @1.4::RadioAccessFamily; import @1.4::SetupDataCallResult; import @1.4::SignalStrength; import @1.4::SimLockMultiSimPolicy; /** Loading Loading @@ -200,4 +201,14 @@ interface IRadioResponse extends @1.3::IRadioResponse { */ oneway getAllowedCarriersResponse_1_4(RadioResponseInfo info, CarrierRestrictionsWithPriority carriers, SimLockMultiSimPolicy multiSimPolicy); /** * @param signalStrength Current signal strength * * Valid errors returned: * RadioError:NONE * RadioError:RADIO_NOT_AVAILABLE * RadioError:INTERNAL_ERR */ oneway getSignalStrengthResponse_1_4(RadioResponseInfo info, SignalStrength signalStrength); };
radio/1.4/types.hal +149 −4 Original line number Diff line number Diff line Loading @@ -20,9 +20,13 @@ import @1.0::ApnAuthType; import @1.0::ApnTypes; import @1.0::Carrier; import @1.0::CellInfoType; import @1.0::CdmaSignalStrength; import @1.0::DataCallFailCause; import @1.0::DataProfileId; import @1.0::DataProfileInfoType; import @1.0::EvdoSignalStrength; import @1.0::GsmSignalStrength; import @1.0::LteSignalStrength; import @1.0::RadioAccessFamily; import @1.0::RadioCapabilityPhase; import @1.0::RadioCapabilityStatus; Loading @@ -39,10 +43,17 @@ import @1.2::CellInfoLte; import @1.2::CellInfoTdscdma; import @1.2::CellInfoWcdma; import @1.2::CardStatus; import @1.2::CellIdentity; import @1.2::CellConnectionStatus; import @1.2::CellIdentityCdma; import @1.2::CellIdentityGsm; import @1.2::CellIdentityLte; import @1.2::CellIdentityTdscdma; import @1.2::CellIdentityWcdma; import @1.2::CellIdentityOperatorNames; import @1.2::DataRegStateResult; import @1.2::PhysicalChannelConfig; import @1.2::TdscdmaSignalStrength; import @1.2::WcdmaSignalStrength; import android.hidl.safe_union@1.0::Monostate; Loading Loading @@ -188,12 +199,12 @@ enum EmergencyCallRouting : int32_t { }; enum RadioTechnology : @1.0::RadioTechnology { /** 5G NR. */ /** 5G NR. This is only use in 5G Standalone mode. */ NR = 20, }; enum RadioAccessFamily : @1.0::RadioAccessFamily { /** 5G NR. */ /** 5G NR. This is only use in 5G Standalone mode. */ NR = 1 << RadioTechnology:NR, }; Loading Loading @@ -1551,9 +1562,15 @@ struct CellInfo { CellInfoWcdma wcdma; CellInfoTdscdma tdscdma; CellInfoLte lte; CellInfoNr nr; } info; }; struct CellInfoNr { NrSignalStrength signalStrength; CellIdentityNr cellidentity; }; /** Overwritten from @1.2::NetworkScanResult in order to update the CellInfo to 1.4 version. */ struct NetworkScanResult { /** Loading Loading @@ -1770,3 +1787,131 @@ struct CarrierRestrictionsWithPriority { */ bool allowedCarriersPrioritized; }; struct CellIdentityNr { /** 3-digit Mobile Country Code, in range[0, 999], INT_MAX means invalid/unreported. */ string mcc; /** * 2 or 3-digit Mobile Network Code, in range [0, 999], INT_MAX means invalid/unreported. */ string mnc; /** * Physical cell id in range [0, 1007] described in 3GPP TS 38.331. This value must be valid. */ uint32_t pci; /** 16-bit tracking area code, INT_MAX means invalid/unreported. */ int32_t tac; /** * NR Absolute Radio Frequency Channel Number, in range [0, 3279165]. * Reference: 3GPP TS 38.101-1 and 3GPP TS 38.101-2 section 5.4.2.1. * This value must be valid. */ int32_t nrarfcn; CellIdentityOperatorNames operatorNames; }; struct NrSignalStrength { /** * SS reference signal received power, multipled by -1. * * Reference: 3GPP TS 38.215. * * Range [44, 140], INT_MAX means invalid/unreported. */ int32_t ssRsrp; /** * SS reference signal received quality, multipled by -1. * * Reference: 3GPP TS 38.215. * * Range [3, 20], INT_MAX means invalid/unreported. */ int32_t ssRsrq; /** * SS signal-to-noise and interference ratio. * * Reference: 3GPP TS 38.215 section 5.1.*, 3GPP TS 38.133 section 10.1.16.1. * * Range [-23, 40], INT_MAX means invalid/unreported. */ int32_t ssSinr; /** * CSI reference signal received power, multipled by -1. * * Reference: 3GPP TS 38.215. * * Range [44, 140], INT_MAX means invalid/unreported. */ int32_t csiRsrp; /** * CSI reference signal received quality, multipled by -1. * * Reference: 3GPP TS 38.215. * * Range [3, 20], INT_MAX means invalid/unreported. */ int32_t csiRsrq; /** * CSI signal-to-noise and interference ratio. * * Reference: 3GPP TS 138.215 section 5.1.*, 3GPP TS 38.133 section 10.1.16.1. * * Range [-23, 40], INT_MAX means invalid/unreported. */ int32_t csiSinr; }; /** Overwritten from @1.2::SignalStrength in order to add signal strength for NR. */ struct SignalStrength { /** * If GSM measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ GsmSignalStrength gsm; /** * If CDMA measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ CdmaSignalStrength cdma; /** * If EvDO measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ EvdoSignalStrength evdo; /** * If LTE measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ LteSignalStrength lte; /** * If TD-SCDMA measurements are provided, this structure must contain valid measurements; * otherwise all fields should be set to INT_MAX to mark them as invalid. */ TdscdmaSignalStrength tdscdma; /** * If WCDMA measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ WcdmaSignalStrength wcdma; /** * If NR 5G measurements are provided, this structure must contain valid measurements; otherwise * all fields should be set to INT_MAX to mark them as invalid. */ NrSignalStrength nr; };