Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c2ccef2e authored by Sarah Chin's avatar Sarah Chin Committed by Gerrit Code Review
Browse files

Merge "API updates for TrafficDescriptr fields"

parents 620ad1ca 912e6062
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -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
+15 −14
Original line number Diff line number Diff line
@@ -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;
};
+1 −1
Original line number Diff line number Diff line
@@ -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);
+1 −0
Original line number Diff line number Diff line
@@ -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;