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
|
||||
* 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 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.
|
||||
|
@ -122,7 +128,8 @@ interface IRadio extends @1.5::IRadio {
|
|||
* 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
|
||||
* 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
|
||||
* 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
|
||||
|
|
|
@ -274,7 +274,8 @@ enum HandoverFailureMode : int32_t {
|
|||
/**
|
||||
* 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.
|
||||
* Also added defaultQos, qosSessions, and handoverFailureMode in this version.
|
||||
* Also added defaultQos, qosSessions, handoverFailureMode, pduSessionId, sliceInfo,
|
||||
* and traffic descriptors in this version.
|
||||
*/
|
||||
struct SetupDataCallResult {
|
||||
/** Data call fail cause. DataCallFailCause.NONE if no error. */
|
||||
|
@ -914,7 +915,7 @@ enum DataCallFailCause : @1.4::DataCallFailCause {
|
|||
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,
|
||||
};
|
||||
|
@ -923,17 +924,17 @@ enum DataCallFailCause : @1.4::DataCallFailCause {
|
|||
* This safe_union represents an optional DNN. DNN stands for Data Network Name
|
||||
* and represents an APN as defined in 3GPP TS 23.003.
|
||||
*/
|
||||
safe_union OptionalDNN {
|
||||
safe_union OptionalDnn {
|
||||
Monostate noinit;
|
||||
string value;
|
||||
};
|
||||
|
||||
/**
|
||||
* This safe_union represents an optional OSAppId.
|
||||
* This safe_union represents an optional OsAppId.
|
||||
*/
|
||||
safe_union OptionalOSAppId {
|
||||
safe_union OptionalOsAppId {
|
||||
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
|
||||
* 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
|
||||
* 18 and maximum length is 272 (16 bytes for OSId + 1 byte for OSAppId length
|
||||
* + up to 255 bytes for OSAppId).
|
||||
* 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
|
||||
* + up to 255 bytes for OsAppId).
|
||||
*/
|
||||
vec<uint8_t> osAppId;
|
||||
};
|
||||
|
|
|
@ -130,7 +130,7 @@ TEST_P(RadioHidlTest_v1_6, setupDataCall_1_6_osAppId) {
|
|||
memset(&optionalTrafficDescriptor, 0, sizeof(optionalTrafficDescriptor));
|
||||
|
||||
::android::hardware::radio::V1_6::TrafficDescriptor trafficDescriptor;
|
||||
::android::hardware::radio::V1_6::OSAppId osAppId;
|
||||
::android::hardware::radio::V1_6::OsAppId osAppId;
|
||||
osAppId.osAppId = 1;
|
||||
trafficDescriptor.osAppId.value(osAppId);
|
||||
optionalTrafficDescriptor.value(trafficDescriptor);
|
||||
|
|
|
@ -1059,6 +1059,7 @@ Return<void> RadioResponse_v1_6::setupDataCallResponse_1_6(
|
|||
parent_v1_6.notify(info.serial);
|
||||
return Void();
|
||||
}
|
||||
|
||||
Return<void> RadioResponse_v1_6::setNrDualConnectivityStateResponse(
|
||||
const ::android::hardware::radio::V1_6::RadioResponseInfo& info) {
|
||||
rspInfo = info;
|
||||
|
|
Loading…
Reference in a new issue