Support multiple RANs in one request for setSignalStrengthReportingCriteria
- Move AccessNetwork (RAN) into SignalThresholdInfo to be better organized - Support specifying multiple RANs and measurement types in one request Bug: 200055871 Test: m -j Change-Id: Ic6762e8ca488a119b1103319e7443c4342530f8c
This commit is contained in:
parent
2dd3a3548a
commit
9073f55722
4 changed files with 27 additions and 25 deletions
|
@ -64,7 +64,7 @@ interface IRadioNetwork {
|
|||
oneway void setNetworkSelectionModeManual(in int serial, in String operatorNumeric, in android.hardware.radio.AccessNetwork ran);
|
||||
oneway void setNrDualConnectivityState(in int serial, in android.hardware.radio.network.NrDualConnectivityState nrDualConnectivityState);
|
||||
oneway void setResponseFunctions(in android.hardware.radio.network.IRadioNetworkResponse radioNetworkResponse, in android.hardware.radio.network.IRadioNetworkIndication radioNetworkIndication);
|
||||
oneway void setSignalStrengthReportingCriteria(in int serial, in android.hardware.radio.network.SignalThresholdInfo signalThresholdInfo, in android.hardware.radio.AccessNetwork accessNetwork);
|
||||
oneway void setSignalStrengthReportingCriteria(in int serial, in android.hardware.radio.network.SignalThresholdInfo[] signalThresholdInfos);
|
||||
oneway void setSuppServiceNotifications(in int serial, in boolean enable);
|
||||
oneway void setSystemSelectionChannels(in int serial, in boolean specifyChannels, in android.hardware.radio.network.RadioAccessSpecifier[] specifiers);
|
||||
oneway void startNetworkScan(in int serial, in android.hardware.radio.network.NetworkScanRequest request);
|
||||
|
|
|
@ -39,6 +39,7 @@ parcelable SignalThresholdInfo {
|
|||
int hysteresisDb;
|
||||
int[] thresholds;
|
||||
boolean isEnabled;
|
||||
android.hardware.radio.AccessNetwork ran;
|
||||
const int SIGNAL_MEASUREMENT_TYPE_RSSI = 1;
|
||||
const int SIGNAL_MEASUREMENT_TYPE_RSCP = 2;
|
||||
const int SIGNAL_MEASUREMENT_TYPE_RSRP = 3;
|
||||
|
|
|
@ -364,29 +364,22 @@ oneway interface IRadioNetwork {
|
|||
in IRadioNetworkIndication radioNetworkIndication);
|
||||
|
||||
/**
|
||||
* Sets the signal strength reporting criteria. The resulting reporting rules are the AND of all
|
||||
* the supplied criteria. For each RAN the hysteresisDb and thresholds apply to only the
|
||||
* following measured quantities:
|
||||
* -GERAN - RSSI
|
||||
* -CDMA2000 - RSSI
|
||||
* -UTRAN - RSCP
|
||||
* -EUTRAN - RSRP/RSRQ/RSSNR
|
||||
* -NGRAN - SSRSRP/SSRSRQ/SSSINR
|
||||
* Note that reporting criteria must be individually set for each RAN. For each RAN, if none of
|
||||
* reporting criteria of any measurement is set enabled (see SignalThresholdInfo.isEnabled),
|
||||
* the reporting criteria for this RAN is implementation-defined. For each RAN, if any reporting
|
||||
* criteria of any measure is set enabled, the reporting criteria of the other measures in this
|
||||
* RAN are set disabled (see SignalThresholdInfo.isEnabled) until they are set enabled.
|
||||
* Sets or clears the signal strength reporting criteria for multiple RANs in one request.
|
||||
*
|
||||
* The reporting criteria are set individually for each combination of RAN and measurement type.
|
||||
* For each RAN type, if no reporting criteria are set, then the reporting of SignalStrength for
|
||||
* that RAN is implementation-defined. If any criteria are supplied for a RAN type, then
|
||||
* SignalStrength is only reported as specified by those criteria. For any RAN types not defined
|
||||
* by this HAL, reporting is implementation-defined.
|
||||
*
|
||||
* @param serial Serial number of request.
|
||||
* @param signalThresholdInfo Signal threshold info including the threshold values,
|
||||
* hysteresisDb, hysteresisMs and isEnabled. See SignalThresholdInfo for details.
|
||||
* @param accessNetwork The type of network for which to apply these thresholds.
|
||||
* @param signalThresholdInfos Collection of SignalThresholdInfo specifying the reporting
|
||||
* criteria. See SignalThresholdInfo for details.
|
||||
*
|
||||
* Response function is IRadioNetworkResponse.setSignalStrengthReportingCriteriaResponse()
|
||||
*/
|
||||
void setSignalStrengthReportingCriteria(in int serial,
|
||||
in SignalThresholdInfo signalThresholdInfo, in AccessNetwork accessNetwork);
|
||||
void setSignalStrengthReportingCriteria(
|
||||
in int serial, in SignalThresholdInfo[] signalThresholdInfos);
|
||||
|
||||
/**
|
||||
* Enables/disables supplementary service related notifications from the network.
|
||||
|
|
|
@ -16,6 +16,8 @@
|
|||
|
||||
package android.hardware.radio.network;
|
||||
|
||||
import android.hardware.radio.AccessNetwork;
|
||||
|
||||
/**
|
||||
* Contains the threshold values of each signal measurement type.
|
||||
*/
|
||||
|
@ -86,18 +88,20 @@ parcelable SignalThresholdInfo {
|
|||
*/
|
||||
int signalMeasurement;
|
||||
/**
|
||||
* A hysteresis time in milliseconds to prevent flapping. A value of 0 disables hysteresis.
|
||||
* A hysteresis time in milliseconds for current signal measurement type to prevent flapping.
|
||||
* A value of 0 disables hysteresis.
|
||||
*/
|
||||
int hysteresisMs;
|
||||
/**
|
||||
* An interval in dB defining the required magnitude change between reports. This must be
|
||||
* smaller than the smallest threshold delta. An interval value of 0 disables hysteresis.
|
||||
* An interval in dB for current signal measurement type defining the required magnitude change
|
||||
* between reports. This must be smaller than the smallest threshold delta. An interval value of
|
||||
* 0 disables hysteresis.
|
||||
*/
|
||||
int hysteresisDb;
|
||||
/**
|
||||
* List of threshold values. Range and unit must reference specific SignalMeasurementType.
|
||||
* The threshold values for which to apply criteria. A vector size of 0 disables the use of
|
||||
* thresholds for reporting.
|
||||
* List of threshold values for current signal measurement type. Range and unit must reference
|
||||
* specific SignalMeasurementType. The threshold values for which to apply criteria. A vector
|
||||
* size of 0 disables the use of thresholds for reporting.
|
||||
*/
|
||||
int[] thresholds;
|
||||
/**
|
||||
|
@ -106,4 +110,8 @@ parcelable SignalThresholdInfo {
|
|||
* If disabled, modem must not trigger the report based on the criteria.
|
||||
*/
|
||||
boolean isEnabled;
|
||||
/**
|
||||
* The Radio Access Network for current threshold info.
|
||||
*/
|
||||
AccessNetwork ran;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue