Loading radio/1.6/IRadio.hal +4 −1 Original line number Diff line number Diff line Loading @@ -117,6 +117,9 @@ interface IRadio extends @1.5::IRadio { * @param pduSessionId The pdu session id to be used for this data call. A value of 0 means * no pdu session id was attached to this call. * 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. * * Response function is IRadioResponse.setupDataCallResponse_1_6() * Loading @@ -125,7 +128,7 @@ interface IRadio extends @1.5::IRadio { oneway setupDataCall_1_6(int32_t serial, AccessNetwork accessNetwork, DataProfileInfo dataProfileInfo, bool roamingAllowed, DataRequestReason reason, vec<LinkAddress> addresses, vec<string> dnses, int32_t pduSessionId); int32_t pduSessionId, OptionalSliceInfo sliceInfo); /** * Send an SMS message Loading radio/1.6/types.hal +83 −0 Original line number Diff line number Diff line Loading @@ -356,6 +356,12 @@ struct SetupDataCallResult { * Reference: 3GPP TS 24.007 section 11.2.3.1b */ int32_t pduSessionId; /** * Slice used for this data call. It is valid only when this data call is on * AccessNetwork:NGRAN. */ OptionalSliceInfo sliceInfo; }; /** Loading Loading @@ -804,3 +810,80 @@ enum NgranBands : @1.5::NgranBands { BAND_53 = 53, BAND_96 = 96, }; /** * This safe_union represents an optional slice info */ safe_union OptionalSliceInfo { Monostate noinit; SliceInfo value; }; /** * This struct represents a S-NSSAI as defined in 3GPP TS 24.501. */ struct SliceInfo { /** * The type of service provided by the slice. * * see: 3GPP TS 24.501 Section 9.11.2.8. */ SliceServiceType sst; /** * Slice differentiator is the identifier of a slice that has * SliceServiceType as SST. A value of -1 indicates that there is * no corresponding SliceInfo of the HPLMN. * * see: 3GPP TS 24.501 Section 9.11.2.8. */ int32_t sliceDifferentiator; /** * This SST corresponds to a SliceInfo (S-NSSAI) of the HPLMN; the SST is * mapped to this value. * * see: 3GPP TS 24.501 Section 9.11.2.8. */ SliceServiceType mappedHplmnSst; /** * Present only if both sliceDifferentiator and mappedHplmnSst are also * present. This SD corresponds to a SliceInfo (S-NSSAI) of the HPLMN; * sliceDifferentiator is mapped to this value. A value of -1 indicates that * there is no corresponding SliceInfo of the HPLMN. * * see: 3GPP TS 24.501 Section 9.11.2.8. */ int32_t mappedHplmnSD; }; /** * Slice/Service Type as defined in 3GPP TS 23.501. */ enum SliceServiceType : uint8_t { /* Not specified */ NONE = 0, /* Slice suitable for the handling of 5G enhanced Mobile Broadband */ EMBB = 1, /** * Slice suitable for the handling of ultra-reliable low latency * communications */ URLLC = 2, /* Slice suitable for the handling of massive IoT */ MIOT = 3, }; /** * Expose more setup data call failures. */ enum DataCallFailCause : @1.4::DataCallFailCause { /** * Data call fail due to the slice not being allowed for the data call. */ SLICE_REJECTED = 0x8CC, }; radio/1.6/vts/functional/radio_hidl_hal_api.cpp +6 −2 Original line number Diff line number Diff line Loading @@ -56,8 +56,12 @@ TEST_P(RadioHidlTest_v1_6, setupDataCall_1_6) { ::android::hardware::radio::V1_2::DataRequestReason reason = ::android::hardware::radio::V1_2::DataRequestReason::NORMAL; Return<void> res = radio_v1_6->setupDataCall_1_6(serial, accessNetwork, dataProfileInfo, roamingAllowed, reason, addresses, dnses, -1); ::android::hardware::radio::V1_6::OptionalSliceInfo optionalSliceInfo; memset(&optionalSliceInfo, 0, sizeof(optionalSliceInfo)); Return<void> res = radio_v1_6->setupDataCall_1_6(serial, accessNetwork, dataProfileInfo, roamingAllowed, reason, addresses, dnses, -1, optionalSliceInfo); ASSERT_OK(res); EXPECT_EQ(std::cv_status::no_timeout, wait()); Loading Loading
radio/1.6/IRadio.hal +4 −1 Original line number Diff line number Diff line Loading @@ -117,6 +117,9 @@ interface IRadio extends @1.5::IRadio { * @param pduSessionId The pdu session id to be used for this data call. A value of 0 means * no pdu session id was attached to this call. * 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. * * Response function is IRadioResponse.setupDataCallResponse_1_6() * Loading @@ -125,7 +128,7 @@ interface IRadio extends @1.5::IRadio { oneway setupDataCall_1_6(int32_t serial, AccessNetwork accessNetwork, DataProfileInfo dataProfileInfo, bool roamingAllowed, DataRequestReason reason, vec<LinkAddress> addresses, vec<string> dnses, int32_t pduSessionId); int32_t pduSessionId, OptionalSliceInfo sliceInfo); /** * Send an SMS message Loading
radio/1.6/types.hal +83 −0 Original line number Diff line number Diff line Loading @@ -356,6 +356,12 @@ struct SetupDataCallResult { * Reference: 3GPP TS 24.007 section 11.2.3.1b */ int32_t pduSessionId; /** * Slice used for this data call. It is valid only when this data call is on * AccessNetwork:NGRAN. */ OptionalSliceInfo sliceInfo; }; /** Loading Loading @@ -804,3 +810,80 @@ enum NgranBands : @1.5::NgranBands { BAND_53 = 53, BAND_96 = 96, }; /** * This safe_union represents an optional slice info */ safe_union OptionalSliceInfo { Monostate noinit; SliceInfo value; }; /** * This struct represents a S-NSSAI as defined in 3GPP TS 24.501. */ struct SliceInfo { /** * The type of service provided by the slice. * * see: 3GPP TS 24.501 Section 9.11.2.8. */ SliceServiceType sst; /** * Slice differentiator is the identifier of a slice that has * SliceServiceType as SST. A value of -1 indicates that there is * no corresponding SliceInfo of the HPLMN. * * see: 3GPP TS 24.501 Section 9.11.2.8. */ int32_t sliceDifferentiator; /** * This SST corresponds to a SliceInfo (S-NSSAI) of the HPLMN; the SST is * mapped to this value. * * see: 3GPP TS 24.501 Section 9.11.2.8. */ SliceServiceType mappedHplmnSst; /** * Present only if both sliceDifferentiator and mappedHplmnSst are also * present. This SD corresponds to a SliceInfo (S-NSSAI) of the HPLMN; * sliceDifferentiator is mapped to this value. A value of -1 indicates that * there is no corresponding SliceInfo of the HPLMN. * * see: 3GPP TS 24.501 Section 9.11.2.8. */ int32_t mappedHplmnSD; }; /** * Slice/Service Type as defined in 3GPP TS 23.501. */ enum SliceServiceType : uint8_t { /* Not specified */ NONE = 0, /* Slice suitable for the handling of 5G enhanced Mobile Broadband */ EMBB = 1, /** * Slice suitable for the handling of ultra-reliable low latency * communications */ URLLC = 2, /* Slice suitable for the handling of massive IoT */ MIOT = 3, }; /** * Expose more setup data call failures. */ enum DataCallFailCause : @1.4::DataCallFailCause { /** * Data call fail due to the slice not being allowed for the data call. */ SLICE_REJECTED = 0x8CC, };
radio/1.6/vts/functional/radio_hidl_hal_api.cpp +6 −2 Original line number Diff line number Diff line Loading @@ -56,8 +56,12 @@ TEST_P(RadioHidlTest_v1_6, setupDataCall_1_6) { ::android::hardware::radio::V1_2::DataRequestReason reason = ::android::hardware::radio::V1_2::DataRequestReason::NORMAL; Return<void> res = radio_v1_6->setupDataCall_1_6(serial, accessNetwork, dataProfileInfo, roamingAllowed, reason, addresses, dnses, -1); ::android::hardware::radio::V1_6::OptionalSliceInfo optionalSliceInfo; memset(&optionalSliceInfo, 0, sizeof(optionalSliceInfo)); Return<void> res = radio_v1_6->setupDataCall_1_6(serial, accessNetwork, dataProfileInfo, roamingAllowed, reason, addresses, dnses, -1, optionalSliceInfo); ASSERT_OK(res); EXPECT_EQ(std::cv_status::no_timeout, wait()); Loading