Merge "add slicingConfigChanged api" am: 4e9056b70f am: 3011217292

Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1945390

Change-Id: I7edbb2dd5b39f82c1f2b410750b35c9db55ca812
This commit is contained in:
Sooraj Sasindran 2022-01-14 03:54:32 +00:00 committed by Automerger Merge Worker
commit fe44256cd3
6 changed files with 31 additions and 0 deletions

View file

@ -38,4 +38,5 @@ interface IRadioDataIndication {
oneway void keepaliveStatus(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.data.KeepaliveStatus status);
oneway void pcoData(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.data.PcoDataInfo pco);
oneway void unthrottleApn(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.data.DataProfileInfo dataProfileInfo);
oneway void slicingConfigChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.data.SlicingConfig slicingConfig);
}

View file

@ -21,6 +21,7 @@ import android.hardware.radio.data.DataProfileInfo;
import android.hardware.radio.data.KeepaliveStatus;
import android.hardware.radio.data.PcoDataInfo;
import android.hardware.radio.data.SetupDataCallResult;
import android.hardware.radio.data.SlicingConfig;
/**
* Interface declaring unsolicited radio indications for data APIs.
@ -72,4 +73,17 @@ oneway interface IRadioDataIndication {
* @param dataProfileInfo Data profile info.
*/
void unthrottleApn(in RadioIndicationType type, in DataProfileInfo dataProfileInfo);
/**
* Indicates the current slicing configuration including URSP rules and NSSAIs
* (configured, allowed and rejected). URSP stands for UE route selection policy and is defined
* in 3GPP TS 24.526 Section 4.2. An NSSAI is a collection of network slices. Each network slice
* is identified by an S-NSSAI and is represented by the struct SliceInfo. NSSAI and S-NSSAI
* are defined in 3GPP TS 24.501.
*
* @param type Type of radio indication
* @param slicingConfig Current slicing configuration
*
*/
void slicingConfigChanged(in RadioIndicationType type, in SlicingConfig slicingConfig);
}

View file

@ -85,4 +85,11 @@ Return<void> RadioIndication::unthrottleApn(V1_0::RadioIndicationType type,
return {};
}
Return<void> RadioIndication::slicingConfigChanged(V1_0::RadioIndicationType type,
const V1_6::SlicingConfig& slicingConfig) {
LOG_CALL << type;
dataCb()->slicingConfigChanged(toAidl(type), toAidl(slicingConfig));
return {};
}
} // namespace android::hardware::radio::compat

View file

@ -186,6 +186,8 @@ class RadioIndication : public V1_6::IRadioIndication {
V1_0::RadioIndicationType type,
const hidl_vec<V1_6::SetupDataCallResult>& dcList) override;
Return<void> unthrottleApn(V1_0::RadioIndicationType type, const hidl_string& apn) override;
Return<void> slicingConfigChanged(V1_0::RadioIndicationType type,
const V1_6::SlicingConfig& slicingConfig);
Return<void> currentLinkCapacityEstimate_1_6(V1_0::RadioIndicationType type,
const V1_6::LinkCapacityEstimate& lce) override;
Return<void> currentSignalStrength_1_6(V1_0::RadioIndicationType type,

View file

@ -37,3 +37,8 @@ ndk::ScopedAStatus RadioDataIndication::unthrottleApn(RadioIndicationType /*type
const DataProfileInfo& /*dataProfileInfo*/) {
return ndk::ScopedAStatus::ok();
}
ndk::ScopedAStatus RadioDataIndication::slicingConfigChanged(
RadioIndicationType /*type*/, const SlicingConfig& /*slicingConfig*/) {
return ndk::ScopedAStatus::ok();
}

View file

@ -95,6 +95,8 @@ class RadioDataIndication : public BnRadioDataIndication {
virtual ndk::ScopedAStatus unthrottleApn(RadioIndicationType type,
const DataProfileInfo& dataProfile) override;
virtual ndk::ScopedAStatus slicingConfigChanged(RadioIndicationType type,
const SlicingConfig& slicingConfig) override;
};
// The main test class for Radio AIDL Data.