Support isEnabled feature in reporting criteria for SignalStrenghth
am: 511264a552
Change-Id: Id33f7a04b9a290d186f7bd0f395eb0f0d8bfb8b4
This commit is contained in:
commit
1059063879
4 changed files with 51 additions and 6 deletions
|
@ -604,8 +604,8 @@ a64467bae843569f0d465c5be7f0c7a5b987985b55a3ef4794dd5afc68538650 android.hardwar
|
|||
619fc9839ec6e369cfa9b28e3e9412e6885720ff8f9b5750c1b6ffb905120391 android.hardware.wifi.supplicant@1.3::ISupplicantStaIfaceCallback
|
||||
c9273429fcf98d797d3bb07fdba6f1be95bf960f9255cde169fd1ca4db85f856 android.hardware.wifi.supplicant@1.3::ISupplicantStaNetwork
|
||||
9b0a3ab6f4f74b971ed094426d8a443e29b512ff03e1ab50c07156396cdb2483 android.hardware.wifi.supplicant@1.3::types
|
||||
35cd6586225912718c599421606d69260707e43732d874f2064e28de45c87fac android.hardware.radio@1.5::types
|
||||
3f1e2410d9bed4e7d41c6a589fe3a7943bc904b0066e40e0199a7c58427ac4e9 android.hardware.radio@1.5::IRadio
|
||||
eaf870a7439838c66127a74e1896c4a2346979c116eb1931785ebb4d353230ae android.hardware.radio@1.5::types
|
||||
584001c25a16e3a29d496cff28dee690833cd2bda5376febe01cecd476ce876f android.hardware.radio@1.5::IRadio
|
||||
3afac66f21a33bc9c4b80481c7d5540038348651d9a7d8af64ea13610af138da android.hardware.radio@1.5::IRadioIndication
|
||||
caf00e0d942b77b17d7061b38de11e5b19e1da90d4818434cb4916ba89e30686 android.hardware.radio@1.5::IRadioResponse
|
||||
55f0a15642869ec98a55ea0a5ac049d3e1a6245ff7750deb6bcb7182057eee83 android.hardware.radio.config@1.3::types
|
||||
|
|
|
@ -42,16 +42,20 @@ interface IRadio extends @1.4::IRadio {
|
|||
* -EUTRAN - RSRP/RSRQ/RSSNR
|
||||
* -NGRAN - SSRSRP/SSRSRQ/SSSINR
|
||||
*
|
||||
* Note: Reporting criteria must be individually set for each RAN. For any unset reporting
|
||||
* criteria, the value is implementation-defined.
|
||||
* Note: Reporting criteria must be individually set for each RAN. For each RAN, if none of
|
||||
* reporting criteria of any measurement is set enabled
|
||||
* (see @1.5::SignalThresholdInfo.isEnabled), the reporting criteria for this RAN is
|
||||
* implementation-defined. For each RAN, if any of reporting criteria of any measure is set
|
||||
* enabled, the reporting criteria of the other measures in this RAN are set disabled
|
||||
* (see @1.5::SignalThresholdInfo.isEnabled) until they are set enabled.
|
||||
*
|
||||
* Response callback is
|
||||
* IRadioResponse.setSignalStrengthReportingCriteriaResponse_1_5()
|
||||
*
|
||||
* @param serial Serial number of request.
|
||||
* @param signalThresholdInfo Signal threshold info including the threshold values,
|
||||
* hysteresisDb, and hysteresisMs. See @1.5::SignalThresholdInfo
|
||||
* for details.
|
||||
* hysteresisDb, hysteresisMs and isEnabled.
|
||||
* See @1.5::SignalThresholdInfo for details.
|
||||
* @param accessNetwork The type of network for which to apply these thresholds.
|
||||
*/
|
||||
oneway setSignalStrengthReportingCriteria_1_5(int32_t serial,
|
||||
|
|
|
@ -113,6 +113,15 @@ struct SignalThresholdInfo {
|
|||
* A vector size of 0 disables the use of thresholds for reporting.
|
||||
*/
|
||||
vec<int32_t> thresholds;
|
||||
|
||||
/**
|
||||
* Indicates whether the reporting criteria of the corresponding measurement is enabled
|
||||
* (isEnabled==true) or disabled (isEnabled==false).
|
||||
*
|
||||
* If enabled, modem must trigger the report based on the criteria.
|
||||
* If disabled, modem must not trigger the report based on the criteria.
|
||||
*/
|
||||
bool isEnabled;
|
||||
};
|
||||
|
||||
enum AccessNetwork : @1.4::AccessNetwork {
|
||||
|
|
|
@ -29,6 +29,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_invalidHystere
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 10; // hysteresisDb too large given threshold list deltas
|
||||
signalThresholdInfo.thresholds = {-109, -103, -97, -89};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::GERAN);
|
||||
|
@ -52,6 +53,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_EmptyThreshold
|
|||
signalThresholdInfo.signalMeasurement = SignalMeasurementType::RSSI;
|
||||
signalThresholdInfo.hysteresisMs = 0;
|
||||
signalThresholdInfo.hysteresisDb = 0;
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::GERAN);
|
||||
|
@ -76,6 +78,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_Geran) {
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 2;
|
||||
signalThresholdInfo.thresholds = {-109, -103, -97, -89};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::GERAN);
|
||||
|
@ -100,6 +103,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_Utran) {
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 2;
|
||||
signalThresholdInfo.thresholds = {-110, -97, -73, -49, -25};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::UTRAN);
|
||||
|
@ -124,6 +128,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_Eutran_RSRP) {
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 2;
|
||||
signalThresholdInfo.thresholds = {-128, -108, -88, -68};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::EUTRAN);
|
||||
|
@ -148,6 +153,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_Eutran_RSRQ) {
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 2;
|
||||
signalThresholdInfo.thresholds = {-27, -20, -13, -6};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::EUTRAN);
|
||||
|
@ -172,6 +178,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_Eutran_RSSNR)
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 2;
|
||||
signalThresholdInfo.thresholds = {-10, 0, 10, 20};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::EUTRAN);
|
||||
|
@ -192,6 +199,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_Cdma2000) {
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 2;
|
||||
signalThresholdInfo.thresholds = {-105, -90, -75, -65};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::CDMA2000);
|
||||
|
@ -216,6 +224,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_NGRAN_SSRSRP)
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 0;
|
||||
signalThresholdInfo.thresholds = {-105, -90, -75, -65};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::NGRAN);
|
||||
|
@ -240,6 +249,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_NGRAN_SSRSRQ)
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 0;
|
||||
signalThresholdInfo.thresholds = {-15, -10, -5, -4};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::NGRAN);
|
||||
|
@ -253,6 +263,27 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_NGRAN_SSRSRQ)
|
|||
ASSERT_TRUE(CheckAnyOfErrors(radioRsp_v1_5->rspInfo.error, {RadioError::NONE}));
|
||||
}
|
||||
|
||||
/*
|
||||
* Test IRadio.setSignalStrengthReportingCriteria_1_5() for EUTRAN
|
||||
*/
|
||||
TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_Disable_RSSNR) {
|
||||
serial = GetRandomSerialNumber();
|
||||
|
||||
::android::hardware::radio::V1_5::SignalThresholdInfo signalThresholdInfo;
|
||||
signalThresholdInfo.signalMeasurement = SignalMeasurementType::RSSNR;
|
||||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 2;
|
||||
signalThresholdInfo.thresholds = {-10, 0, 10, 20};
|
||||
signalThresholdInfo.isEnabled = false;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::EUTRAN);
|
||||
ASSERT_OK(res);
|
||||
EXPECT_EQ(std::cv_status::no_timeout, wait());
|
||||
EXPECT_EQ(RadioResponseType::SOLICITED, radioRsp_v1_5->rspInfo.type);
|
||||
EXPECT_EQ(serial, radioRsp_v1_5->rspInfo.serial);
|
||||
}
|
||||
|
||||
/*
|
||||
* Test IRadio.setSignalStrengthReportingCriteria_1_5() for NGRAN_SSSINR
|
||||
*/
|
||||
|
@ -264,6 +295,7 @@ TEST_F(RadioHidlTest_v1_5, setSignalStrengthReportingCriteria_1_5_NGRAN_SSSINR)
|
|||
signalThresholdInfo.hysteresisMs = 5000;
|
||||
signalThresholdInfo.hysteresisDb = 0;
|
||||
signalThresholdInfo.thresholds = {-10, 3, 16, 18};
|
||||
signalThresholdInfo.isEnabled = true;
|
||||
|
||||
Return<void> res = radio_v1_5->setSignalStrengthReportingCriteria_1_5(
|
||||
serial, signalThresholdInfo, ::android::hardware::radio::V1_5::AccessNetwork::NGRAN);
|
||||
|
|
Loading…
Reference in a new issue