Merge "API updates for TrafficDescriptr fields" am: c2ccef2e2a
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1593911 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: I3870099c000a3efc0ae85a5db081dd6f8a4f6651
This commit is contained in:
commit
a6ce4c80e8
4 changed files with 25 additions and 16 deletions
|
@ -103,6 +103,12 @@ interface IRadio extends @1.5::IRadio {
|
||||||
* - Support simultaneous data call contexts up to DataRegStateResult.maxDataCalls specified
|
* - Support simultaneous data call contexts up to DataRegStateResult.maxDataCalls specified
|
||||||
* in the response of getDataRegistrationState.
|
* in the response of getDataRegistrationState.
|
||||||
*
|
*
|
||||||
|
* The differences relative to the 1.5 version of the API are:
|
||||||
|
* - The addition of new parameters pduSessionId, sliceInfo, trafficDescriptor, and
|
||||||
|
* matchAllRuleAllowed.
|
||||||
|
* - If an existing data call should be used for the request, that must be indicated in the
|
||||||
|
* response by setting SetupDataCallResult::cid to the context id of that call.
|
||||||
|
*
|
||||||
* @param serial Serial number of request.
|
* @param serial Serial number of request.
|
||||||
* @param accessNetwork The access network to setup the data call. If the data connection cannot
|
* @param accessNetwork The access network to setup the data call. If the data connection cannot
|
||||||
* be established on the specified access network then it should be responded with an error.
|
* be established on the specified access network then it should be responded with an error.
|
||||||
|
@ -122,7 +128,8 @@ interface IRadio extends @1.5::IRadio {
|
||||||
* Reference: 3GPP TS 24.007 section 11.2.3.1b
|
* Reference: 3GPP TS 24.007 section 11.2.3.1b
|
||||||
* @param sliceInfo SliceInfo to be used for the data connection when a handover occurs from
|
* @param sliceInfo SliceInfo to be used for the data connection when a handover occurs from
|
||||||
* EPDG to 5G. It is valid only when accessNetwork is AccessNetwork:NGRAN. If the slice
|
* EPDG to 5G. It is valid only when accessNetwork is AccessNetwork:NGRAN. If the slice
|
||||||
* passed from EPDG is rejected, then the data failure cause must be DataCallFailCause:SLICE_REJECTED.
|
* passed from EPDG is rejected, then the data failure cause must be
|
||||||
|
* DataCallFailCause:SLICE_REJECTED.
|
||||||
* @param trafficDescriptor TrafficDescriptor for which data connection needs to be
|
* @param trafficDescriptor TrafficDescriptor for which data connection needs to be
|
||||||
* established. It is used for URSP traffic matching as described in TS 24.526
|
* established. It is used for URSP traffic matching as described in TS 24.526
|
||||||
* Section 4.2.2. It includes an optional DNN which, if present, must be used for traffic
|
* Section 4.2.2. It includes an optional DNN which, if present, must be used for traffic
|
||||||
|
|
|
@ -274,7 +274,8 @@ enum HandoverFailureMode : int32_t {
|
||||||
/**
|
/**
|
||||||
* Overwritten from @1.5::SetupDataCallResult in order to change the suggestedRetryTime
|
* Overwritten from @1.5::SetupDataCallResult in order to change the suggestedRetryTime
|
||||||
* to 64-bit value. In the future, this must be extended instead of overwritten.
|
* to 64-bit value. In the future, this must be extended instead of overwritten.
|
||||||
* Also added defaultQos, qosSessions, and handoverFailureMode in this version.
|
* Also added defaultQos, qosSessions, handoverFailureMode, pduSessionId, sliceInfo,
|
||||||
|
* and traffic descriptors in this version.
|
||||||
*/
|
*/
|
||||||
struct SetupDataCallResult {
|
struct SetupDataCallResult {
|
||||||
/** Data call fail cause. DataCallFailCause.NONE if no error. */
|
/** Data call fail cause. DataCallFailCause.NONE if no error. */
|
||||||
|
@ -914,7 +915,7 @@ enum DataCallFailCause : @1.4::DataCallFailCause {
|
||||||
MATCH_ALL_RULE_NOT_ALLOWED = 0x8CD,
|
MATCH_ALL_RULE_NOT_ALLOWED = 0x8CD,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* If connection failed for all matching URSP rules
|
* If connection failed for all matching URSP rules.
|
||||||
*/
|
*/
|
||||||
ALL_MATCHING_RULES_FAILED = 0x8CE,
|
ALL_MATCHING_RULES_FAILED = 0x8CE,
|
||||||
};
|
};
|
||||||
|
@ -923,17 +924,17 @@ enum DataCallFailCause : @1.4::DataCallFailCause {
|
||||||
* This safe_union represents an optional DNN. DNN stands for Data Network Name
|
* This safe_union represents an optional DNN. DNN stands for Data Network Name
|
||||||
* and represents an APN as defined in 3GPP TS 23.003.
|
* and represents an APN as defined in 3GPP TS 23.003.
|
||||||
*/
|
*/
|
||||||
safe_union OptionalDNN {
|
safe_union OptionalDnn {
|
||||||
Monostate noinit;
|
Monostate noinit;
|
||||||
string value;
|
string value;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This safe_union represents an optional OSAppId.
|
* This safe_union represents an optional OsAppId.
|
||||||
*/
|
*/
|
||||||
safe_union OptionalOSAppId {
|
safe_union OptionalOsAppId {
|
||||||
Monostate noinit;
|
Monostate noinit;
|
||||||
OSAppId value;
|
OsAppId value;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -954,21 +955,21 @@ struct TrafficDescriptor {
|
||||||
* DNN stands for Data Network Name and represents an APN as defined in
|
* DNN stands for Data Network Name and represents an APN as defined in
|
||||||
* 3GPP TS 23.003.
|
* 3GPP TS 23.003.
|
||||||
*/
|
*/
|
||||||
OptionalDNN dnn;
|
OptionalDnn dnn;
|
||||||
/**
|
/**
|
||||||
* Indicates the OSId + OSAppId (used as category in Android).
|
* Indicates the OsId + OsAppId (used as category in Android).
|
||||||
*/
|
*/
|
||||||
OptionalOSAppId osAppId;
|
OptionalOsAppId osAppId;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This struct represents the OSId + OSAppId as defined in TS 24.526 Section 5.2
|
* This struct represents the OsId + OsAppId as defined in TS 24.526 Section 5.2
|
||||||
*/
|
*/
|
||||||
struct OSAppId {
|
struct OsAppId {
|
||||||
/**
|
/**
|
||||||
* Byte array representing OSId + OSAppId. The minimum length of the array is
|
* Byte array representing OsId + OsAppId. The minimum length of the array is
|
||||||
* 18 and maximum length is 272 (16 bytes for OSId + 1 byte for OSAppId length
|
* 18 and maximum length is 272 (16 bytes for OsId + 1 byte for OsAppId length
|
||||||
* + up to 255 bytes for OSAppId).
|
* + up to 255 bytes for OsAppId).
|
||||||
*/
|
*/
|
||||||
vec<uint8_t> osAppId;
|
vec<uint8_t> osAppId;
|
||||||
};
|
};
|
||||||
|
|
|
@ -130,7 +130,7 @@ TEST_P(RadioHidlTest_v1_6, setupDataCall_1_6_osAppId) {
|
||||||
memset(&optionalTrafficDescriptor, 0, sizeof(optionalTrafficDescriptor));
|
memset(&optionalTrafficDescriptor, 0, sizeof(optionalTrafficDescriptor));
|
||||||
|
|
||||||
::android::hardware::radio::V1_6::TrafficDescriptor trafficDescriptor;
|
::android::hardware::radio::V1_6::TrafficDescriptor trafficDescriptor;
|
||||||
::android::hardware::radio::V1_6::OSAppId osAppId;
|
::android::hardware::radio::V1_6::OsAppId osAppId;
|
||||||
osAppId.osAppId = 1;
|
osAppId.osAppId = 1;
|
||||||
trafficDescriptor.osAppId.value(osAppId);
|
trafficDescriptor.osAppId.value(osAppId);
|
||||||
optionalTrafficDescriptor.value(trafficDescriptor);
|
optionalTrafficDescriptor.value(trafficDescriptor);
|
||||||
|
|
|
@ -1059,6 +1059,7 @@ Return<void> RadioResponse_v1_6::setupDataCallResponse_1_6(
|
||||||
parent_v1_6.notify(info.serial);
|
parent_v1_6.notify(info.serial);
|
||||||
return Void();
|
return Void();
|
||||||
}
|
}
|
||||||
|
|
||||||
Return<void> RadioResponse_v1_6::setNrDualConnectivityStateResponse(
|
Return<void> RadioResponse_v1_6::setNrDualConnectivityStateResponse(
|
||||||
const ::android::hardware::radio::V1_6::RadioResponseInfo& info) {
|
const ::android::hardware::radio::V1_6::RadioResponseInfo& info) {
|
||||||
rspInfo = info;
|
rspInfo = info;
|
||||||
|
|
Loading…
Reference in a new issue