Create IRadio modules
Test: build
Bug: 198331451
Change-Id: I6721498d5a0f535fa2fdfac7485765c740e82682
diff --git a/compatibility_matrices/compatibility_matrix.current.xml b/compatibility_matrices/compatibility_matrix.current.xml
index 920513b..7fa586e 100644
--- a/compatibility_matrices/compatibility_matrix.current.xml
+++ b/compatibility_matrices/compatibility_matrix.current.xml
@@ -433,10 +433,60 @@
</interface>
</hal>
<hal format="aidl" optional="true">
- <name>android.hardware.radio</name>
+ <name>android.hardware.radio.data</name>
<version>1</version>
<interface>
- <name>IRadio</name>
+ <name>IRadioData</name>
+ <instance>slot1</instance>
+ <instance>slot2</instance>
+ <instance>slot3</instance>
+ </interface>
+ </hal>
+ <hal format="aidl" optional="true">
+ <name>android.hardware.radio.messaging</name>
+ <version>1</version>
+ <interface>
+ <name>IRadioMessaging</name>
+ <instance>slot1</instance>
+ <instance>slot2</instance>
+ <instance>slot3</instance>
+ </interface>
+ </hal>
+ <hal format="aidl" optional="true">
+ <name>android.hardware.radio.modem</name>
+ <version>1</version>
+ <interface>
+ <name>IRadioModem</name>
+ <instance>slot1</instance>
+ <instance>slot2</instance>
+ <instance>slot3</instance>
+ </interface>
+ </hal>
+ <hal format="aidl" optional="true">
+ <name>android.hardware.radio.network</name>
+ <version>1</version>
+ <interface>
+ <name>IRadioNetwork</name>
+ <instance>slot1</instance>
+ <instance>slot2</instance>
+ <instance>slot3</instance>
+ </interface>
+ </hal>
+ <hal format="aidl" optional="true">
+ <name>android.hardware.radio.sim</name>
+ <version>1</version>
+ <interface>
+ <name>IRadioSim</name>
+ <instance>slot1</instance>
+ <instance>slot2</instance>
+ <instance>slot3</instance>
+ </interface>
+ </hal>
+ <hal format="aidl" optional="true">
+ <name>android.hardware.radio.voice</name>
+ <version>1</version>
+ <interface>
+ <name>IRadioVoice</name>
<instance>slot1</instance>
<instance>slot2</instance>
<instance>slot3</instance>
diff --git a/compatibility_matrices/exclude/fcm_exclude.cpp b/compatibility_matrices/exclude/fcm_exclude.cpp
index e67c892..d8c9170 100644
--- a/compatibility_matrices/exclude/fcm_exclude.cpp
+++ b/compatibility_matrices/exclude/fcm_exclude.cpp
@@ -56,6 +56,7 @@
"android.hardware.common.fmq",
"android.hardware.graphics.common",
"android.hardware.keymaster",
+ "android.hardware.radio",
// Fastboot HAL is only used by recovery. Recovery is owned by OEM. Framework
// does not depend on this HAL, hence it is not declared in any manifests or matrices.
diff --git a/radio/aidl/Android.bp b/radio/aidl/Android.bp
index f2449f6..2cf824f 100644
--- a/radio/aidl/Android.bp
+++ b/radio/aidl/Android.bp
@@ -27,34 +27,128 @@
},
}
-cc_library {
- name: "android.hardware.radio-translate-ndk",
+aidl_interface {
+ name: "android.hardware.radio.data",
vendor_available: true,
- shared_libs: [
- "libbinder_ndk",
- "libhidlbase",
- "android.hardware.radio-V1-ndk_platform",
- "android.hardware.radio@1.0",
- "android.hardware.radio@1.1",
- "android.hardware.radio@1.2",
- "android.hardware.radio@1.3",
- "android.hardware.radio@1.4",
- "android.hardware.radio@1.5",
- "android.hardware.radio@1.6",
- ],
+ srcs: ["android/hardware/radio/data/*.aidl"],
+ stability: "vintf",
+ imports: ["android.hardware.radio"],
+ backend: {
+ cpp: {
+ enabled: false,
+ },
+ java: {
+ sdk_version: "module_current",
+ },
+ ndk: {
+ vndk: {
+ enabled: true,
+ },
+ },
+ },
}
-java_library {
- name: "android.hardware.radio-translate-java",
- libs: [
- "android.hardware.radio-V1-java",
- "android.hardware.radio-V1.0-java",
- "android.hardware.radio-V1.1-java",
- "android.hardware.radio-V1.2-java",
- "android.hardware.radio-V1.3-java",
- "android.hardware.radio-V1.4-java",
- "android.hardware.radio-V1.5-java",
- "android.hardware.radio-V1.6-java",
- ],
- sdk_version: "module_current",
+aidl_interface {
+ name: "android.hardware.radio.messaging",
+ vendor_available: true,
+ srcs: ["android/hardware/radio/messaging/*.aidl"],
+ stability: "vintf",
+ imports: ["android.hardware.radio"],
+ backend: {
+ cpp: {
+ enabled: false,
+ },
+ java: {
+ sdk_version: "module_current",
+ },
+ ndk: {
+ vndk: {
+ enabled: true,
+ },
+ },
+ },
+}
+
+aidl_interface {
+ name: "android.hardware.radio.modem",
+ vendor_available: true,
+ srcs: ["android/hardware/radio/modem/*.aidl"],
+ stability: "vintf",
+ imports: ["android.hardware.radio"],
+ backend: {
+ cpp: {
+ enabled: false,
+ },
+ java: {
+ sdk_version: "module_current",
+ },
+ ndk: {
+ vndk: {
+ enabled: true,
+ },
+ },
+ },
+}
+
+aidl_interface {
+ name: "android.hardware.radio.network",
+ vendor_available: true,
+ srcs: ["android/hardware/radio/network/*.aidl"],
+ stability: "vintf",
+ imports: ["android.hardware.radio"],
+ backend: {
+ cpp: {
+ enabled: false,
+ },
+ java: {
+ sdk_version: "module_current",
+ },
+ ndk: {
+ vndk: {
+ enabled: true,
+ },
+ },
+ },
+}
+
+aidl_interface {
+ name: "android.hardware.radio.sim",
+ vendor_available: true,
+ srcs: ["android/hardware/radio/sim/*.aidl"],
+ stability: "vintf",
+ imports: ["android.hardware.radio"],
+ backend: {
+ cpp: {
+ enabled: false,
+ },
+ java: {
+ sdk_version: "module_current",
+ },
+ ndk: {
+ vndk: {
+ enabled: true,
+ },
+ },
+ },
+}
+
+aidl_interface {
+ name: "android.hardware.radio.voice",
+ vendor_available: true,
+ srcs: ["android/hardware/radio/voice/*.aidl"],
+ stability: "vintf",
+ imports: ["android.hardware.radio"],
+ backend: {
+ cpp: {
+ enabled: false,
+ },
+ java: {
+ sdk_version: "module_current",
+ },
+ ndk: {
+ vndk: {
+ enabled: true,
+ },
+ },
+ },
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ApnAuthType.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnAuthType.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ApnAuthType.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnAuthType.aidl
index bae7d1f..929cfe3 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ApnAuthType.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnAuthType.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@Backing(type="int") @VintfStability
enum ApnAuthType {
NO_PAP_NO_CHAP = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ApnTypes.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnTypes.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ApnTypes.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnTypes.aidl
index 0829fa6..6982d40 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ApnTypes.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnTypes.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@Backing(type="int") @VintfStability
enum ApnTypes {
NONE = 0,
@@ -45,7 +45,6 @@
CBS = 128,
IA = 256,
EMERGENCY = 512,
- ALL = 1023,
MCX = 1024,
XCAP = 2048,
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataCallFailCause.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataCallFailCause.aidl
similarity index 99%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataCallFailCause.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataCallFailCause.aidl
index df895f8..6130e71 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataCallFailCause.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataCallFailCause.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@Backing(type="int") @VintfStability
enum DataCallFailCause {
NONE = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataProfileInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataProfileInfo.aidl
similarity index 89%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataProfileInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataProfileInfo.aidl
index b8bba27..cfcd42c 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataProfileInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataProfileInfo.aidl
@@ -31,14 +31,14 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable DataProfileInfo {
int profileId;
String apn;
- android.hardware.radio.PdpProtocolType protocol;
- android.hardware.radio.PdpProtocolType roamingProtocol;
- android.hardware.radio.ApnAuthType authType;
+ android.hardware.radio.data.PdpProtocolType protocol;
+ android.hardware.radio.data.PdpProtocolType roamingProtocol;
+ android.hardware.radio.data.ApnAuthType authType;
String user;
String password;
int type;
@@ -46,7 +46,7 @@
int maxConns;
int waitTime;
boolean enabled;
- android.hardware.radio.ApnTypes supportedApnTypesBitmap;
+ android.hardware.radio.data.ApnTypes supportedApnTypesBitmap;
android.hardware.radio.RadioAccessFamily bearerBitmap;
int mtuV4;
int mtuV6;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataRequestReason.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataRequestReason.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataRequestReason.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataRequestReason.aidl
index 1dd0e08..c94fa6f 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataRequestReason.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataRequestReason.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@Backing(type="int") @VintfStability
enum DataRequestReason {
NORMAL = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataThrottlingAction.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataThrottlingAction.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataThrottlingAction.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataThrottlingAction.aidl
index 70aaa0f..c0ade45 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataThrottlingAction.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataThrottlingAction.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@Backing(type="byte") @VintfStability
enum DataThrottlingAction {
NO_DATA_THROTTLING = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EpsQos.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/EpsQos.aidl
similarity index 92%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EpsQos.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/EpsQos.aidl
index 8eb3fda..3636731 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EpsQos.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/EpsQos.aidl
@@ -31,10 +31,10 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable EpsQos {
int qci;
- android.hardware.radio.QosBandwidth downlink;
- android.hardware.radio.QosBandwidth uplink;
+ android.hardware.radio.data.QosBandwidth downlink;
+ android.hardware.radio.data.QosBandwidth uplink;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/IRadioData.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/IRadioData.aidl
new file mode 100644
index 0000000..a648675
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/IRadioData.aidl
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.data;
+@VintfStability
+interface IRadioData {
+ oneway void allocatePduSessionId(in int serial);
+ oneway void cancelHandover(in int serial, in int callId);
+ oneway void deactivateDataCall(in int serial, in int cid, in android.hardware.radio.data.DataRequestReason reason);
+ oneway void getDataCallList(in int serial);
+ oneway void getSlicingConfig(in int serial);
+ oneway void releasePduSessionId(in int serial, in int id);
+ oneway void responseAcknowledgement();
+ oneway void setDataAllowed(in int serial, in boolean allow);
+ oneway void setDataProfile(in int serial, in android.hardware.radio.data.DataProfileInfo[] profiles);
+ oneway void setDataThrottling(in int serial, in android.hardware.radio.data.DataThrottlingAction dataThrottlingAction, in long completionDurationMillis);
+ oneway void setInitialAttachApn(in int serial, in android.hardware.radio.data.DataProfileInfo dataProfileInfo);
+ oneway void setResponseFunctions(in android.hardware.radio.data.IRadioDataResponse radioDataResponse, in android.hardware.radio.data.IRadioDataIndication radioDataIndication);
+ oneway void setupDataCall(in int serial, in android.hardware.radio.AccessNetwork accessNetwork, in android.hardware.radio.data.DataProfileInfo dataProfileInfo, in boolean roamingAllowed, in android.hardware.radio.data.DataRequestReason reason, in android.hardware.radio.data.LinkAddress[] addresses, in String[] dnses, in int pduSessionId, in @nullable android.hardware.radio.data.SliceInfo sliceInfo, in @nullable android.hardware.radio.data.TrafficDescriptor trafficDescriptor, in boolean matchAllRuleAllowed);
+ oneway void startHandover(in int serial, in int callId);
+ oneway void startKeepalive(in int serial, in android.hardware.radio.data.KeepaliveRequest keepalive);
+ oneway void stopKeepalive(in int serial, in int sessionHandle);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/IRadioDataIndication.aidl
similarity index 74%
copy from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
copy to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/IRadioDataIndication.aidl
index 695b735..e496c7b 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/IRadioDataIndication.aidl
@@ -31,9 +31,11 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
-union QosFilterIpsecSpi {
- boolean noinit;
- int value;
+interface IRadioDataIndication {
+ oneway void dataCallListChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.data.SetupDataCallResult[] dcList);
+ 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 String apn);
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/IRadioDataResponse.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/IRadioDataResponse.aidl
new file mode 100644
index 0000000..4edc17d
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/IRadioDataResponse.aidl
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.data;
+@VintfStability
+interface IRadioDataResponse {
+ oneway void acknowledgeRequest(in int serial);
+ oneway void allocatePduSessionIdResponse(in android.hardware.radio.RadioResponseInfo info, in int id);
+ oneway void cancelHandoverResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void deactivateDataCallResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void getDataCallListResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.data.SetupDataCallResult[] dcResponse);
+ oneway void getSlicingConfigResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.data.SlicingConfig slicingConfig);
+ oneway void releasePduSessionIdResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setDataAllowedResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setDataProfileResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setDataThrottlingResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setInitialAttachApnResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setupDataCallResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.data.SetupDataCallResult dcResponse);
+ oneway void startHandoverResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void startKeepaliveResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.data.KeepaliveStatus status);
+ oneway void stopKeepaliveResponse(in android.hardware.radio.RadioResponseInfo info);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/KeepaliveRequest.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/KeepaliveRequest.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/KeepaliveRequest.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/KeepaliveRequest.aidl
index 1aeeb55..788adfb 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/KeepaliveRequest.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/KeepaliveRequest.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable KeepaliveRequest {
int type;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/KeepaliveStatus.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/KeepaliveStatus.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/KeepaliveStatus.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/KeepaliveStatus.aidl
index 3c7a736..4729b8e 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/KeepaliveStatus.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/KeepaliveStatus.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable KeepaliveStatus {
int sessionHandle;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LinkAddress.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/LinkAddress.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LinkAddress.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/LinkAddress.aidl
index bdeb9b8..9aee44c 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LinkAddress.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/LinkAddress.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable LinkAddress {
String address;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrQos.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/NrQos.aidl
similarity index 92%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrQos.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/NrQos.aidl
index a40dda8..a8a1696 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrQos.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/NrQos.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable NrQos {
int fiveQi;
- android.hardware.radio.QosBandwidth downlink;
- android.hardware.radio.QosBandwidth uplink;
+ android.hardware.radio.data.QosBandwidth downlink;
+ android.hardware.radio.data.QosBandwidth uplink;
byte qfi;
char averagingWindowMs;
const byte FLOW_ID_RANGE_MIN = 1;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/OsAppId.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/OsAppId.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/OsAppId.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/OsAppId.aidl
index bc11229..205b1e9 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/OsAppId.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/OsAppId.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable OsAppId {
byte[] osAppId;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PcoDataInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/PcoDataInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PcoDataInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/PcoDataInfo.aidl
index 828b08c..edfa759 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PcoDataInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/PcoDataInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable PcoDataInfo {
int cid;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PdpProtocolType.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/PdpProtocolType.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PdpProtocolType.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/PdpProtocolType.aidl
index 980d3af..363cdf3 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PdpProtocolType.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/PdpProtocolType.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@Backing(type="int") @VintfStability
enum PdpProtocolType {
UNKNOWN = -1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PortRange.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/PortRange.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PortRange.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/PortRange.aidl
index 8e02ff3..f3749ed 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PortRange.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/PortRange.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable PortRange {
int start;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Qos.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/Qos.aidl
similarity index 93%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Qos.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/Qos.aidl
index d69853f..1981721 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Qos.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/Qos.aidl
@@ -31,10 +31,10 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
union Qos {
boolean noinit;
- android.hardware.radio.EpsQos eps;
- android.hardware.radio.NrQos nr;
+ android.hardware.radio.data.EpsQos eps;
+ android.hardware.radio.data.NrQos nr;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosBandwidth.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosBandwidth.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosBandwidth.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosBandwidth.aidl
index 95622bc..d7ebe10 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosBandwidth.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosBandwidth.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable QosBandwidth {
int maxBitrateKbps;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilter.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilter.aidl
similarity index 86%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilter.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilter.aidl
index a568506..b9098f7 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilter.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilter.aidl
@@ -31,17 +31,17 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable QosFilter {
String[] localAddresses;
String[] remoteAddresses;
- @nullable android.hardware.radio.PortRange localPort;
- @nullable android.hardware.radio.PortRange remotePort;
+ @nullable android.hardware.radio.data.PortRange localPort;
+ @nullable android.hardware.radio.data.PortRange remotePort;
byte protocol;
- android.hardware.radio.QosFilterTypeOfService tos;
- android.hardware.radio.QosFilterIpv6FlowLabel flowLabel;
- android.hardware.radio.QosFilterIpsecSpi spi;
+ android.hardware.radio.data.QosFilterTypeOfService tos;
+ android.hardware.radio.data.QosFilterIpv6FlowLabel flowLabel;
+ android.hardware.radio.data.QosFilterIpsecSpi spi;
byte direction;
int precedence;
const byte DIRECTION_DOWNLINK = 0;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilterIpsecSpi.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilterIpsecSpi.aidl
index 695b735..565e499 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilterIpsecSpi.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
union QosFilterIpsecSpi {
boolean noinit;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpv6FlowLabel.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilterIpv6FlowLabel.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpv6FlowLabel.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilterIpv6FlowLabel.aidl
index 5b9c82c..16117b2 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpv6FlowLabel.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilterIpv6FlowLabel.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
union QosFilterIpv6FlowLabel {
boolean noinit;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterTypeOfService.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilterTypeOfService.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterTypeOfService.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilterTypeOfService.aidl
index c7c0331..95fda16 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterTypeOfService.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosFilterTypeOfService.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
union QosFilterTypeOfService {
boolean noinit;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosSession.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosSession.aidl
similarity index 92%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosSession.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosSession.aidl
index 8f1b913..53dcef0 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosSession.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/QosSession.aidl
@@ -31,10 +31,10 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable QosSession {
int qosSessionId;
- android.hardware.radio.Qos qos;
- android.hardware.radio.QosFilter[] qosFilters;
+ android.hardware.radio.data.Qos qos;
+ android.hardware.radio.data.QosFilter[] qosFilters;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RouteSelectionDescriptor.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/RouteSelectionDescriptor.aidl
similarity index 92%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RouteSelectionDescriptor.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/RouteSelectionDescriptor.aidl
index 233b8b5..02596a1 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RouteSelectionDescriptor.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/RouteSelectionDescriptor.aidl
@@ -31,13 +31,13 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable RouteSelectionDescriptor {
byte precedence;
- android.hardware.radio.PdpProtocolType sessionType;
+ android.hardware.radio.data.PdpProtocolType sessionType;
byte sscMode;
- android.hardware.radio.SliceInfo[] sliceInfo;
+ android.hardware.radio.data.SliceInfo[] sliceInfo;
String[] dnn;
const byte SSC_MODE_UNKNOWN = -1;
const byte SSC_MODE_1 = 1;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SetupDataCallResult.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/SetupDataCallResult.aidl
similarity index 84%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SetupDataCallResult.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/SetupDataCallResult.aidl
index edf7a8a..ff2459c 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SetupDataCallResult.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/SetupDataCallResult.aidl
@@ -31,27 +31,27 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable SetupDataCallResult {
- android.hardware.radio.DataCallFailCause cause;
+ android.hardware.radio.data.DataCallFailCause cause;
long suggestedRetryTime;
int cid;
int active;
- android.hardware.radio.PdpProtocolType type;
+ android.hardware.radio.data.PdpProtocolType type;
String ifname;
- android.hardware.radio.LinkAddress[] addresses;
+ android.hardware.radio.data.LinkAddress[] addresses;
String[] dnses;
String[] gateways;
String[] pcscf;
int mtuV4;
int mtuV6;
- android.hardware.radio.Qos defaultQos;
- android.hardware.radio.QosSession[] qosSessions;
+ android.hardware.radio.data.Qos defaultQos;
+ android.hardware.radio.data.QosSession[] qosSessions;
byte handoverFailureMode;
int pduSessionId;
- @nullable android.hardware.radio.SliceInfo sliceInfo;
- android.hardware.radio.TrafficDescriptor[] trafficDescriptors;
+ @nullable android.hardware.radio.data.SliceInfo sliceInfo;
+ android.hardware.radio.data.TrafficDescriptor[] trafficDescriptors;
const int DATA_CONNECTION_STATUS_INACTIVE = 0;
const int DATA_CONNECTION_STATUS_DORMANT = 1;
const int DATA_CONNECTION_STATUS_ACTIVE = 2;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SliceInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/SliceInfo.aidl
similarity index 98%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SliceInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/SliceInfo.aidl
index f49ff3b..0febcd1 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SliceInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/SliceInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable SliceInfo {
byte sliceServiceType;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SlicingConfig.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/SlicingConfig.aidl
similarity index 92%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SlicingConfig.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/SlicingConfig.aidl
index 9d36338..54e2f12 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SlicingConfig.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/SlicingConfig.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable SlicingConfig {
- android.hardware.radio.UrspRule[] urspRules;
- android.hardware.radio.SliceInfo[] sliceInfo;
+ android.hardware.radio.data.UrspRule[] urspRules;
+ android.hardware.radio.data.SliceInfo[] sliceInfo;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/TrafficDescriptor.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/TrafficDescriptor.aidl
similarity index 94%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/TrafficDescriptor.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/TrafficDescriptor.aidl
index 7dabe99..d5079c1 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/TrafficDescriptor.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/TrafficDescriptor.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable TrafficDescriptor {
@nullable String dnn;
- @nullable android.hardware.radio.OsAppId osAppId;
+ @nullable android.hardware.radio.data.OsAppId osAppId;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UrspRule.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/UrspRule.aidl
similarity index 89%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UrspRule.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/UrspRule.aidl
index 30c851c..c0be054 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UrspRule.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/UrspRule.aidl
@@ -31,10 +31,10 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable UrspRule {
int precedence;
- android.hardware.radio.TrafficDescriptor[] trafficDescriptors;
- android.hardware.radio.RouteSelectionDescriptor[] routeSelectionDescriptor;
+ android.hardware.radio.data.TrafficDescriptor[] trafficDescriptors;
+ android.hardware.radio.data.RouteSelectionDescriptor[] routeSelectionDescriptor;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaBroadcastSmsConfigInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaBroadcastSmsConfigInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaBroadcastSmsConfigInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaBroadcastSmsConfigInfo.aidl
index 73c7fae..54e8a7b 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaBroadcastSmsConfigInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaBroadcastSmsConfigInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaBroadcastSmsConfigInfo {
int serviceCategory;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsAck.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsAck.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsAck.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsAck.aidl
index 8dfa1da..0de1688 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsAck.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsAck.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaSmsAck {
boolean errorClass;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsAddress.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsAddress.aidl
similarity index 98%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsAddress.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsAddress.aidl
index a24c701..4a55745 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsAddress.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsAddress.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaSmsAddress {
int digitMode;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsMessage.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsMessage.aidl
similarity index 91%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsMessage.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsMessage.aidl
index c419bad..fdb74fb 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsMessage.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsMessage.aidl
@@ -31,13 +31,13 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaSmsMessage {
int teleserviceId;
boolean isServicePresent;
int serviceCategory;
- android.hardware.radio.CdmaSmsAddress address;
- android.hardware.radio.CdmaSmsSubaddress subAddress;
+ android.hardware.radio.messaging.CdmaSmsAddress address;
+ android.hardware.radio.messaging.CdmaSmsSubaddress subAddress;
byte[] bearerData;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsSubaddress.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsSubaddress.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsSubaddress.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsSubaddress.aidl
index 0cf3e58..deb1102 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsSubaddress.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsSubaddress.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaSmsSubaddress {
int subaddressType;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsWriteArgs.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsWriteArgs.aidl
similarity index 94%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsWriteArgs.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsWriteArgs.aidl
index e2fd8fd..4969663 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSmsWriteArgs.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/CdmaSmsWriteArgs.aidl
@@ -31,11 +31,11 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaSmsWriteArgs {
int status;
- android.hardware.radio.CdmaSmsMessage message;
+ android.hardware.radio.messaging.CdmaSmsMessage message;
const int STATUS_REC_UNREAD = 0;
const int STATUS_REC_READ = 1;
const int STATUS_STO_UNSENT = 2;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GsmBroadcastSmsConfigInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/GsmBroadcastSmsConfigInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GsmBroadcastSmsConfigInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/GsmBroadcastSmsConfigInfo.aidl
index e74845e..6cc7636 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GsmBroadcastSmsConfigInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/GsmBroadcastSmsConfigInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable GsmBroadcastSmsConfigInfo {
int fromServiceId;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GsmSmsMessage.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/GsmSmsMessage.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GsmSmsMessage.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/GsmSmsMessage.aidl
index 1b00b0f..2937d5c 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GsmSmsMessage.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/GsmSmsMessage.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable GsmSmsMessage {
String smscPdu;
diff --git a/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/IRadioMessaging.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/IRadioMessaging.aidl
new file mode 100644
index 0000000..b0fc349
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/IRadioMessaging.aidl
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.messaging;
+@VintfStability
+interface IRadioMessaging {
+ oneway void acknowledgeIncomingGsmSmsWithPdu(in int serial, in boolean success, in String ackPdu);
+ oneway void acknowledgeLastIncomingCdmaSms(in int serial, in android.hardware.radio.messaging.CdmaSmsAck smsAck);
+ oneway void acknowledgeLastIncomingGsmSms(in int serial, in boolean success, in android.hardware.radio.messaging.SmsAcknowledgeFailCause cause);
+ oneway void cancelPendingUssd(in int serial);
+ oneway void deleteSmsOnRuim(in int serial, in int index);
+ oneway void deleteSmsOnSim(in int serial, in int index);
+ oneway void getCdmaBroadcastConfig(in int serial);
+ oneway void getGsmBroadcastConfig(in int serial);
+ oneway void getSmscAddress(in int serial);
+ oneway void reportSmsMemoryStatus(in int serial, in boolean available);
+ oneway void responseAcknowledgement();
+ oneway void sendCdmaSms(in int serial, in android.hardware.radio.messaging.CdmaSmsMessage sms);
+ oneway void sendCdmaSmsExpectMore(in int serial, in android.hardware.radio.messaging.CdmaSmsMessage sms);
+ oneway void sendImsSms(in int serial, in android.hardware.radio.messaging.ImsSmsMessage message);
+ oneway void sendSms(in int serial, in android.hardware.radio.messaging.GsmSmsMessage message);
+ oneway void sendSmsExpectMore(in int serial, in android.hardware.radio.messaging.GsmSmsMessage message);
+ oneway void sendUssd(in int serial, in String ussd);
+ oneway void setCdmaBroadcastActivation(in int serial, in boolean activate);
+ oneway void setCdmaBroadcastConfig(in int serial, in android.hardware.radio.messaging.CdmaBroadcastSmsConfigInfo[] configInfo);
+ oneway void setGsmBroadcastActivation(in int serial, in boolean activate);
+ oneway void setGsmBroadcastConfig(in int serial, in android.hardware.radio.messaging.GsmBroadcastSmsConfigInfo[] configInfo);
+ oneway void setResponseFunctions(in android.hardware.radio.messaging.IRadioMessagingResponse radioMessagingResponse, in android.hardware.radio.messaging.IRadioMessagingIndication radioMessagingIndication);
+ oneway void setSmscAddress(in int serial, in String smsc);
+ oneway void writeSmsToRuim(in int serial, in android.hardware.radio.messaging.CdmaSmsWriteArgs cdmaSms);
+ oneway void writeSmsToSim(in int serial, in android.hardware.radio.messaging.SmsWriteArgs smsWriteArgs);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/IRadioMessagingIndication.aidl
similarity index 64%
copy from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
copy to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/IRadioMessagingIndication.aidl
index 695b735..89a0f3b 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/IRadioMessagingIndication.aidl
@@ -31,9 +31,15 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
-union QosFilterIpsecSpi {
- boolean noinit;
- int value;
+interface IRadioMessagingIndication {
+ oneway void cdmaNewSms(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.messaging.CdmaSmsMessage msg);
+ oneway void cdmaRuimSmsStorageFull(in android.hardware.radio.RadioIndicationType type);
+ oneway void newBroadcastSms(in android.hardware.radio.RadioIndicationType type, in byte[] data);
+ oneway void newSms(in android.hardware.radio.RadioIndicationType type, in byte[] pdu);
+ oneway void newSmsOnSim(in android.hardware.radio.RadioIndicationType type, in int recordNumber);
+ oneway void newSmsStatusReport(in android.hardware.radio.RadioIndicationType type, in byte[] pdu);
+ oneway void onUssd(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.messaging.UssdModeType modeType, in String msg);
+ oneway void simSmsStorageFull(in android.hardware.radio.RadioIndicationType type);
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/IRadioMessagingResponse.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/IRadioMessagingResponse.aidl
new file mode 100644
index 0000000..156f24b
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/IRadioMessagingResponse.aidl
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.messaging;
+@VintfStability
+interface IRadioMessagingResponse {
+ oneway void acknowledgeIncomingGsmSmsWithPduResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void acknowledgeLastIncomingCdmaSmsResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void acknowledgeLastIncomingGsmSmsResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void acknowledgeRequest(in int serial);
+ oneway void cancelPendingUssdResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void deleteSmsOnRuimResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void deleteSmsOnSimResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void getCdmaBroadcastConfigResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.messaging.CdmaBroadcastSmsConfigInfo[] configs);
+ oneway void getGsmBroadcastConfigResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.messaging.GsmBroadcastSmsConfigInfo[] configs);
+ oneway void getSmscAddressResponse(in android.hardware.radio.RadioResponseInfo info, in String smsc);
+ oneway void reportSmsMemoryStatusResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void sendCdmaSmsExpectMoreResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.messaging.SendSmsResult sms);
+ oneway void sendCdmaSmsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.messaging.SendSmsResult sms);
+ oneway void sendImsSmsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.messaging.SendSmsResult sms);
+ oneway void sendSmsExpectMoreResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.messaging.SendSmsResult sms);
+ oneway void sendSmsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.messaging.SendSmsResult sms);
+ oneway void sendUssdResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setCdmaBroadcastActivationResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setCdmaBroadcastConfigResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setGsmBroadcastActivationResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setGsmBroadcastConfigResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setSmscAddressResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void writeSmsToRuimResponse(in android.hardware.radio.RadioResponseInfo info, in int index);
+ oneway void writeSmsToSimResponse(in android.hardware.radio.RadioResponseInfo info, in int index);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ImsSmsMessage.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/ImsSmsMessage.aidl
similarity index 91%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ImsSmsMessage.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/ImsSmsMessage.aidl
index b5ffcc6..706bfdd 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ImsSmsMessage.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/ImsSmsMessage.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable ImsSmsMessage {
android.hardware.radio.RadioTechnologyFamily tech;
boolean retry;
int messageRef;
- android.hardware.radio.CdmaSmsMessage[] cdmaMessage;
- android.hardware.radio.GsmSmsMessage[] gsmMessage;
+ android.hardware.radio.messaging.CdmaSmsMessage[] cdmaMessage;
+ android.hardware.radio.messaging.GsmSmsMessage[] gsmMessage;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SendSmsResult.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/SendSmsResult.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SendSmsResult.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/SendSmsResult.aidl
index 7063db5..0fbec6f 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SendSmsResult.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/SendSmsResult.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable SendSmsResult {
int messageRef;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SmsAcknowledgeFailCause.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/SmsAcknowledgeFailCause.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SmsAcknowledgeFailCause.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/SmsAcknowledgeFailCause.aidl
index c5b13b9..b1f8ff8 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SmsAcknowledgeFailCause.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/SmsAcknowledgeFailCause.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@Backing(type="int") @VintfStability
enum SmsAcknowledgeFailCause {
MEMORY_CAPACITY_EXCEEDED = 211,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SmsWriteArgs.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/SmsWriteArgs.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SmsWriteArgs.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/SmsWriteArgs.aidl
index a42339d..1748b62 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SmsWriteArgs.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/SmsWriteArgs.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable SmsWriteArgs {
int status;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UssdModeType.aidl b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/UssdModeType.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UssdModeType.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/UssdModeType.aidl
index 992a55f..5395b11 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UssdModeType.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.messaging/current/android/hardware/radio/messaging/UssdModeType.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@Backing(type="int") @VintfStability
enum UssdModeType {
NOTIFY = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ActivityStatsInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/ActivityStatsInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ActivityStatsInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/ActivityStatsInfo.aidl
index f9ef742..2da0167 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ActivityStatsInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/ActivityStatsInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
parcelable ActivityStatsInfo {
int sleepModeTimeMs;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DeviceStateType.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/DeviceStateType.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DeviceStateType.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/DeviceStateType.aidl
index 2d3cea8..0f0006d 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DeviceStateType.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/DeviceStateType.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@Backing(type="int") @VintfStability
enum DeviceStateType {
POWER_SAVE_MODE = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/HardwareConfig.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/HardwareConfig.aidl
similarity index 92%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/HardwareConfig.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/HardwareConfig.aidl
index 60ab511..7593ca7 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/HardwareConfig.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/HardwareConfig.aidl
@@ -31,14 +31,14 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
parcelable HardwareConfig {
int type;
String uuid;
int state;
- android.hardware.radio.HardwareConfigModem[] modem;
- android.hardware.radio.HardwareConfigSim[] sim;
+ android.hardware.radio.modem.HardwareConfigModem[] modem;
+ android.hardware.radio.modem.HardwareConfigSim[] sim;
const int STATE_ENABLED = 0;
const int STATE_STANDBY = 1;
const int STATE_DISABLED = 2;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/HardwareConfigModem.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/HardwareConfigModem.aidl
similarity index 93%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/HardwareConfigModem.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/HardwareConfigModem.aidl
index 08e12e6..bf70995 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/HardwareConfigModem.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/HardwareConfigModem.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
parcelable HardwareConfigModem {
int rilModel;
- int rat;
- int maxVoice;
- int maxData;
+ android.hardware.radio.RadioTechnology rat;
+ int maxVoiceCalls;
+ int maxDataCalls;
int maxStandby;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/HardwareConfigSim.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/HardwareConfigSim.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/HardwareConfigSim.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/HardwareConfigSim.aidl
index 8df23b4..1b887c2 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/HardwareConfigSim.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/HardwareConfigSim.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
parcelable HardwareConfigSim {
String modemUuid;
diff --git a/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/IRadioModem.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/IRadioModem.aidl
new file mode 100644
index 0000000..41eff51
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/IRadioModem.aidl
@@ -0,0 +1,54 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.modem;
+@VintfStability
+interface IRadioModem {
+ oneway void enableModem(in int serial, in boolean on);
+ oneway void getBasebandVersion(in int serial);
+ oneway void getDeviceIdentity(in int serial);
+ oneway void getHardwareConfig(in int serial);
+ oneway void getModemActivityInfo(in int serial);
+ oneway void getModemStackStatus(in int serial);
+ oneway void getRadioCapability(in int serial);
+ oneway void nvReadItem(in int serial, in android.hardware.radio.modem.NvItem itemId);
+ oneway void nvResetConfig(in int serial, in android.hardware.radio.modem.ResetNvType resetType);
+ oneway void nvWriteCdmaPrl(in int serial, in byte[] prl);
+ oneway void nvWriteItem(in int serial, in android.hardware.radio.modem.NvWriteItem item);
+ oneway void requestShutdown(in int serial);
+ oneway void responseAcknowledgement();
+ oneway void sendDeviceState(in int serial, in android.hardware.radio.modem.DeviceStateType deviceStateType, in boolean state);
+ oneway void setRadioCapability(in int serial, in android.hardware.radio.modem.RadioCapability rc);
+ oneway void setRadioPower(in int serial, in boolean powerOn, in boolean forEmergencyCall, in boolean preferredForEmergencyCall);
+ oneway void setResponseFunctions(in android.hardware.radio.modem.IRadioModemResponse radioModemResponse, in android.hardware.radio.modem.IRadioModemIndication radioModemIndication);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/IRadioModemIndication.aidl
similarity index 71%
copy from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
copy to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/IRadioModemIndication.aidl
index 695b735..514ff9a 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/IRadioModemIndication.aidl
@@ -31,9 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
-union QosFilterIpsecSpi {
- boolean noinit;
- int value;
+interface IRadioModemIndication {
+ oneway void hardwareConfigChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.modem.HardwareConfig[] configs);
+ oneway void modemReset(in android.hardware.radio.RadioIndicationType type, in String reason);
+ oneway void radioCapabilityIndication(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.modem.RadioCapability rc);
+ oneway void radioStateChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.modem.RadioState radioState);
+ oneway void rilConnected(in android.hardware.radio.RadioIndicationType type);
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/IRadioModemResponse.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/IRadioModemResponse.aidl
new file mode 100644
index 0000000..dcaff45
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/IRadioModemResponse.aidl
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.modem;
+@VintfStability
+interface IRadioModemResponse {
+ oneway void acknowledgeRequest(in int serial);
+ oneway void enableModemResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void getBasebandVersionResponse(in android.hardware.radio.RadioResponseInfo info, in String version);
+ oneway void getDeviceIdentityResponse(in android.hardware.radio.RadioResponseInfo info, in String imei, in String imeisv, in String esn, in String meid);
+ oneway void getHardwareConfigResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.modem.HardwareConfig[] config);
+ oneway void getModemActivityInfoResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.modem.ActivityStatsInfo activityInfo);
+ oneway void getModemStackStatusResponse(in android.hardware.radio.RadioResponseInfo info, in boolean isEnabled);
+ oneway void getRadioCapabilityResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.modem.RadioCapability rc);
+ oneway void nvReadItemResponse(in android.hardware.radio.RadioResponseInfo info, in String result);
+ oneway void nvResetConfigResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void nvWriteCdmaPrlResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void nvWriteItemResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void requestShutdownResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void sendDeviceStateResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setRadioCapabilityResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.modem.RadioCapability rc);
+ oneway void setRadioPowerResponse(in android.hardware.radio.RadioResponseInfo info);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NvItem.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/NvItem.aidl
similarity index 98%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NvItem.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/NvItem.aidl
index d7706c5..bda4ab7 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NvItem.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/NvItem.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@Backing(type="int") @VintfStability
enum NvItem {
CDMA_MEID = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NvWriteItem.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/NvWriteItem.aidl
similarity index 95%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NvWriteItem.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/NvWriteItem.aidl
index 9e60db6..58e8498 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NvWriteItem.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/NvWriteItem.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
parcelable NvWriteItem {
- android.hardware.radio.NvItem itemId;
+ android.hardware.radio.modem.NvItem itemId;
String value;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioCapability.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/RadioCapability.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioCapability.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/RadioCapability.aidl
index ca1e389..d5716ac 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioCapability.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/RadioCapability.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
parcelable RadioCapability {
int session;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioState.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/RadioState.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioState.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/RadioState.aidl
index 3dad483..4bde770 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioState.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/RadioState.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@Backing(type="int") @VintfStability
enum RadioState {
OFF = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ResetNvType.aidl b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/ResetNvType.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ResetNvType.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/ResetNvType.aidl
index 3852a77..81f2254 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ResetNvType.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.modem/current/android/hardware/radio/modem/ResetNvType.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.modem;
@Backing(type="int") @VintfStability
enum ResetNvType {
RELOAD = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/AccessTechnologySpecificInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/AccessTechnologySpecificInfo.aidl
similarity index 88%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/AccessTechnologySpecificInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/AccessTechnologySpecificInfo.aidl
index 988f118..4a4a120 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/AccessTechnologySpecificInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/AccessTechnologySpecificInfo.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
union AccessTechnologySpecificInfo {
boolean noinit;
- android.hardware.radio.Cdma2000RegistrationInfo cdmaInfo;
- android.hardware.radio.EutranRegistrationInfo eutranInfo;
- android.hardware.radio.NrVopsInfo ngranNrVopsInfo;
+ android.hardware.radio.network.Cdma2000RegistrationInfo cdmaInfo;
+ android.hardware.radio.network.EutranRegistrationInfo eutranInfo;
+ android.hardware.radio.network.NrVopsInfo ngranNrVopsInfo;
boolean geranDtmSupported;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/BarringInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/BarringInfo.aidl
similarity index 96%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/BarringInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/BarringInfo.aidl
index 1623764..a96ef51 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/BarringInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/BarringInfo.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable BarringInfo {
int serviceType;
int barringType;
- @nullable android.hardware.radio.BarringTypeSpecificInfo barringTypeSpecificInfo;
+ @nullable android.hardware.radio.network.BarringTypeSpecificInfo barringTypeSpecificInfo;
const int BARRING_TYPE_NONE = 0;
const int BARRING_TYPE_CONDITIONAL = 1;
const int BARRING_TYPE_UNCONDITIONAL = 2;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/BarringTypeSpecificInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/BarringTypeSpecificInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/BarringTypeSpecificInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/BarringTypeSpecificInfo.aidl
index 98b46c9..c04cdb5 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/BarringTypeSpecificInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/BarringTypeSpecificInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable BarringTypeSpecificInfo {
int factor;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Cdma2000RegistrationInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/Cdma2000RegistrationInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Cdma2000RegistrationInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/Cdma2000RegistrationInfo.aidl
index 6e4d7b6..7d9292d 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Cdma2000RegistrationInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/Cdma2000RegistrationInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable Cdma2000RegistrationInfo {
boolean cssSupported;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaRoamingType.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CdmaRoamingType.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaRoamingType.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CdmaRoamingType.aidl
index 09a59a0..54c431b 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaRoamingType.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CdmaRoamingType.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum CdmaRoamingType {
HOME_NETWORK = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSignalStrength.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CdmaSignalStrength.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSignalStrength.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CdmaSignalStrength.aidl
index 2939183..b4aee1c 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSignalStrength.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CdmaSignalStrength.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CdmaSignalStrength {
int dbm;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellConnectionStatus.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellConnectionStatus.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellConnectionStatus.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellConnectionStatus.aidl
index 96f8368..066cb60 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellConnectionStatus.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellConnectionStatus.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum CellConnectionStatus {
NONE = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentity.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentity.aidl
similarity index 82%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentity.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentity.aidl
index aa37fdf..1c68e8c 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentity.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentity.aidl
@@ -31,14 +31,14 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
union CellIdentity {
boolean noinit;
- android.hardware.radio.CellIdentityGsm gsm;
- android.hardware.radio.CellIdentityWcdma wcdma;
- android.hardware.radio.CellIdentityTdscdma tdscdma;
- android.hardware.radio.CellIdentityCdma cdma;
- android.hardware.radio.CellIdentityLte lte;
- android.hardware.radio.CellIdentityNr nr;
+ android.hardware.radio.network.CellIdentityGsm gsm;
+ android.hardware.radio.network.CellIdentityWcdma wcdma;
+ android.hardware.radio.network.CellIdentityTdscdma tdscdma;
+ android.hardware.radio.network.CellIdentityCdma cdma;
+ android.hardware.radio.network.CellIdentityLte lte;
+ android.hardware.radio.network.CellIdentityNr nr;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityCdma.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityCdma.aidl
similarity index 93%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityCdma.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityCdma.aidl
index d24b91d..7dd1341 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityCdma.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityCdma.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellIdentityCdma {
int networkId;
@@ -39,5 +39,5 @@
int baseStationId;
int longitude;
int latitude;
- android.hardware.radio.CellIdentityOperatorNames operatorNames;
+ android.hardware.radio.network.CellIdentityOperatorNames operatorNames;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityGsm.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityGsm.aidl
similarity index 93%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityGsm.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityGsm.aidl
index 4ee2148..3991af7 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityGsm.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityGsm.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellIdentityGsm {
String mcc;
@@ -40,6 +40,6 @@
int cid;
int arfcn;
byte bsic;
- android.hardware.radio.CellIdentityOperatorNames operatorNames;
+ android.hardware.radio.network.CellIdentityOperatorNames operatorNames;
String[] additionalPlmns;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityLte.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityLte.aidl
similarity index 88%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityLte.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityLte.aidl
index 4f7c90b..9ea0974 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityLte.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityLte.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellIdentityLte {
String mcc;
@@ -40,9 +40,9 @@
int pci;
int tac;
int earfcn;
- android.hardware.radio.CellIdentityOperatorNames operatorNames;
+ android.hardware.radio.network.CellIdentityOperatorNames operatorNames;
int bandwidth;
String[] additionalPlmns;
- @nullable android.hardware.radio.ClosedSubscriberGroupInfo csgInfo;
- android.hardware.radio.EutranBands[] bands;
+ @nullable android.hardware.radio.network.ClosedSubscriberGroupInfo csgInfo;
+ android.hardware.radio.network.EutranBands[] bands;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityNr.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityNr.aidl
similarity index 91%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityNr.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityNr.aidl
index 60a24d7..865e0dd 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityNr.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityNr.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellIdentityNr {
String mcc;
@@ -40,7 +40,7 @@
int pci;
int tac;
int nrarfcn;
- android.hardware.radio.CellIdentityOperatorNames operatorNames;
+ android.hardware.radio.network.CellIdentityOperatorNames operatorNames;
String[] additionalPlmns;
- android.hardware.radio.NgranBands[] bands;
+ android.hardware.radio.network.NgranBands[] bands;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityOperatorNames.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityOperatorNames.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityOperatorNames.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityOperatorNames.aidl
index 161797f..a03f519 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityOperatorNames.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityOperatorNames.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellIdentityOperatorNames {
String alphaLong;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityTdscdma.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityTdscdma.aidl
similarity index 90%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityTdscdma.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityTdscdma.aidl
index 7cc13b5..836b5b5 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityTdscdma.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityTdscdma.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellIdentityTdscdma {
String mcc;
@@ -40,7 +40,7 @@
int cid;
int cpid;
int uarfcn;
- android.hardware.radio.CellIdentityOperatorNames operatorNames;
+ android.hardware.radio.network.CellIdentityOperatorNames operatorNames;
String[] additionalPlmns;
- @nullable android.hardware.radio.ClosedSubscriberGroupInfo csgInfo;
+ @nullable android.hardware.radio.network.ClosedSubscriberGroupInfo csgInfo;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityWcdma.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityWcdma.aidl
similarity index 90%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityWcdma.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityWcdma.aidl
index c43a8ad..f832449 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellIdentityWcdma.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellIdentityWcdma.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellIdentityWcdma {
String mcc;
@@ -40,7 +40,7 @@
int cid;
int psc;
int uarfcn;
- android.hardware.radio.CellIdentityOperatorNames operatorNames;
+ android.hardware.radio.network.CellIdentityOperatorNames operatorNames;
String[] additionalPlmns;
- @nullable android.hardware.radio.ClosedSubscriberGroupInfo csgInfo;
+ @nullable android.hardware.radio.network.ClosedSubscriberGroupInfo csgInfo;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfo.aidl
similarity index 90%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfo.aidl
index 20ea3cb..38e0a44 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfo.aidl
@@ -31,10 +31,10 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellInfo {
boolean registered;
- android.hardware.radio.CellConnectionStatus connectionStatus;
- android.hardware.radio.CellInfoCellInfoRatSpecificInfo ratSpecificInfo;
+ android.hardware.radio.network.CellConnectionStatus connectionStatus;
+ android.hardware.radio.network.CellInfoRatSpecificInfo ratSpecificInfo;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoCdma.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoCdma.aidl
similarity index 87%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoCdma.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoCdma.aidl
index dd940c2..d171a4b 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoCdma.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoCdma.aidl
@@ -31,10 +31,10 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellInfoCdma {
- android.hardware.radio.CellIdentityCdma cellIdentityCdma;
- android.hardware.radio.CdmaSignalStrength signalStrengthCdma;
- android.hardware.radio.EvdoSignalStrength signalStrengthEvdo;
+ android.hardware.radio.network.CellIdentityCdma cellIdentityCdma;
+ android.hardware.radio.network.CdmaSignalStrength signalStrengthCdma;
+ android.hardware.radio.network.EvdoSignalStrength signalStrengthEvdo;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoGsm.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoGsm.aidl
similarity index 90%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoGsm.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoGsm.aidl
index fda976c..491b686 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoGsm.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoGsm.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellInfoGsm {
- android.hardware.radio.CellIdentityGsm cellIdentityGsm;
- android.hardware.radio.GsmSignalStrength signalStrengthGsm;
+ android.hardware.radio.network.CellIdentityGsm cellIdentityGsm;
+ android.hardware.radio.network.GsmSignalStrength signalStrengthGsm;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoLte.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoLte.aidl
similarity index 90%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoLte.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoLte.aidl
index 9976feb..67c5a18 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoLte.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoLte.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellInfoLte {
- android.hardware.radio.CellIdentityLte cellIdentityLte;
- android.hardware.radio.LteSignalStrength signalStrengthLte;
+ android.hardware.radio.network.CellIdentityLte cellIdentityLte;
+ android.hardware.radio.network.LteSignalStrength signalStrengthLte;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoNr.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoNr.aidl
similarity index 90%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoNr.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoNr.aidl
index 7883692..a094600 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoNr.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoNr.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellInfoNr {
- android.hardware.radio.CellIdentityNr cellIdentityNr;
- android.hardware.radio.NrSignalStrength signalStrengthNr;
+ android.hardware.radio.network.CellIdentityNr cellIdentityNr;
+ android.hardware.radio.network.NrSignalStrength signalStrengthNr;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoRatSpecificInfo.aidl
similarity index 81%
copy from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
copy to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoRatSpecificInfo.aidl
index 695b735..4e0719c 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/QosFilterIpsecSpi.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoRatSpecificInfo.aidl
@@ -31,9 +31,13 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
-union QosFilterIpsecSpi {
- boolean noinit;
- int value;
+union CellInfoRatSpecificInfo {
+ android.hardware.radio.network.CellInfoGsm gsm;
+ android.hardware.radio.network.CellInfoWcdma wcdma;
+ android.hardware.radio.network.CellInfoTdscdma tdscdma;
+ android.hardware.radio.network.CellInfoLte lte;
+ android.hardware.radio.network.CellInfoNr nr;
+ android.hardware.radio.network.CellInfoCdma cdma;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoTdscdma.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoTdscdma.aidl
similarity index 89%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoTdscdma.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoTdscdma.aidl
index 4fbe5b6..d4e0874 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoTdscdma.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoTdscdma.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellInfoTdscdma {
- android.hardware.radio.CellIdentityTdscdma cellIdentityTdscdma;
- android.hardware.radio.TdscdmaSignalStrength signalStrengthTdscdma;
+ android.hardware.radio.network.CellIdentityTdscdma cellIdentityTdscdma;
+ android.hardware.radio.network.TdscdmaSignalStrength signalStrengthTdscdma;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoWcdma.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoWcdma.aidl
similarity index 90%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoWcdma.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoWcdma.aidl
index 88ca975..da19e37 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoWcdma.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/CellInfoWcdma.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellInfoWcdma {
- android.hardware.radio.CellIdentityWcdma cellIdentityWcdma;
- android.hardware.radio.WcdmaSignalStrength signalStrengthWcdma;
+ android.hardware.radio.network.CellIdentityWcdma cellIdentityWcdma;
+ android.hardware.radio.network.WcdmaSignalStrength signalStrengthWcdma;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ClosedSubscriberGroupInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/ClosedSubscriberGroupInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ClosedSubscriberGroupInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/ClosedSubscriberGroupInfo.aidl
index 0c10ca4..5c45d93 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ClosedSubscriberGroupInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/ClosedSubscriberGroupInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable ClosedSubscriberGroupInfo {
boolean csgIndication;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Domain.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/Domain.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Domain.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/Domain.aidl
index 062af35..712bbdb 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Domain.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/Domain.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum Domain {
CS = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EutranBands.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/EutranBands.aidl
similarity index 98%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EutranBands.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/EutranBands.aidl
index 1449865..6c94d15 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EutranBands.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/EutranBands.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum EutranBands {
BAND_1 = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EutranRegistrationInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/EutranRegistrationInfo.aidl
similarity index 91%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EutranRegistrationInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/EutranRegistrationInfo.aidl
index 0ab8833..098b57e 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EutranRegistrationInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/EutranRegistrationInfo.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable EutranRegistrationInfo {
- android.hardware.radio.LteVopsInfo lteVopsInfo;
- android.hardware.radio.NrIndicators nrIndicators;
+ android.hardware.radio.network.LteVopsInfo lteVopsInfo;
+ android.hardware.radio.network.NrIndicators nrIndicators;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EvdoSignalStrength.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/EvdoSignalStrength.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EvdoSignalStrength.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/EvdoSignalStrength.aidl
index 148dfa0..7ec1635 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EvdoSignalStrength.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/EvdoSignalStrength.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable EvdoSignalStrength {
int dbm;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GeranBands.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/GeranBands.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GeranBands.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/GeranBands.aidl
index 0efe023..7cb0fd5 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GeranBands.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/GeranBands.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum GeranBands {
BAND_T380 = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GsmSignalStrength.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/GsmSignalStrength.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GsmSignalStrength.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/GsmSignalStrength.aidl
index 5d3a6e1..4142ae7 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/GsmSignalStrength.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/GsmSignalStrength.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable GsmSignalStrength {
int signalStrength;
diff --git a/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IRadioNetwork.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IRadioNetwork.aidl
new file mode 100644
index 0000000..8131007
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IRadioNetwork.aidl
@@ -0,0 +1,73 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.network;
+@VintfStability
+interface IRadioNetwork {
+ oneway void getAllowedNetworkTypesBitmap(in int serial);
+ oneway void getAvailableBandModes(in int serial);
+ oneway void getAvailableNetworks(in int serial);
+ oneway void getBarringInfo(in int serial);
+ oneway void getCdmaRoamingPreference(in int serial);
+ oneway void getCellInfoList(in int serial);
+ oneway void getDataRegistrationState(in int serial);
+ oneway void getImsRegistrationState(in int serial);
+ oneway void getNeighboringCids(in int serial);
+ oneway void getNetworkSelectionMode(in int serial);
+ oneway void getOperator(in int serial);
+ oneway void getSignalStrength(in int serial);
+ oneway void getSystemSelectionChannels(in int serial);
+ oneway void getVoiceRadioTechnology(in int serial);
+ oneway void getVoiceRegistrationState(in int serial);
+ oneway void isNrDualConnectivityEnabled(in int serial);
+ oneway void pullLceData(in int serial);
+ oneway void responseAcknowledgement();
+ oneway void setAllowedNetworkTypesBitmap(in int serial, in android.hardware.radio.RadioAccessFamily networkTypeBitmap);
+ oneway void setBandMode(in int serial, in android.hardware.radio.network.RadioBandMode mode);
+ oneway void setBarringPassword(in int serial, in String facility, in String oldPassword, in String newPassword);
+ oneway void setCdmaRoamingPreference(in int serial, in android.hardware.radio.network.CdmaRoamingType type);
+ oneway void setCellInfoListRate(in int serial, in int rate);
+ oneway void setIndicationFilter(in int serial, in android.hardware.radio.network.IndicationFilter indicationFilter);
+ oneway void setLinkCapacityReportingCriteria(in int serial, in int hysteresisMs, in int hysteresisDlKbps, in int hysteresisUlKbps, in int[] thresholdsDownlinkKbps, in int[] thresholdsUplinkKbps, in android.hardware.radio.AccessNetwork accessNetwork);
+ oneway void setLocationUpdates(in int serial, in boolean enable);
+ oneway void setNetworkSelectionModeAutomatic(in int serial);
+ oneway void setNetworkSelectionModeManual(in int serial, in String operatorNumeric, in android.hardware.radio.AccessNetwork ran);
+ oneway void setNrDualConnectivityState(in int serial, in android.hardware.radio.network.NrDualConnectivityState nrDualConnectivityState);
+ oneway void setResponseFunctions(in android.hardware.radio.network.IRadioNetworkResponse radioNetworkResponse, in android.hardware.radio.network.IRadioNetworkIndication radioNetworkIndication);
+ oneway void setSignalStrengthReportingCriteria(in int serial, in android.hardware.radio.network.SignalThresholdInfo signalThresholdInfo, in android.hardware.radio.AccessNetwork accessNetwork);
+ oneway void setSuppServiceNotifications(in int serial, in boolean enable);
+ oneway void setSystemSelectionChannels(in int serial, in boolean specifyChannels, in android.hardware.radio.network.RadioAccessSpecifier[] specifiers);
+ oneway void startNetworkScan(in int serial, in android.hardware.radio.network.NetworkScanRequest request);
+ oneway void stopNetworkScan(in int serial);
+ oneway void supplyNetworkDepersonalization(in int serial, in String netPin);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IRadioNetworkIndication.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IRadioNetworkIndication.aidl
new file mode 100644
index 0000000..71b1765
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IRadioNetworkIndication.aidl
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.network;
+@VintfStability
+interface IRadioNetworkIndication {
+ oneway void barringInfoChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.network.CellIdentity cellIdentity, in android.hardware.radio.network.BarringInfo[] barringInfos);
+ oneway void cdmaPrlChanged(in android.hardware.radio.RadioIndicationType type, in int version);
+ oneway void cellInfoList(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.network.CellInfo[] records);
+ oneway void currentLinkCapacityEstimate(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.network.LinkCapacityEstimate lce);
+ oneway void currentPhysicalChannelConfigs(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.network.PhysicalChannelConfig[] configs);
+ oneway void currentSignalStrength(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.network.SignalStrength signalStrength);
+ oneway void imsNetworkStateChanged(in android.hardware.radio.RadioIndicationType type);
+ oneway void networkScanResult(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.network.NetworkScanResult result);
+ oneway void networkStateChanged(in android.hardware.radio.RadioIndicationType type);
+ oneway void nitzTimeReceived(in android.hardware.radio.RadioIndicationType type, in String nitzTime, in long receivedTime);
+ oneway void registrationFailed(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.network.CellIdentity cellIdentity, in String chosenPlmn, in android.hardware.radio.network.Domain domain, in int causeCode, in int additionalCauseCode);
+ oneway void restrictedStateChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.network.PhoneRestrictedState state);
+ oneway void suppSvcNotify(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.network.SuppSvcNotification suppSvc);
+ oneway void voiceRadioTechChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.RadioTechnology rat);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IRadioNetworkResponse.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IRadioNetworkResponse.aidl
new file mode 100644
index 0000000..e03e4df
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IRadioNetworkResponse.aidl
@@ -0,0 +1,72 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.network;
+@VintfStability
+interface IRadioNetworkResponse {
+ oneway void acknowledgeRequest(in int serial);
+ oneway void getAllowedNetworkTypesBitmapResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RadioAccessFamily networkTypeBitmap);
+ oneway void getAvailableBandModesResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.RadioBandMode[] bandModes);
+ oneway void getAvailableNetworksResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.OperatorInfo[] networkInfos);
+ oneway void getBarringInfoResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.CellIdentity cellIdentity, in android.hardware.radio.network.BarringInfo[] barringInfos);
+ oneway void getCdmaRoamingPreferenceResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.CdmaRoamingType type);
+ oneway void getCellInfoListResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.CellInfo[] cellInfo);
+ oneway void getDataRegistrationStateResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.RegStateResult dataRegResponse);
+ oneway void getImsRegistrationStateResponse(in android.hardware.radio.RadioResponseInfo info, in boolean isRegistered, in android.hardware.radio.RadioTechnologyFamily ratFamily);
+ oneway void getNeighboringCidsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.NeighboringCell[] cells);
+ oneway void getNetworkSelectionModeResponse(in android.hardware.radio.RadioResponseInfo info, in boolean manual);
+ oneway void getOperatorResponse(in android.hardware.radio.RadioResponseInfo info, in String longName, in String shortName, in String numeric);
+ oneway void getSignalStrengthResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.SignalStrength signalStrength);
+ oneway void getSystemSelectionChannelsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.RadioAccessSpecifier[] specifiers);
+ oneway void getVoiceRadioTechnologyResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RadioTechnology rat);
+ oneway void getVoiceRegistrationStateResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.RegStateResult voiceRegResponse);
+ oneway void isNrDualConnectivityEnabledResponse(in android.hardware.radio.RadioResponseInfo info, in boolean isEnabled);
+ oneway void pullLceDataResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.network.LceDataInfo lceInfo);
+ oneway void setAllowedNetworkTypesBitmapResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setBandModeResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setBarringPasswordResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setCdmaRoamingPreferenceResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setCellInfoListRateResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setIndicationFilterResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setLinkCapacityReportingCriteriaResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setLocationUpdatesResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setNetworkSelectionModeAutomaticResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setNetworkSelectionModeManualResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setNrDualConnectivityStateResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setSignalStrengthReportingCriteriaResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setSuppServiceNotificationsResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setSystemSelectionChannelsResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void startNetworkScanResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void stopNetworkScanResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void supplyNetworkDepersonalizationResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IndicationFilter.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IndicationFilter.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IndicationFilter.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IndicationFilter.aidl
index 629af68..f79ff2a 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IndicationFilter.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/IndicationFilter.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum IndicationFilter {
NONE = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LceDataInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LceDataInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LceDataInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LceDataInfo.aidl
index 64c6367..1876465 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LceDataInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LceDataInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable LceDataInfo {
int lastHopCapacityKbps;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LinkCapacityEstimate.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LinkCapacityEstimate.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LinkCapacityEstimate.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LinkCapacityEstimate.aidl
index d2a5c83..c34f177 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LinkCapacityEstimate.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LinkCapacityEstimate.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable LinkCapacityEstimate {
int downlinkCapacityKbps;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LteSignalStrength.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LteSignalStrength.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LteSignalStrength.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LteSignalStrength.aidl
index 28840bc..c7b41f1 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LteSignalStrength.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LteSignalStrength.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable LteSignalStrength {
int signalStrength;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LteVopsInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LteVopsInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LteVopsInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LteVopsInfo.aidl
index b28c415..9f20b10 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LteVopsInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/LteVopsInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable LteVopsInfo {
boolean isVopsSupported;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NeighboringCell.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NeighboringCell.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NeighboringCell.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NeighboringCell.aidl
index 89d7818..4f29c0b 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NeighboringCell.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NeighboringCell.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable NeighboringCell {
String cid;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NetworkScanRequest.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NetworkScanRequest.aidl
similarity index 95%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NetworkScanRequest.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NetworkScanRequest.aidl
index 992ac48..948a1f6 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NetworkScanRequest.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NetworkScanRequest.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable NetworkScanRequest {
int type;
int interval;
- android.hardware.radio.RadioAccessSpecifier[] specifiers;
+ android.hardware.radio.network.RadioAccessSpecifier[] specifiers;
int maxSearchTime;
boolean incrementalResults;
int incrementalResultsPeriodicity;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NetworkScanResult.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NetworkScanResult.aidl
similarity index 94%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NetworkScanResult.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NetworkScanResult.aidl
index 670c173..3dc3940 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NetworkScanResult.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NetworkScanResult.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable NetworkScanResult {
int status;
android.hardware.radio.RadioError error;
- android.hardware.radio.CellInfo[] networkInfos;
+ android.hardware.radio.network.CellInfo[] networkInfos;
const int SCAN_STATUS_PARTIAL = 1;
const int SCAN_STATUS_COMPLETE = 2;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NgranBands.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NgranBands.aidl
similarity index 98%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NgranBands.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NgranBands.aidl
index 14db49b..aa60cde 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NgranBands.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NgranBands.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum NgranBands {
BAND_1 = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrDualConnectivityState.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrDualConnectivityState.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrDualConnectivityState.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrDualConnectivityState.aidl
index c3fb9f2..6ee526f 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrDualConnectivityState.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrDualConnectivityState.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="byte") @VintfStability
enum NrDualConnectivityState {
ENABLE = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrIndicators.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrIndicators.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrIndicators.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrIndicators.aidl
index 81dc51c..54f9b8f 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrIndicators.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrIndicators.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable NrIndicators {
boolean isEndcAvailable;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrSignalStrength.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrSignalStrength.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrSignalStrength.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrSignalStrength.aidl
index daf6a41..14b60a6 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrSignalStrength.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrSignalStrength.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable NrSignalStrength {
int ssRsrp;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrVopsInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrVopsInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrVopsInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrVopsInfo.aidl
index 52abce6..7f58ee1 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/NrVopsInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/NrVopsInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable NrVopsInfo {
byte vopsSupported;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/OperatorInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/OperatorInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/OperatorInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/OperatorInfo.aidl
index bb90f12..c3658d9 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/OperatorInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/OperatorInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable OperatorInfo {
String alphaLong;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhoneRestrictedState.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/PhoneRestrictedState.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhoneRestrictedState.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/PhoneRestrictedState.aidl
index 7a4982f..dff8be0 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhoneRestrictedState.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/PhoneRestrictedState.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum PhoneRestrictedState {
NONE = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhysicalChannelConfig.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/PhysicalChannelConfig.aidl
similarity index 91%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhysicalChannelConfig.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/PhysicalChannelConfig.aidl
index 91c4a96..8db6bc4 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhysicalChannelConfig.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/PhysicalChannelConfig.aidl
@@ -31,10 +31,10 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable PhysicalChannelConfig {
- android.hardware.radio.CellConnectionStatus status;
+ android.hardware.radio.network.CellConnectionStatus status;
android.hardware.radio.RadioTechnology rat;
int downlinkChannelNumber;
int uplinkChannelNumber;
@@ -42,5 +42,5 @@
int cellBandwidthUplinkKhz;
int[] contextIds;
int physicalCellId;
- android.hardware.radio.PhysicalChannelConfigBand band;
+ android.hardware.radio.network.PhysicalChannelConfigBand band;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhysicalChannelConfigBand.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/PhysicalChannelConfigBand.aidl
similarity index 86%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhysicalChannelConfigBand.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/PhysicalChannelConfigBand.aidl
index 1953083..50af816 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhysicalChannelConfigBand.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/PhysicalChannelConfigBand.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
union PhysicalChannelConfigBand {
boolean noinit;
- android.hardware.radio.GeranBands geranBand;
- android.hardware.radio.UtranBands utranBand;
- android.hardware.radio.EutranBands eutranBand;
- android.hardware.radio.NgranBands ngranBand;
+ android.hardware.radio.network.GeranBands geranBand;
+ android.hardware.radio.network.UtranBands utranBand;
+ android.hardware.radio.network.EutranBands eutranBand;
+ android.hardware.radio.network.NgranBands ngranBand;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioAccessSpecifier.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RadioAccessSpecifier.aidl
similarity index 91%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioAccessSpecifier.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RadioAccessSpecifier.aidl
index b47ee2d..b412f63 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioAccessSpecifier.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RadioAccessSpecifier.aidl
@@ -31,10 +31,10 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable RadioAccessSpecifier {
- android.hardware.radio.RadioAccessNetworks radioAccessNetwork;
- android.hardware.radio.RadioAccessSpecifierBands bands;
+ android.hardware.radio.AccessNetwork accessNetwork;
+ android.hardware.radio.network.RadioAccessSpecifierBands bands;
int[] channels;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioAccessSpecifierBands.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RadioAccessSpecifierBands.aidl
similarity index 86%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioAccessSpecifierBands.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RadioAccessSpecifierBands.aidl
index 9d0a997..d44a883 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioAccessSpecifierBands.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RadioAccessSpecifierBands.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
union RadioAccessSpecifierBands {
boolean noinit;
- android.hardware.radio.GeranBands[] geranBands;
- android.hardware.radio.UtranBands[] utranBands;
- android.hardware.radio.EutranBands[] eutranBands;
- android.hardware.radio.NgranBands[] ngranBands;
+ android.hardware.radio.network.GeranBands[] geranBands;
+ android.hardware.radio.network.UtranBands[] utranBands;
+ android.hardware.radio.network.EutranBands[] eutranBands;
+ android.hardware.radio.network.NgranBands[] ngranBands;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioBandMode.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RadioBandMode.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioBandMode.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RadioBandMode.aidl
index 973ca52..7266fd5 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioBandMode.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RadioBandMode.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum RadioBandMode {
BAND_MODE_UNSPECIFIED = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RegState.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RegState.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RegState.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RegState.aidl
index 049ded1..d10f413 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RegState.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RegState.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum RegState {
NOT_REG_MT_NOT_SEARCHING_OP = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RegStateResult.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RegStateResult.aidl
similarity index 84%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RegStateResult.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RegStateResult.aidl
index e5b5aa5..eff2216 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RegStateResult.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RegStateResult.aidl
@@ -31,13 +31,13 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable RegStateResult {
- android.hardware.radio.RegState regState;
+ android.hardware.radio.network.RegState regState;
android.hardware.radio.RadioTechnology rat;
- android.hardware.radio.RegistrationFailCause reasonForDenial;
- android.hardware.radio.CellIdentity cellIdentity;
+ android.hardware.radio.network.RegistrationFailCause reasonForDenial;
+ android.hardware.radio.network.CellIdentity cellIdentity;
String registeredPlmn;
- android.hardware.radio.AccessTechnologySpecificInfo accessTechnologySpecificInfo;
+ android.hardware.radio.network.AccessTechnologySpecificInfo accessTechnologySpecificInfo;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RegistrationFailCause.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RegistrationFailCause.aidl
similarity index 98%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RegistrationFailCause.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RegistrationFailCause.aidl
index c5529b6..75fcdf4 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RegistrationFailCause.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/RegistrationFailCause.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum RegistrationFailCause {
NONE = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SignalStrength.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SignalStrength.aidl
similarity index 79%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SignalStrength.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SignalStrength.aidl
index 7c7eade..7187116 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SignalStrength.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SignalStrength.aidl
@@ -31,14 +31,14 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable SignalStrength {
- android.hardware.radio.GsmSignalStrength gsm;
- android.hardware.radio.CdmaSignalStrength cdma;
- android.hardware.radio.EvdoSignalStrength evdo;
- android.hardware.radio.LteSignalStrength lte;
- android.hardware.radio.TdscdmaSignalStrength tdscdma;
- android.hardware.radio.WcdmaSignalStrength wcdma;
- android.hardware.radio.NrSignalStrength nr;
+ android.hardware.radio.network.GsmSignalStrength gsm;
+ android.hardware.radio.network.CdmaSignalStrength cdma;
+ android.hardware.radio.network.EvdoSignalStrength evdo;
+ android.hardware.radio.network.LteSignalStrength lte;
+ android.hardware.radio.network.TdscdmaSignalStrength tdscdma;
+ android.hardware.radio.network.WcdmaSignalStrength wcdma;
+ android.hardware.radio.network.NrSignalStrength nr;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SignalThresholdInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SignalThresholdInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SignalThresholdInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SignalThresholdInfo.aidl
index 381984e..3ea6c4e 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SignalThresholdInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SignalThresholdInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable SignalThresholdInfo {
int signalMeasurement;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SuppSvcNotification.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SuppSvcNotification.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SuppSvcNotification.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SuppSvcNotification.aidl
index c098e24..541754e 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SuppSvcNotification.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/SuppSvcNotification.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable SuppSvcNotification {
boolean isMT;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/TdscdmaSignalStrength.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/TdscdmaSignalStrength.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/TdscdmaSignalStrength.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/TdscdmaSignalStrength.aidl
index a2ba211..a00345f 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/TdscdmaSignalStrength.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/TdscdmaSignalStrength.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable TdscdmaSignalStrength {
int signalStrength;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UtranBands.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/UtranBands.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UtranBands.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/UtranBands.aidl
index 32cff72..87d5b85 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UtranBands.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/UtranBands.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@Backing(type="int") @VintfStability
enum UtranBands {
BAND_1 = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/WcdmaSignalStrength.aidl b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/WcdmaSignalStrength.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/WcdmaSignalStrength.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/WcdmaSignalStrength.aidl
index 764dded..678ace9 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/WcdmaSignalStrength.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.network/current/android/hardware/radio/network/WcdmaSignalStrength.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable WcdmaSignalStrength {
int signalStrength;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/AppStatus.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/AppStatus.aidl
similarity index 92%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/AppStatus.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/AppStatus.aidl
index ea2cd3a..89d8f9a 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/AppStatus.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/AppStatus.aidl
@@ -31,17 +31,17 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable AppStatus {
int appType;
int appState;
- android.hardware.radio.PersoSubstate persoSubstate;
+ android.hardware.radio.sim.PersoSubstate persoSubstate;
String aidPtr;
String appLabelPtr;
boolean pin1Replaced;
- android.hardware.radio.PinState pin1;
- android.hardware.radio.PinState pin2;
+ android.hardware.radio.sim.PinState pin1;
+ android.hardware.radio.sim.PinState pin2;
const int APP_STATE_UNKNOWN = 0;
const int APP_STATE_DETECTED = 1;
const int APP_STATE_PIN = 2;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CardPowerState.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CardPowerState.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CardPowerState.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CardPowerState.aidl
index 1a3b4c6..c0026ba 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CardPowerState.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CardPowerState.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@Backing(type="int") @VintfStability
enum CardPowerState {
POWER_DOWN = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CardStatus.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CardStatus.aidl
similarity index 92%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CardStatus.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CardStatus.aidl
index e7a666f..2d95b97 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CardStatus.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CardStatus.aidl
@@ -31,15 +31,15 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable CardStatus {
int cardState;
- android.hardware.radio.PinState universalPinState;
+ android.hardware.radio.sim.PinState universalPinState;
int gsmUmtsSubscriptionAppIndex;
int cdmaSubscriptionAppIndex;
int imsSubscriptionAppIndex;
- android.hardware.radio.AppStatus[] applications;
+ android.hardware.radio.sim.AppStatus[] applications;
int physicalSlotId;
String atr;
String iccid;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Carrier.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/Carrier.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Carrier.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/Carrier.aidl
index 46d5dca..c7fced1 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Carrier.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/Carrier.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable Carrier {
String mcc;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CarrierRestrictions.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CarrierRestrictions.aidl
similarity index 92%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CarrierRestrictions.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CarrierRestrictions.aidl
index f7c7a5a..ef9c779 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CarrierRestrictions.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CarrierRestrictions.aidl
@@ -31,11 +31,11 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable CarrierRestrictions {
- android.hardware.radio.Carrier[] allowedCarriers;
- android.hardware.radio.Carrier[] excludedCarriers;
+ android.hardware.radio.sim.Carrier[] allowedCarriers;
+ android.hardware.radio.sim.Carrier[] excludedCarriers;
boolean priority;
boolean allowedCarriersPrioritized;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSubscriptionSource.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CdmaSubscriptionSource.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSubscriptionSource.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CdmaSubscriptionSource.aidl
index 11e8a24..50e768c 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSubscriptionSource.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/CdmaSubscriptionSource.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@Backing(type="int") @VintfStability
enum CdmaSubscriptionSource {
RUIM_SIM = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IRadioSim.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IRadioSim.aidl
new file mode 100644
index 0000000..cc5a53e
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IRadioSim.aidl
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.sim;
+@VintfStability
+interface IRadioSim {
+ oneway void areUiccApplicationsEnabled(in int serial);
+ oneway void changeIccPin2ForApp(in int serial, in String oldPin2, in String newPin2, in String aid);
+ oneway void changeIccPinForApp(in int serial, in String oldPin, in String newPin, in String aid);
+ oneway void enableUiccApplications(in int serial, in boolean enable);
+ oneway void getAllowedCarriers(in int serial);
+ oneway void getCdmaSubscription(in int serial);
+ oneway void getCdmaSubscriptionSource(in int serial);
+ oneway void getFacilityLockForApp(in int serial, in String facility, in String password, in int serviceClass, in String appId);
+ oneway void getIccCardStatus(in int serial);
+ oneway void getImsiForApp(in int serial, in String aid);
+ oneway void getSimPhonebookCapacity(in int serial);
+ oneway void getSimPhonebookRecords(in int serial);
+ oneway void iccCloseLogicalChannel(in int serial, in int channelId);
+ oneway void iccIoForApp(in int serial, in android.hardware.radio.sim.IccIo iccIo);
+ oneway void iccOpenLogicalChannel(in int serial, in String aid, in int p2);
+ oneway void iccTransmitApduBasicChannel(in int serial, in android.hardware.radio.sim.SimApdu message);
+ oneway void iccTransmitApduLogicalChannel(in int serial, in android.hardware.radio.sim.SimApdu message);
+ oneway void reportStkServiceIsRunning(in int serial);
+ oneway void requestIccSimAuthentication(in int serial, in int authContext, in String authData, in String aid);
+ oneway void requestIsimAuthentication(in int serial, in String challenge);
+ oneway void responseAcknowledgement();
+ oneway void sendEnvelope(in int serial, in String command);
+ oneway void sendEnvelopeWithStatus(in int serial, in String contents);
+ oneway void sendTerminalResponseToSim(in int serial, in String commandResponse);
+ oneway void setAllowedCarriers(in int serial, in android.hardware.radio.sim.CarrierRestrictions carriers, in android.hardware.radio.sim.SimLockMultiSimPolicy multiSimPolicy);
+ oneway void setCarrierInfoForImsiEncryption(in int serial, in android.hardware.radio.sim.ImsiEncryptionInfo imsiEncryptionInfo);
+ oneway void setCdmaSubscriptionSource(in int serial, in android.hardware.radio.sim.CdmaSubscriptionSource cdmaSub);
+ oneway void setFacilityLockForApp(in int serial, in String facility, in boolean lockState, in String password, in int serviceClass, in String appId);
+ oneway void setResponseFunctions(in android.hardware.radio.sim.IRadioSimResponse radioSimResponse, in android.hardware.radio.sim.IRadioSimIndication radioSimIndication);
+ oneway void setSimCardPower(in int serial, in android.hardware.radio.sim.CardPowerState powerUp);
+ oneway void setUiccSubscription(in int serial, in android.hardware.radio.sim.SelectUiccSub uiccSub);
+ oneway void supplyIccPin2ForApp(in int serial, in String pin2, in String aid);
+ oneway void supplyIccPinForApp(in int serial, in String pin, in String aid);
+ oneway void supplyIccPuk2ForApp(in int serial, in String puk2, in String pin2, in String aid);
+ oneway void supplyIccPukForApp(in int serial, in String puk, in String pin, in String aid);
+ oneway void supplySimDepersonalization(in int serial, in android.hardware.radio.sim.PersoSubstate persoType, in String controlKey);
+ oneway void updateSimPhonebookRecords(in int serial, in android.hardware.radio.sim.PhonebookRecordInfo recordInfo);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IRadioSimIndication.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IRadioSimIndication.aidl
new file mode 100644
index 0000000..d4371b8
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IRadioSimIndication.aidl
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.sim;
+@VintfStability
+interface IRadioSimIndication {
+ oneway void carrierInfoForImsiEncryption(in android.hardware.radio.RadioIndicationType info);
+ oneway void cdmaSubscriptionSourceChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.sim.CdmaSubscriptionSource cdmaSource);
+ oneway void simPhonebookChanged(in android.hardware.radio.RadioIndicationType type);
+ oneway void simPhonebookRecordsReceived(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.sim.PbReceivedStatus status, in android.hardware.radio.sim.PhonebookRecordInfo[] records);
+ oneway void simRefresh(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.sim.SimRefreshResult refreshResult);
+ oneway void simStatusChanged(in android.hardware.radio.RadioIndicationType type);
+ oneway void stkEventNotify(in android.hardware.radio.RadioIndicationType type, in String cmd);
+ oneway void stkProactiveCommand(in android.hardware.radio.RadioIndicationType type, in String cmd);
+ oneway void stkSessionEnd(in android.hardware.radio.RadioIndicationType type);
+ oneway void subscriptionStatusChanged(in android.hardware.radio.RadioIndicationType type, in boolean activate);
+ oneway void uiccApplicationsEnablementChanged(in android.hardware.radio.RadioIndicationType type, in boolean enabled);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IRadioSimResponse.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IRadioSimResponse.aidl
new file mode 100644
index 0000000..e164257
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IRadioSimResponse.aidl
@@ -0,0 +1,73 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.sim;
+@VintfStability
+interface IRadioSimResponse {
+ oneway void acknowledgeRequest(in int serial);
+ oneway void areUiccApplicationsEnabledResponse(in android.hardware.radio.RadioResponseInfo info, in boolean enabled);
+ oneway void changeIccPin2ForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
+ oneway void changeIccPinForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
+ oneway void enableUiccApplicationsResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void getAllowedCarriersResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.CarrierRestrictions carriers, in android.hardware.radio.sim.SimLockMultiSimPolicy multiSimPolicy);
+ oneway void getCdmaSubscriptionResponse(in android.hardware.radio.RadioResponseInfo info, in String mdn, in String hSid, in String hNid, in String min, in String prl);
+ oneway void getCdmaSubscriptionSourceResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.CdmaSubscriptionSource source);
+ oneway void getFacilityLockForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int response);
+ oneway void getIccCardStatusResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.CardStatus cardStatus);
+ oneway void getImsiForAppResponse(in android.hardware.radio.RadioResponseInfo info, in String imsi);
+ oneway void getSimPhonebookCapacityResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.PhonebookCapacity capacity);
+ oneway void getSimPhonebookRecordsResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void iccCloseLogicalChannelResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void iccIoForAppResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.IccIoResult iccIo);
+ oneway void iccOpenLogicalChannelResponse(in android.hardware.radio.RadioResponseInfo info, in int channelId, in byte[] selectResponse);
+ oneway void iccTransmitApduBasicChannelResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.IccIoResult result);
+ oneway void iccTransmitApduLogicalChannelResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.IccIoResult result);
+ oneway void reportStkServiceIsRunningResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void requestIccSimAuthenticationResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.IccIoResult result);
+ oneway void requestIsimAuthenticationResponse(in android.hardware.radio.RadioResponseInfo info, in String response);
+ oneway void sendEnvelopeResponse(in android.hardware.radio.RadioResponseInfo info, in String commandResponse);
+ oneway void sendEnvelopeWithStatusResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.IccIoResult iccIo);
+ oneway void sendTerminalResponseToSimResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setAllowedCarriersResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setCarrierInfoForImsiEncryptionResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setCdmaSubscriptionSourceResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setFacilityLockForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int retry);
+ oneway void setSimCardPowerResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setUiccSubscriptionResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void supplyIccPin2ForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
+ oneway void supplyIccPinForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
+ oneway void supplyIccPuk2ForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
+ oneway void supplyIccPukForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
+ oneway void supplySimDepersonalizationResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.sim.PersoSubstate persoType, in int remainingRetries);
+ oneway void updateSimPhonebookRecordsResponse(in android.hardware.radio.RadioResponseInfo info, in int updatedRecordIndex);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IccIo.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IccIo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IccIo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IccIo.aidl
index 1bea23a..3e4dcf6 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IccIo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IccIo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable IccIo {
int command;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IccIoResult.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IccIoResult.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IccIoResult.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IccIoResult.aidl
index 50b1e9e..58e43eb 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IccIoResult.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/IccIoResult.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable IccIoResult {
int sw1;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ImsiEncryptionInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/ImsiEncryptionInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ImsiEncryptionInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/ImsiEncryptionInfo.aidl
index fb85eca..087f399 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ImsiEncryptionInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/ImsiEncryptionInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable ImsiEncryptionInfo {
String mcc;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PbReceivedStatus.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PbReceivedStatus.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PbReceivedStatus.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PbReceivedStatus.aidl
index dd95ad5..61babac 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PbReceivedStatus.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PbReceivedStatus.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@Backing(type="byte") @VintfStability
enum PbReceivedStatus {
PB_RECEIVED_OK = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PersoSubstate.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PersoSubstate.aidl
similarity index 98%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PersoSubstate.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PersoSubstate.aidl
index 35b75c6..a09d781 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PersoSubstate.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PersoSubstate.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@Backing(type="int") @VintfStability
enum PersoSubstate {
UNKNOWN = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhonebookCapacity.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PhonebookCapacity.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhonebookCapacity.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PhonebookCapacity.aidl
index 8d2623b..c1fa765 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhonebookCapacity.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PhonebookCapacity.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable PhonebookCapacity {
int maxAdnRecords;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhonebookRecordInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PhonebookRecordInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhonebookRecordInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PhonebookRecordInfo.aidl
index 02a166e..36bc920 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PhonebookRecordInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PhonebookRecordInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable PhonebookRecordInfo {
int recordId;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PinState.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PinState.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PinState.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PinState.aidl
index 3b65179..c78b92c 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PinState.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/PinState.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@Backing(type="int") @VintfStability
enum PinState {
UNKNOWN = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SelectUiccSub.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SelectUiccSub.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SelectUiccSub.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SelectUiccSub.aidl
index b7acc66..4842fbe 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SelectUiccSub.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SelectUiccSub.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable SelectUiccSub {
int slot;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SimApdu.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SimApdu.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SimApdu.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SimApdu.aidl
index 511031a..d8e1dde 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SimApdu.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SimApdu.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable SimApdu {
int sessionId;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SimLockMultiSimPolicy.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SimLockMultiSimPolicy.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SimLockMultiSimPolicy.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SimLockMultiSimPolicy.aidl
index ad96794..6fd89d5 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SimLockMultiSimPolicy.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SimLockMultiSimPolicy.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@Backing(type="int") @VintfStability
enum SimLockMultiSimPolicy {
NO_MULTISIM_POLICY = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SimRefreshResult.aidl b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SimRefreshResult.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SimRefreshResult.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SimRefreshResult.aidl
index ce870c5..dd3c1f2 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SimRefreshResult.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.sim/current/android/hardware/radio/sim/SimRefreshResult.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable SimRefreshResult {
int type;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/AudioQuality.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/AudioQuality.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/AudioQuality.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/AudioQuality.aidl
index a596969..89bd2dc 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/AudioQuality.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/AudioQuality.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@Backing(type="int") @VintfStability
enum AudioQuality {
UNSPECIFIED = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Call.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/Call.aidl
similarity index 93%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Call.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/Call.aidl
index b4a3cc7..7f44531 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Call.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/Call.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable Call {
int state;
@@ -46,8 +46,8 @@
int numberPresentation;
String name;
int namePresentation;
- android.hardware.radio.UusInfo[] uusInfo;
- android.hardware.radio.AudioQuality audioQuality;
+ android.hardware.radio.voice.UusInfo[] uusInfo;
+ android.hardware.radio.voice.AudioQuality audioQuality;
String forwardedNumber;
const int PRESENTATION_ALLOWED = 0;
const int PRESENTATION_RESTRICTED = 1;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CallForwardInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CallForwardInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CallForwardInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CallForwardInfo.aidl
index 0b79272..7ef9e46 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CallForwardInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CallForwardInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CallForwardInfo {
int status;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaCallWaiting.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaCallWaiting.aidl
similarity index 95%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaCallWaiting.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaCallWaiting.aidl
index b486691..9edf1e7 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaCallWaiting.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaCallWaiting.aidl
@@ -31,13 +31,13 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaCallWaiting {
String number;
int numberPresentation;
String name;
- android.hardware.radio.CdmaSignalInfoRecord signalInfoRecord;
+ android.hardware.radio.voice.CdmaSignalInfoRecord signalInfoRecord;
int numberType;
int numberPlan;
const int NUMBER_PLAN_UNKNOWN = 0;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaDisplayInfoRecord.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaDisplayInfoRecord.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaDisplayInfoRecord.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaDisplayInfoRecord.aidl
index 11f082f..579dd29 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaDisplayInfoRecord.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaDisplayInfoRecord.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaDisplayInfoRecord {
String alphaBuf;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaInformationRecord.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaInformationRecord.aidl
similarity index 81%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaInformationRecord.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaInformationRecord.aidl
index c2f2df2..6648358 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaInformationRecord.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaInformationRecord.aidl
@@ -31,17 +31,17 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaInformationRecord {
int name;
- android.hardware.radio.CdmaDisplayInfoRecord[] display;
- android.hardware.radio.CdmaNumberInfoRecord[] number;
- android.hardware.radio.CdmaSignalInfoRecord[] signal;
- android.hardware.radio.CdmaRedirectingNumberInfoRecord[] redir;
- android.hardware.radio.CdmaLineControlInfoRecord[] lineCtrl;
- android.hardware.radio.CdmaT53ClirInfoRecord[] clir;
- android.hardware.radio.CdmaT53AudioControlInfoRecord[] audioCtrl;
+ android.hardware.radio.voice.CdmaDisplayInfoRecord[] display;
+ android.hardware.radio.voice.CdmaNumberInfoRecord[] number;
+ android.hardware.radio.voice.CdmaSignalInfoRecord[] signal;
+ android.hardware.radio.voice.CdmaRedirectingNumberInfoRecord[] redir;
+ android.hardware.radio.voice.CdmaLineControlInfoRecord[] lineCtrl;
+ android.hardware.radio.voice.CdmaT53ClirInfoRecord[] clir;
+ android.hardware.radio.voice.CdmaT53AudioControlInfoRecord[] audioCtrl;
const int NAME_DISPLAY = 0;
const int NAME_CALLED_PARTY_NUMBER = 1;
const int NAME_CALLING_PARTY_NUMBER = 2;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaInformationRecords.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaInformationRecords.aidl
similarity index 94%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaInformationRecords.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaInformationRecords.aidl
index 88a4331..d7eecbb 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaInformationRecords.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaInformationRecords.aidl
@@ -31,8 +31,8 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaInformationRecords {
- android.hardware.radio.CdmaInformationRecord[] infoRec;
+ android.hardware.radio.voice.CdmaInformationRecord[] infoRec;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaLineControlInfoRecord.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaLineControlInfoRecord.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaLineControlInfoRecord.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaLineControlInfoRecord.aidl
index 48180a7..d7f6cd4 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaLineControlInfoRecord.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaLineControlInfoRecord.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaLineControlInfoRecord {
byte lineCtrlPolarityIncluded;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaNumberInfoRecord.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaNumberInfoRecord.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaNumberInfoRecord.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaNumberInfoRecord.aidl
index 86376a7..f3fcb2f 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaNumberInfoRecord.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaNumberInfoRecord.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaNumberInfoRecord {
String number;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaOtaProvisionStatus.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaOtaProvisionStatus.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaOtaProvisionStatus.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaOtaProvisionStatus.aidl
index 7cd88ac..5ea4e50 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaOtaProvisionStatus.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaOtaProvisionStatus.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@Backing(type="int") @VintfStability
enum CdmaOtaProvisionStatus {
SPL_UNLOCKED = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaRedirectingNumberInfoRecord.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaRedirectingNumberInfoRecord.aidl
similarity index 94%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaRedirectingNumberInfoRecord.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaRedirectingNumberInfoRecord.aidl
index 9713f80..f0f2b04 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaRedirectingNumberInfoRecord.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaRedirectingNumberInfoRecord.aidl
@@ -31,10 +31,10 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaRedirectingNumberInfoRecord {
- android.hardware.radio.CdmaNumberInfoRecord redirectingNumber;
+ android.hardware.radio.voice.CdmaNumberInfoRecord redirectingNumber;
int redirectingReason;
const int REDIRECTING_REASON_UNKNOWN = 0;
const int REDIRECTING_REASON_CALL_FORWARDING_BUSY = 1;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSignalInfoRecord.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaSignalInfoRecord.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSignalInfoRecord.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaSignalInfoRecord.aidl
index efb396a..2ebb396 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaSignalInfoRecord.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaSignalInfoRecord.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaSignalInfoRecord {
boolean isPresent;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaT53AudioControlInfoRecord.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaT53AudioControlInfoRecord.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaT53AudioControlInfoRecord.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaT53AudioControlInfoRecord.aidl
index 9285eb7..33e2c2b 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaT53AudioControlInfoRecord.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaT53AudioControlInfoRecord.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaT53AudioControlInfoRecord {
byte upLink;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaT53ClirInfoRecord.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaT53ClirInfoRecord.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaT53ClirInfoRecord.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaT53ClirInfoRecord.aidl
index ff4d3c3..457fd18 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CdmaT53ClirInfoRecord.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CdmaT53ClirInfoRecord.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CdmaT53ClirInfoRecord {
byte cause;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CfData.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CfData.aidl
similarity index 94%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CfData.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CfData.aidl
index 6a2b026..d48102b 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CfData.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/CfData.aidl
@@ -31,8 +31,8 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable CfData {
- android.hardware.radio.CallForwardInfo[] cfInfo;
+ android.hardware.radio.voice.CallForwardInfo[] cfInfo;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ClipStatus.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/ClipStatus.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ClipStatus.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/ClipStatus.aidl
index 36a1510..dafc2b9 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/ClipStatus.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/ClipStatus.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@Backing(type="int") @VintfStability
enum ClipStatus {
CLIP_PROVISIONED = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Dial.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/Dial.aidl
similarity index 95%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Dial.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/Dial.aidl
index cc9fc78..c9a02a9 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/Dial.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/Dial.aidl
@@ -31,12 +31,12 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable Dial {
String address;
int clir;
- android.hardware.radio.UusInfo[] uusInfo;
+ android.hardware.radio.voice.UusInfo[] uusInfo;
const int CLIR_DEFAULT = 0;
const int CLIR_INVOCATION = 1;
const int CLIR_SUPPRESSION = 2;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EmergencyCallRouting.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/EmergencyCallRouting.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EmergencyCallRouting.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/EmergencyCallRouting.aidl
index 95f5a46..b31a661 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EmergencyCallRouting.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/EmergencyCallRouting.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@Backing(type="int") @VintfStability
enum EmergencyCallRouting {
UNKNOWN = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EmergencyNumber.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/EmergencyNumber.aidl
similarity index 94%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EmergencyNumber.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/EmergencyNumber.aidl
index 1de6246..4f415ee 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EmergencyNumber.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/EmergencyNumber.aidl
@@ -31,13 +31,13 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable EmergencyNumber {
String number;
String mcc;
String mnc;
- android.hardware.radio.EmergencyServiceCategory categories;
+ android.hardware.radio.voice.EmergencyServiceCategory categories;
String[] urns;
int sources;
const int SOURCE_NETWORK_SIGNALING = 1;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EmergencyServiceCategory.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/EmergencyServiceCategory.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EmergencyServiceCategory.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/EmergencyServiceCategory.aidl
index 0341572..34d3c40 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/EmergencyServiceCategory.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/EmergencyServiceCategory.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@Backing(type="int") @VintfStability
enum EmergencyServiceCategory {
UNSPECIFIED = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/IRadioVoice.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/IRadioVoice.aidl
new file mode 100644
index 0000000..4cac560
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/IRadioVoice.aidl
@@ -0,0 +1,72 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.voice;
+@VintfStability
+interface IRadioVoice {
+ oneway void acceptCall(in int serial);
+ oneway void conference(in int serial);
+ oneway void dial(in int serial, in android.hardware.radio.voice.Dial dialInfo);
+ oneway void emergencyDial(in int serial, in android.hardware.radio.voice.Dial dialInfo, in android.hardware.radio.voice.EmergencyServiceCategory categories, in String[] urns, in android.hardware.radio.voice.EmergencyCallRouting routing, in boolean hasKnownUserIntentEmergency, in boolean isTesting);
+ oneway void exitEmergencyCallbackMode(in int serial);
+ oneway void explicitCallTransfer(in int serial);
+ oneway void getCallForwardStatus(in int serial, in android.hardware.radio.voice.CallForwardInfo callInfo);
+ oneway void getCallWaiting(in int serial, in int serviceClass);
+ oneway void getClip(in int serial);
+ oneway void getClir(in int serial);
+ oneway void getCurrentCalls(in int serial);
+ oneway void getLastCallFailCause(in int serial);
+ oneway void getMute(in int serial);
+ oneway void getPreferredVoicePrivacy(in int serial);
+ oneway void getTtyMode(in int serial);
+ oneway void handleStkCallSetupRequestFromSim(in int serial, in boolean accept);
+ oneway void hangup(in int serial, in int gsmIndex);
+ oneway void hangupForegroundResumeBackground(in int serial);
+ oneway void hangupWaitingOrBackground(in int serial);
+ oneway void rejectCall(in int serial);
+ oneway void responseAcknowledgement();
+ oneway void sendBurstDtmf(in int serial, in String dtmf, in int on, in int off);
+ oneway void sendCdmaFeatureCode(in int serial, in String featureCode);
+ oneway void sendDtmf(in int serial, in String s);
+ oneway void separateConnection(in int serial, in int gsmIndex);
+ oneway void setCallForward(in int serial, in android.hardware.radio.voice.CallForwardInfo callInfo);
+ oneway void setCallWaiting(in int serial, in boolean enable, in int serviceClass);
+ oneway void setClir(in int serial, in int status);
+ oneway void setMute(in int serial, in boolean enable);
+ oneway void setPreferredVoicePrivacy(in int serial, in boolean enable);
+ oneway void setResponseFunctions(in android.hardware.radio.voice.IRadioVoiceResponse radioVoiceResponse, in android.hardware.radio.voice.IRadioVoiceIndication radioVoiceIndication);
+ oneway void setTtyMode(in int serial, in android.hardware.radio.voice.TtyMode mode);
+ oneway void startDtmf(in int serial, in String s);
+ oneway void stopDtmf(in int serial);
+ oneway void switchWaitingOrHoldingAndActive(in int serial);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/IRadioVoiceIndication.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/IRadioVoiceIndication.aidl
new file mode 100644
index 0000000..4f87c12
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/IRadioVoiceIndication.aidl
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.voice;
+@VintfStability
+interface IRadioVoiceIndication {
+ oneway void callRing(in android.hardware.radio.RadioIndicationType type, in boolean isGsm, in android.hardware.radio.voice.CdmaSignalInfoRecord record);
+ oneway void callStateChanged(in android.hardware.radio.RadioIndicationType type);
+ oneway void cdmaCallWaiting(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.voice.CdmaCallWaiting callWaitingRecord);
+ oneway void cdmaInfoRec(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.voice.CdmaInformationRecords records);
+ oneway void cdmaOtaProvisionStatus(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.voice.CdmaOtaProvisionStatus status);
+ oneway void currentEmergencyNumberList(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.voice.EmergencyNumber[] emergencyNumberList);
+ oneway void enterEmergencyCallbackMode(in android.hardware.radio.RadioIndicationType type);
+ oneway void exitEmergencyCallbackMode(in android.hardware.radio.RadioIndicationType type);
+ oneway void indicateRingbackTone(in android.hardware.radio.RadioIndicationType type, in boolean start);
+ oneway void onSupplementaryServiceIndication(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.voice.StkCcUnsolSsResult ss);
+ oneway void resendIncallMute(in android.hardware.radio.RadioIndicationType type);
+ oneway void srvccStateNotify(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.voice.SrvccState state);
+ oneway void stkCallControlAlphaNotify(in android.hardware.radio.RadioIndicationType type, in String alpha);
+ oneway void stkCallSetup(in android.hardware.radio.RadioIndicationType type, in long timeout);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/IRadioVoiceResponse.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/IRadioVoiceResponse.aidl
new file mode 100644
index 0000000..9f490a8
--- /dev/null
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/IRadioVoiceResponse.aidl
@@ -0,0 +1,71 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+///////////////////////////////////////////////////////////////////////////////
+// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
+///////////////////////////////////////////////////////////////////////////////
+
+// This file is a snapshot of an AIDL file. Do not edit it manually. There are
+// two cases:
+// 1). this is a frozen version file - do not edit this in any case.
+// 2). this is a 'current' file. If you make a backwards compatible change to
+// the interface (from the latest frozen version), the build system will
+// prompt you to update this file with `m <name>-update-api`.
+//
+// You must not make a backward incompatible change to any AIDL file built
+// with the aidl_interface module type with versions property set. The module
+// type is used to build AIDL files in a way that they can be used across
+// independently updatable components of the system. If a device is shipped
+// with such a backward incompatible change, it has a high risk of breaking
+// later when a module using the interface is updated, e.g., Mainline modules.
+
+package android.hardware.radio.voice;
+@VintfStability
+interface IRadioVoiceResponse {
+ oneway void acceptCallResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void acknowledgeRequest(in int serial);
+ oneway void conferenceResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void dialResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void emergencyDialResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void exitEmergencyCallbackModeResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void explicitCallTransferResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void getCallForwardStatusResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.voice.CallForwardInfo[] callForwardInfos);
+ oneway void getCallWaitingResponse(in android.hardware.radio.RadioResponseInfo info, in boolean enable, in int serviceClass);
+ oneway void getClipResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.voice.ClipStatus status);
+ oneway void getClirResponse(in android.hardware.radio.RadioResponseInfo info, in int n, in int m);
+ oneway void getCurrentCallsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.voice.Call[] calls);
+ oneway void getLastCallFailCauseResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.voice.LastCallFailCauseInfo failCauseinfo);
+ oneway void getMuteResponse(in android.hardware.radio.RadioResponseInfo info, in boolean enable);
+ oneway void getPreferredVoicePrivacyResponse(in android.hardware.radio.RadioResponseInfo info, in boolean enable);
+ oneway void getTtyModeResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.voice.TtyMode mode);
+ oneway void handleStkCallSetupRequestFromSimResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void hangupConnectionResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void hangupForegroundResumeBackgroundResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void hangupWaitingOrBackgroundResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void rejectCallResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void sendBurstDtmfResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void sendCdmaFeatureCodeResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void sendDtmfResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void separateConnectionResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setCallForwardResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setCallWaitingResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setClirResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setMuteResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setPreferredVoicePrivacyResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void setTtyModeResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void startDtmfResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void stopDtmfResponse(in android.hardware.radio.RadioResponseInfo info);
+ oneway void switchWaitingOrHoldingAndActiveResponse(in android.hardware.radio.RadioResponseInfo info);
+}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LastCallFailCause.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/LastCallFailCause.aidl
similarity index 98%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LastCallFailCause.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/LastCallFailCause.aidl
index 024f7ea..3e17840 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LastCallFailCause.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/LastCallFailCause.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@Backing(type="int") @VintfStability
enum LastCallFailCause {
UNOBTAINABLE_NUMBER = 1,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LastCallFailCauseInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/LastCallFailCauseInfo.aidl
similarity index 94%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LastCallFailCauseInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/LastCallFailCauseInfo.aidl
index 43ef0cd..af75a40 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LastCallFailCauseInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/LastCallFailCauseInfo.aidl
@@ -31,9 +31,9 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable LastCallFailCauseInfo {
- android.hardware.radio.LastCallFailCause causeCode;
+ android.hardware.radio.voice.LastCallFailCause causeCode;
String vendorCause;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SrvccState.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/SrvccState.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SrvccState.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/SrvccState.aidl
index d4a9417..8e7e9fb 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SrvccState.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/SrvccState.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@Backing(type="int") @VintfStability
enum SrvccState {
HANDOVER_STARTED = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SsInfoData.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/SsInfoData.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SsInfoData.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/SsInfoData.aidl
index 10b4c3d..c5ba293 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/SsInfoData.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/SsInfoData.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable SsInfoData {
int[] ssInfo;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/StkCcUnsolSsResult.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/StkCcUnsolSsResult.aidl
similarity index 95%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/StkCcUnsolSsResult.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/StkCcUnsolSsResult.aidl
index 31c2494..71ef7a7 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/StkCcUnsolSsResult.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/StkCcUnsolSsResult.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable StkCcUnsolSsResult {
int serviceType;
@@ -39,8 +39,8 @@
int teleserviceType;
int serviceClass;
android.hardware.radio.RadioError result;
- android.hardware.radio.SsInfoData[] ssInfo;
- android.hardware.radio.CfData[] cfData;
+ android.hardware.radio.voice.SsInfoData[] ssInfo;
+ android.hardware.radio.voice.CfData[] cfData;
const int REQUEST_TYPE_ACTIVATION = 0;
const int REQUEST_TYPE_DEACTIVATION = 1;
const int REQUEST_TYPE_INTERROGATION = 2;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/TtyMode.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/TtyMode.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/TtyMode.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/TtyMode.aidl
index cee3057..bb0a9f1 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/TtyMode.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/TtyMode.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@Backing(type="int") @VintfStability
enum TtyMode {
OFF = 0,
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UusInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/UusInfo.aidl
similarity index 97%
rename from radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UusInfo.aidl
rename to radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/UusInfo.aidl
index 5b7190e..0198de9 100644
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/UusInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.voice/current/android/hardware/radio/voice/UusInfo.aidl
@@ -31,7 +31,7 @@
// with such a backward incompatible change, it has a high risk of breaking
// later when a module using the interface is updated, e.g., Mainline modules.
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable UusInfo {
int uusType;
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellConfigLte.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellConfigLte.aidl
deleted file mode 100644
index 184af1c..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellConfigLte.aidl
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-parcelable CellConfigLte {
- boolean isEndcAvailable;
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoCellInfoRatSpecificInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoCellInfoRatSpecificInfo.aidl
deleted file mode 100644
index 7084e5e..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoCellInfoRatSpecificInfo.aidl
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-union CellInfoCellInfoRatSpecificInfo {
- android.hardware.radio.CellInfoGsm gsm;
- android.hardware.radio.CellInfoWcdma wcdma;
- android.hardware.radio.CellInfoTdscdma tdscdma;
- android.hardware.radio.CellInfoLte lte;
- android.hardware.radio.CellInfoNr nr;
- android.hardware.radio.CellInfoCdma cdma;
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoInfo.aidl
deleted file mode 100644
index 9c22555..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoInfo.aidl
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-union CellInfoInfo {
- android.hardware.radio.CellInfoGsm gsm;
- android.hardware.radio.CellInfoCdma cdma;
- android.hardware.radio.CellInfoWcdma wcdma;
- android.hardware.radio.CellInfoTdscdma tdscdma;
- android.hardware.radio.CellInfoLte lte;
- android.hardware.radio.CellInfoNr nr;
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoType.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoType.aidl
deleted file mode 100644
index cb92ed9..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/CellInfoType.aidl
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@Backing(type="int") @VintfStability
-enum CellInfoType {
- NONE = 0,
- GSM = 1,
- CDMA = 2,
- LTE = 3,
- WCDMA = 4,
- TD_SCDMA = 5,
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataRegStateResult.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataRegStateResult.aidl
deleted file mode 100644
index 8eac451..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/DataRegStateResult.aidl
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-parcelable DataRegStateResult {
- android.hardware.radio.RegState regState;
- int rat;
- int reasonDataDenied;
- int maxDataCalls;
- android.hardware.radio.CellIdentity cellIdentity;
- @nullable android.hardware.radio.LteVopsInfo lteVopsInfo;
- android.hardware.radio.NrIndicators nrIndicators;
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IRadio.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IRadio.aidl
deleted file mode 100644
index 0bcbd55..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IRadio.aidl
+++ /dev/null
@@ -1,196 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-interface IRadio {
- oneway void acceptCall(in int serial);
- oneway void acknowledgeIncomingGsmSmsWithPdu(in int serial, in boolean success, in String ackPdu);
- oneway void acknowledgeLastIncomingCdmaSms(in int serial, in android.hardware.radio.CdmaSmsAck smsAck);
- oneway void acknowledgeLastIncomingGsmSms(in int serial, in boolean success, in android.hardware.radio.SmsAcknowledgeFailCause cause);
- oneway void allocatePduSessionId(in int serial);
- oneway void areUiccApplicationsEnabled(in int serial);
- oneway void cancelHandover(in int serial, in int callId);
- oneway void cancelPendingUssd(in int serial);
- oneway void changeIccPin2ForApp(in int serial, in String oldPin2, in String newPin2, in String aid);
- oneway void changeIccPinForApp(in int serial, in String oldPin, in String newPin, in String aid);
- oneway void conference(in int serial);
- oneway void deactivateDataCall(in int serial, in int cid, in android.hardware.radio.DataRequestReason reason);
- oneway void deleteSmsOnRuim(in int serial, in int index);
- oneway void deleteSmsOnSim(in int serial, in int index);
- oneway void dial(in int serial, in android.hardware.radio.Dial dialInfo);
- oneway void emergencyDial(in int serial, in android.hardware.radio.Dial dialInfo, in android.hardware.radio.EmergencyServiceCategory categories, in String[] urns, in android.hardware.radio.EmergencyCallRouting routing, in boolean hasKnownUserIntentEmergency, in boolean isTesting);
- oneway void enableModem(in int serial, in boolean on);
- oneway void enableUiccApplications(in int serial, in boolean enable);
- oneway void exitEmergencyCallbackMode(in int serial);
- oneway void explicitCallTransfer(in int serial);
- oneway void getAllowedCarriers(in int serial);
- oneway void getAllowedNetworkTypesBitmap(in int serial);
- oneway void getAvailableBandModes(in int serial);
- oneway void getAvailableNetworks(in int serial);
- oneway void getBarringInfo(in int serial);
- oneway void getBasebandVersion(in int serial);
- oneway void getCDMASubscription(in int serial);
- oneway void getCallForwardStatus(in int serial, in android.hardware.radio.CallForwardInfo callInfo);
- oneway void getCallWaiting(in int serial, in int serviceClass);
- oneway void getCdmaBroadcastConfig(in int serial);
- oneway void getCdmaRoamingPreference(in int serial);
- oneway void getCdmaSubscriptionSource(in int serial);
- oneway void getCellInfoList(in int serial);
- oneway void getClip(in int serial);
- oneway void getClir(in int serial);
- oneway void getCurrentCalls(in int serial);
- oneway void getDataCallList(in int serial);
- oneway void getDataRegistrationState(in int serial);
- oneway void getDeviceIdentity(in int serial);
- oneway void getFacilityLockForApp(in int serial, in String facility, in String password, in int serviceClass, in String appId);
- oneway void getGsmBroadcastConfig(in int serial);
- oneway void getHardwareConfig(in int serial);
- oneway void getIccCardStatus(in int serial);
- oneway void getImsRegistrationState(in int serial);
- oneway void getImsiForApp(in int serial, in String aid);
- oneway void getLastCallFailCause(in int serial);
- oneway void getModemActivityInfo(in int serial);
- oneway void getModemStackStatus(in int serial);
- oneway void getMute(in int serial);
- oneway void getNeighboringCids(in int serial);
- oneway void getNetworkSelectionMode(in int serial);
- oneway void getOperator(in int serial);
- oneway void getPreferredNetworkType(in int serial);
- oneway void getPreferredNetworkTypeBitmap(in int serial);
- oneway void getPreferredVoicePrivacy(in int serial);
- oneway void getRadioCapability(in int serial);
- oneway void getSignalStrength(in int serial);
- oneway void getSimPhonebookCapacity(in int serial);
- oneway void getSimPhonebookRecords(in int serial);
- oneway void getSlicingConfig(in int serial);
- oneway void getSmscAddress(in int serial);
- oneway void getSystemSelectionChannels(in int serial);
- oneway void getTTYMode(in int serial);
- oneway void getVoiceRadioTechnology(in int serial);
- oneway void getVoiceRegistrationState(in int serial);
- oneway void handleStkCallSetupRequestFromSim(in int serial, in boolean accept);
- oneway void hangup(in int serial, in int gsmIndex);
- oneway void hangupForegroundResumeBackground(in int serial);
- oneway void hangupWaitingOrBackground(in int serial);
- oneway void iccCloseLogicalChannel(in int serial, in int channelId);
- oneway void iccIOForApp(in int serial, in android.hardware.radio.IccIo iccIo);
- oneway void iccOpenLogicalChannel(in int serial, in String aid, in int p2);
- oneway void iccTransmitApduBasicChannel(in int serial, in android.hardware.radio.SimApdu message);
- oneway void iccTransmitApduLogicalChannel(in int serial, in android.hardware.radio.SimApdu message);
- oneway void isNrDualConnectivityEnabled(in int serial);
- oneway void nvReadItem(in int serial, in android.hardware.radio.NvItem itemId);
- oneway void nvResetConfig(in int serial, in android.hardware.radio.ResetNvType resetType);
- oneway void nvWriteCdmaPrl(in int serial, in byte[] prl);
- oneway void nvWriteItem(in int serial, in android.hardware.radio.NvWriteItem item);
- oneway void rejectCall(in int serial);
- oneway void releasePduSessionId(in int serial, in int id);
- oneway void reportSmsMemoryStatus(in int serial, in boolean available);
- oneway void reportStkServiceIsRunning(in int serial);
- oneway void requestIccSimAuthentication(in int serial, in int authContext, in String authData, in String aid);
- oneway void requestIsimAuthentication(in int serial, in String challenge);
- oneway void requestShutdown(in int serial);
- oneway void responseAcknowledgement();
- oneway void sendBurstDtmf(in int serial, in String dtmf, in int on, in int off);
- oneway void sendCDMAFeatureCode(in int serial, in String featureCode);
- oneway void sendCdmaSms(in int serial, in android.hardware.radio.CdmaSmsMessage sms);
- oneway void sendCdmaSmsExpectMore(in int serial, in android.hardware.radio.CdmaSmsMessage sms);
- oneway void sendDeviceState(in int serial, in android.hardware.radio.DeviceStateType deviceStateType, in boolean state);
- oneway void sendDtmf(in int serial, in String s);
- oneway void sendEnvelope(in int serial, in String command);
- oneway void sendEnvelopeWithStatus(in int serial, in String contents);
- oneway void sendImsSms(in int serial, in android.hardware.radio.ImsSmsMessage message);
- oneway void sendSms(in int serial, in android.hardware.radio.GsmSmsMessage message);
- oneway void sendSmsExpectMore(in int serial, in android.hardware.radio.GsmSmsMessage message);
- oneway void sendTerminalResponseToSim(in int serial, in String commandResponse);
- oneway void sendUssd(in int serial, in String ussd);
- oneway void separateConnection(in int serial, in int gsmIndex);
- oneway void setAllowedCarriers(in int serial, in android.hardware.radio.CarrierRestrictions carriers, in android.hardware.radio.SimLockMultiSimPolicy multiSimPolicy);
- oneway void setAllowedNetworkTypesBitmap(in int serial, in android.hardware.radio.RadioAccessFamily networkTypeBitmap);
- oneway void setBandMode(in int serial, in android.hardware.radio.RadioBandMode mode);
- oneway void setBarringPassword(in int serial, in String facility, in String oldPassword, in String newPassword);
- oneway void setCallForward(in int serial, in android.hardware.radio.CallForwardInfo callInfo);
- oneway void setCallWaiting(in int serial, in boolean enable, in int serviceClass);
- oneway void setCarrierInfoForImsiEncryption(in int serial, in android.hardware.radio.ImsiEncryptionInfo imsiEncryptionInfo);
- oneway void setCdmaBroadcastActivation(in int serial, in boolean activate);
- oneway void setCdmaBroadcastConfig(in int serial, in android.hardware.radio.CdmaBroadcastSmsConfigInfo[] configInfo);
- oneway void setCdmaRoamingPreference(in int serial, in android.hardware.radio.CdmaRoamingType type);
- oneway void setCdmaSubscriptionSource(in int serial, in android.hardware.radio.CdmaSubscriptionSource cdmaSub);
- oneway void setCellInfoListRate(in int serial, in int rate);
- oneway void setClir(in int serial, in int status);
- oneway void setDataAllowed(in int serial, in boolean allow);
- oneway void setDataProfile(in int serial, in android.hardware.radio.DataProfileInfo[] profiles);
- oneway void setDataThrottling(in int serial, in android.hardware.radio.DataThrottlingAction dataThrottlingAction, in long completionDurationMillis);
- oneway void setFacilityLockForApp(in int serial, in String facility, in boolean lockState, in String password, in int serviceClass, in String appId);
- oneway void setGsmBroadcastActivation(in int serial, in boolean activate);
- oneway void setGsmBroadcastConfig(in int serial, in android.hardware.radio.GsmBroadcastSmsConfigInfo[] configInfo);
- oneway void setIndicationFilter(in int serial, in android.hardware.radio.IndicationFilter indicationFilter);
- oneway void setInitialAttachApn(in int serial, in android.hardware.radio.DataProfileInfo dataProfileInfo);
- oneway void setLinkCapacityReportingCriteria(in int serial, in int hysteresisMs, in int hysteresisDlKbps, in int hysteresisUlKbps, in int[] thresholdsDownlinkKbps, in int[] thresholdsUplinkKbps, in android.hardware.radio.AccessNetwork accessNetwork);
- oneway void setLocationUpdates(in int serial, in boolean enable);
- oneway void setMute(in int serial, in boolean enable);
- oneway void setNetworkSelectionModeAutomatic(in int serial);
- oneway void setNetworkSelectionModeManual(in int serial, in String operatorNumeric, in android.hardware.radio.RadioAccessNetworks ran);
- oneway void setNrDualConnectivityState(in int serial, in android.hardware.radio.NrDualConnectivityState nrDualConnectivityState);
- oneway void setPreferredNetworkType(in int serial, in android.hardware.radio.PreferredNetworkType nwType);
- oneway void setPreferredNetworkTypeBitmap(in int serial, in android.hardware.radio.RadioAccessFamily networkTypeBitmap);
- oneway void setPreferredVoicePrivacy(in int serial, in boolean enable);
- oneway void setRadioCapability(in int serial, in android.hardware.radio.RadioCapability rc);
- oneway void setRadioPower(in int serial, in boolean powerOn, in boolean forEmergencyCall, in boolean preferredForEmergencyCall);
- oneway void setResponseFunctions(in android.hardware.radio.IRadioResponse radioResponse, in android.hardware.radio.IRadioIndication radioIndication);
- oneway void setSignalStrengthReportingCriteria(in int serial, in android.hardware.radio.SignalThresholdInfo signalThresholdInfo, in android.hardware.radio.AccessNetwork accessNetwork);
- oneway void setSimCardPower(in int serial, in android.hardware.radio.CardPowerState powerUp);
- oneway void setSmscAddress(in int serial, in String smsc);
- oneway void setSuppServiceNotifications(in int serial, in boolean enable);
- oneway void setSystemSelectionChannels(in int serial, in boolean specifyChannels, in android.hardware.radio.RadioAccessSpecifier[] specifiers);
- oneway void setTTYMode(in int serial, in android.hardware.radio.TtyMode mode);
- oneway void setUiccSubscription(in int serial, in android.hardware.radio.SelectUiccSub uiccSub);
- oneway void setupDataCall(in int serial, in android.hardware.radio.AccessNetwork accessNetwork, in android.hardware.radio.DataProfileInfo dataProfileInfo, in boolean roamingAllowed, in android.hardware.radio.DataRequestReason reason, in android.hardware.radio.LinkAddress[] addresses, in String[] dnses, in int pduSessionId, in @nullable android.hardware.radio.SliceInfo sliceInfo, in @nullable android.hardware.radio.TrafficDescriptor trafficDescriptor, in boolean matchAllRuleAllowed);
- oneway void startDtmf(in int serial, in String s);
- oneway void startHandover(in int serial, in int callId);
- oneway void startKeepalive(in int serial, in android.hardware.radio.KeepaliveRequest keepalive);
- oneway void startNetworkScan(in int serial, in android.hardware.radio.NetworkScanRequest request);
- oneway void stopDtmf(in int serial);
- oneway void stopKeepalive(in int serial, in int sessionHandle);
- oneway void stopNetworkScan(in int serial);
- oneway void supplyIccPin2ForApp(in int serial, in String pin2, in String aid);
- oneway void supplyIccPinForApp(in int serial, in String pin, in String aid);
- oneway void supplyIccPuk2ForApp(in int serial, in String puk2, in String pin2, in String aid);
- oneway void supplyIccPukForApp(in int serial, in String puk, in String pin, in String aid);
- oneway void supplyNetworkDepersonalization(in int serial, in String netPin);
- oneway void supplySimDepersonalization(in int serial, in android.hardware.radio.PersoSubstate persoType, in String controlKey);
- oneway void switchWaitingOrHoldingAndActive(in int serial);
- oneway void updateSimPhonebookRecords(in int serial, in android.hardware.radio.PhonebookRecordInfo recordInfo);
- oneway void writeSmsToRuim(in int serial, in android.hardware.radio.CdmaSmsWriteArgs cdmaSms);
- oneway void writeSmsToSim(in int serial, in android.hardware.radio.SmsWriteArgs smsWriteArgs);
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IRadioIndication.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IRadioIndication.aidl
deleted file mode 100644
index 48e9e3e..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IRadioIndication.aidl
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-interface IRadioIndication {
- oneway void barringInfoChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.CellIdentity cellIdentity, in android.hardware.radio.BarringInfo[] barringInfos);
- oneway void callRing(in android.hardware.radio.RadioIndicationType type, in boolean isGsm, in android.hardware.radio.CdmaSignalInfoRecord record);
- oneway void callStateChanged(in android.hardware.radio.RadioIndicationType type);
- oneway void carrierInfoForImsiEncryption(in android.hardware.radio.RadioIndicationType info);
- oneway void cdmaCallWaiting(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.CdmaCallWaiting callWaitingRecord);
- oneway void cdmaInfoRec(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.CdmaInformationRecords records);
- oneway void cdmaNewSms(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.CdmaSmsMessage msg);
- oneway void cdmaOtaProvisionStatus(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.CdmaOtaProvisionStatus status);
- oneway void cdmaPrlChanged(in android.hardware.radio.RadioIndicationType type, in int version);
- oneway void cdmaRuimSmsStorageFull(in android.hardware.radio.RadioIndicationType type);
- oneway void cdmaSubscriptionSourceChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.CdmaSubscriptionSource cdmaSource);
- oneway void cellInfoList(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.CellInfo[] records);
- oneway void currentEmergencyNumberList(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.EmergencyNumber[] emergencyNumberList);
- oneway void currentLinkCapacityEstimate(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.LinkCapacityEstimate lce);
- oneway void currentPhysicalChannelConfigs(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.PhysicalChannelConfig[] configs);
- oneway void currentSignalStrength(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.SignalStrength signalStrength);
- oneway void dataCallListChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.SetupDataCallResult[] dcList);
- oneway void enterEmergencyCallbackMode(in android.hardware.radio.RadioIndicationType type);
- oneway void exitEmergencyCallbackMode(in android.hardware.radio.RadioIndicationType type);
- oneway void hardwareConfigChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.HardwareConfig[] configs);
- oneway void imsNetworkStateChanged(in android.hardware.radio.RadioIndicationType type);
- oneway void indicateRingbackTone(in android.hardware.radio.RadioIndicationType type, in boolean start);
- oneway void keepaliveStatus(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.KeepaliveStatus status);
- oneway void lceData(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.LceDataInfo lce);
- oneway void modemReset(in android.hardware.radio.RadioIndicationType type, in String reason);
- oneway void networkScanResult(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.NetworkScanResult result);
- oneway void networkStateChanged(in android.hardware.radio.RadioIndicationType type);
- oneway void newBroadcastSms(in android.hardware.radio.RadioIndicationType type, in byte[] data);
- oneway void newSms(in android.hardware.radio.RadioIndicationType type, in byte[] pdu);
- oneway void newSmsOnSim(in android.hardware.radio.RadioIndicationType type, in int recordNumber);
- oneway void newSmsStatusReport(in android.hardware.radio.RadioIndicationType type, in byte[] pdu);
- oneway void nitzTimeReceived(in android.hardware.radio.RadioIndicationType type, in String nitzTime, in long receivedTime);
- oneway void onSupplementaryServiceIndication(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.StkCcUnsolSsResult ss);
- oneway void onUssd(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.UssdModeType modeType, in String msg);
- oneway void pcoData(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.PcoDataInfo pco);
- oneway void radioCapabilityIndication(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.RadioCapability rc);
- oneway void radioStateChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.RadioState radioState);
- oneway void registrationFailed(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.CellIdentity cellIdentity, in String chosenPlmn, in android.hardware.radio.Domain domain, in int causeCode, in int additionalCauseCode);
- oneway void resendIncallMute(in android.hardware.radio.RadioIndicationType type);
- oneway void restrictedStateChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.PhoneRestrictedState state);
- oneway void rilConnected(in android.hardware.radio.RadioIndicationType type);
- oneway void simPhonebookChanged(in android.hardware.radio.RadioIndicationType type);
- oneway void simPhonebookRecordsReceived(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.PbReceivedStatus status, in android.hardware.radio.PhonebookRecordInfo[] records);
- oneway void simRefresh(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.SimRefreshResult refreshResult);
- oneway void simSmsStorageFull(in android.hardware.radio.RadioIndicationType type);
- oneway void simStatusChanged(in android.hardware.radio.RadioIndicationType type);
- oneway void srvccStateNotify(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.SrvccState state);
- oneway void stkCallControlAlphaNotify(in android.hardware.radio.RadioIndicationType type, in String alpha);
- oneway void stkCallSetup(in android.hardware.radio.RadioIndicationType type, in long timeout);
- oneway void stkEventNotify(in android.hardware.radio.RadioIndicationType type, in String cmd);
- oneway void stkProactiveCommand(in android.hardware.radio.RadioIndicationType type, in String cmd);
- oneway void stkSessionEnd(in android.hardware.radio.RadioIndicationType type);
- oneway void subscriptionStatusChanged(in android.hardware.radio.RadioIndicationType type, in boolean activate);
- oneway void suppSvcNotify(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.SuppSvcNotification suppSvc);
- oneway void uiccApplicationsEnablementChanged(in android.hardware.radio.RadioIndicationType type, in boolean enabled);
- oneway void unthrottleApn(in android.hardware.radio.RadioIndicationType type, in String apn);
- oneway void voiceRadioTechChanged(in android.hardware.radio.RadioIndicationType type, in android.hardware.radio.RadioTechnology rat);
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IRadioResponse.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IRadioResponse.aidl
deleted file mode 100644
index 0d18cf8..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/IRadioResponse.aidl
+++ /dev/null
@@ -1,199 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-interface IRadioResponse {
- oneway void acceptCallResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void acknowledgeIncomingGsmSmsWithPduResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void acknowledgeLastIncomingCdmaSmsResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void acknowledgeLastIncomingGsmSmsResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void acknowledgeRequest(in int serial);
- oneway void allocatePduSessionIdResponse(in android.hardware.radio.RadioResponseInfo info, in int id);
- oneway void areUiccApplicationsEnabledResponse(in android.hardware.radio.RadioResponseInfo info, in boolean enabled);
- oneway void cancelHandoverResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void cancelPendingUssdResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void changeIccPin2ForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
- oneway void changeIccPinForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
- oneway void conferenceResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void deactivateDataCallResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void deleteSmsOnRuimResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void deleteSmsOnSimResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void dialResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void emergencyDialResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void enableModemResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void enableUiccApplicationsResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void exitEmergencyCallbackModeResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void explicitCallTransferResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void getAllowedCarriersResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.CarrierRestrictions carriers, in android.hardware.radio.SimLockMultiSimPolicy multiSimPolicy);
- oneway void getAllowedNetworkTypesBitmapResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RadioAccessFamily networkTypeBitmap);
- oneway void getAvailableBandModesResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RadioBandMode[] bandModes);
- oneway void getAvailableNetworksResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.OperatorInfo[] networkInfos);
- oneway void getBarringInfoResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.CellIdentity cellIdentity, in android.hardware.radio.BarringInfo[] barringInfos);
- oneway void getBasebandVersionResponse(in android.hardware.radio.RadioResponseInfo info, in String version);
- oneway void getCDMASubscriptionResponse(in android.hardware.radio.RadioResponseInfo info, in String mdn, in String hSid, in String hNid, in String min, in String prl);
- oneway void getCallForwardStatusResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.CallForwardInfo[] callForwardInfos);
- oneway void getCallWaitingResponse(in android.hardware.radio.RadioResponseInfo info, in boolean enable, in int serviceClass);
- oneway void getCdmaBroadcastConfigResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.CdmaBroadcastSmsConfigInfo[] configs);
- oneway void getCdmaRoamingPreferenceResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.CdmaRoamingType type);
- oneway void getCdmaSubscriptionSourceResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.CdmaSubscriptionSource source);
- oneway void getCellInfoListResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.CellInfo[] cellInfo);
- oneway void getClipResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.ClipStatus status);
- oneway void getClirResponse(in android.hardware.radio.RadioResponseInfo info, in int n, in int m);
- oneway void getCurrentCallsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.Call[] calls);
- oneway void getDataCallListResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SetupDataCallResult[] dcResponse);
- oneway void getDataRegistrationStateResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RegStateResult dataRegResponse);
- oneway void getDeviceIdentityResponse(in android.hardware.radio.RadioResponseInfo info, in String imei, in String imeisv, in String esn, in String meid);
- oneway void getFacilityLockForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int response);
- oneway void getGsmBroadcastConfigResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.GsmBroadcastSmsConfigInfo[] configs);
- oneway void getHardwareConfigResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.HardwareConfig[] config);
- oneway void getIMSIForAppResponse(in android.hardware.radio.RadioResponseInfo info, in String imsi);
- oneway void getIccCardStatusResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.CardStatus cardStatus);
- oneway void getImsRegistrationStateResponse(in android.hardware.radio.RadioResponseInfo info, in boolean isRegistered, in android.hardware.radio.RadioTechnologyFamily ratFamily);
- oneway void getLastCallFailCauseResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.LastCallFailCauseInfo failCauseinfo);
- oneway void getModemActivityInfoResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.ActivityStatsInfo activityInfo);
- oneway void getModemStackStatusResponse(in android.hardware.radio.RadioResponseInfo info, in boolean isEnabled);
- oneway void getMuteResponse(in android.hardware.radio.RadioResponseInfo info, in boolean enable);
- oneway void getNeighboringCidsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.NeighboringCell[] cells);
- oneway void getNetworkSelectionModeResponse(in android.hardware.radio.RadioResponseInfo info, in boolean manual);
- oneway void getOperatorResponse(in android.hardware.radio.RadioResponseInfo info, in String longName, in String shortName, in String numeric);
- oneway void getPreferredNetworkTypeBitmapResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RadioAccessFamily networkTypeBitmap);
- oneway void getPreferredNetworkTypeResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.PreferredNetworkType nwType);
- oneway void getPreferredVoicePrivacyResponse(in android.hardware.radio.RadioResponseInfo info, in boolean enable);
- oneway void getRadioCapabilityResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RadioCapability rc);
- oneway void getSignalStrengthResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SignalStrength signalStrength);
- oneway void getSimPhonebookCapacityResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.PhonebookCapacity capacity);
- oneway void getSimPhonebookRecordsResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void getSlicingConfigResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SlicingConfig slicingConfig);
- oneway void getSmscAddressResponse(in android.hardware.radio.RadioResponseInfo info, in String smsc);
- oneway void getSystemSelectionChannelsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RadioAccessSpecifier[] specifiers);
- oneway void getTTYModeResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.TtyMode mode);
- oneway void getVoiceRadioTechnologyResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RadioTechnology rat);
- oneway void getVoiceRegistrationStateResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RegStateResult voiceRegResponse);
- oneway void handleStkCallSetupRequestFromSimResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void hangupConnectionResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void hangupForegroundResumeBackgroundResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void hangupWaitingOrBackgroundResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void iccCloseLogicalChannelResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void iccIOForAppResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.IccIoResult iccIo);
- oneway void iccOpenLogicalChannelResponse(in android.hardware.radio.RadioResponseInfo info, in int channelId, in byte[] selectResponse);
- oneway void iccTransmitApduBasicChannelResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.IccIoResult result);
- oneway void iccTransmitApduLogicalChannelResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.IccIoResult result);
- oneway void isNrDualConnectivityEnabledResponse(in android.hardware.radio.RadioResponseInfo info, in boolean isEnabled);
- oneway void nvReadItemResponse(in android.hardware.radio.RadioResponseInfo info, in String result);
- oneway void nvResetConfigResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void nvWriteCdmaPrlResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void nvWriteItemResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void pullLceDataResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.LceDataInfo lceInfo);
- oneway void rejectCallResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void releasePduSessionIdResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void reportSmsMemoryStatusResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void reportStkServiceIsRunningResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void requestIccSimAuthenticationResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.IccIoResult result);
- oneway void requestIsimAuthenticationResponse(in android.hardware.radio.RadioResponseInfo info, in String response);
- oneway void requestShutdownResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void sendBurstDtmfResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void sendCDMAFeatureCodeResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void sendCdmaSmsExpectMoreResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SendSmsResult sms);
- oneway void sendCdmaSmsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SendSmsResult sms);
- oneway void sendDeviceStateResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void sendDtmfResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void sendEnvelopeResponse(in android.hardware.radio.RadioResponseInfo info, in String commandResponse);
- oneway void sendEnvelopeWithStatusResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.IccIoResult iccIo);
- oneway void sendImsSmsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SendSmsResult sms);
- oneway void sendSMSExpectMoreResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SendSmsResult sms);
- oneway void sendSmsExpectMoreResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SendSmsResult sms);
- oneway void sendSmsResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SendSmsResult sms);
- oneway void sendTerminalResponseToSimResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void sendUssdResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void separateConnectionResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setAllowedCarriersResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setAllowedNetworkTypesBitmapResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setBandModeResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setBarringPasswordResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setCallForwardResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setCallWaitingResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setCarrierInfoForImsiEncryptionResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setCdmaBroadcastActivationResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setCdmaBroadcastConfigResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setCdmaRoamingPreferenceResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setCdmaSubscriptionSourceResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setCellInfoListRateResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setClirResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setDataAllowedResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setDataProfileResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setDataThrottlingResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setFacilityLockForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int retry);
- oneway void setGsmBroadcastActivationResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setGsmBroadcastConfigResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setIndicationFilterResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setInitialAttachApnResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setLinkCapacityReportingCriteriaResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setLocationUpdatesResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setMuteResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setNetworkSelectionModeAutomaticResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setNetworkSelectionModeManualResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setNrDualConnectivityStateResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setPreferredNetworkTypeBitmapResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setPreferredNetworkTypeResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setPreferredVoicePrivacyResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setRadioCapabilityResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.RadioCapability rc);
- oneway void setRadioPowerResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setSignalStrengthReportingCriteriaResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setSimCardPowerResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setSmscAddressResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setSuppServiceNotificationsResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setSystemSelectionChannelsResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setTTYModeResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setUiccSubscriptionResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void setupDataCallResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.SetupDataCallResult dcResponse);
- oneway void startDtmfResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void startHandoverResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void startKeepaliveResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.KeepaliveStatus status);
- oneway void startLceServiceResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.LceStatusInfo statusInfo);
- oneway void startNetworkScanResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void stopDtmfResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void stopKeepaliveResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void stopLceServiceResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.LceStatusInfo statusInfo);
- oneway void stopNetworkScanResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void supplyIccPin2ForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
- oneway void supplyIccPinForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
- oneway void supplyIccPuk2ForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
- oneway void supplyIccPukForAppResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
- oneway void supplyNetworkDepersonalizationResponse(in android.hardware.radio.RadioResponseInfo info, in int remainingRetries);
- oneway void supplySimDepersonalizationResponse(in android.hardware.radio.RadioResponseInfo info, in android.hardware.radio.PersoSubstate persoType, in int remainingRetries);
- oneway void switchWaitingOrHoldingAndActiveResponse(in android.hardware.radio.RadioResponseInfo info);
- oneway void updateSimPhonebookRecordsResponse(in android.hardware.radio.RadioResponseInfo info, in int updatedRecordIndex);
- oneway void writeSmsToRuimResponse(in android.hardware.radio.RadioResponseInfo info, in int index);
- oneway void writeSmsToSimResponse(in android.hardware.radio.RadioResponseInfo info, in int index);
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LceStatusInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LceStatusInfo.aidl
deleted file mode 100644
index 74166c3..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/LceStatusInfo.aidl
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-parcelable LceStatusInfo {
- int lceStatus;
- byte actualIntervalMs;
- const int LCE_STATUS_NOT_SUPPORTED = 0;
- const int LCE_STATUS_STOPPED = 1;
- const int LCE_STATUS_ACTIVE = 2;
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PreferredNetworkType.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PreferredNetworkType.aidl
deleted file mode 100644
index 7615dff..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/PreferredNetworkType.aidl
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@Backing(type="int") @VintfStability
-enum PreferredNetworkType {
- GSM_WCDMA = 0,
- GSM_ONLY = 1,
- WCDMA = 2,
- GSM_WCDMA_AUTO = 3,
- CDMA_EVDO_AUTO = 4,
- CDMA_ONLY = 5,
- EVDO_ONLY = 6,
- GSM_WCDMA_CDMA_EVDO_AUTO = 7,
- LTE_CDMA_EVDO = 8,
- LTE_GSM_WCDMA = 9,
- LTE_CMDA_EVDO_GSM_WCDMA = 10,
- LTE_ONLY = 11,
- LTE_WCDMA = 12,
- TD_SCDMA_ONLY = 13,
- TD_SCDMA_WCDMA = 14,
- TD_SCDMA_LTE = 15,
- TD_SCDMA_GSM = 16,
- TD_SCDMA_GSM_LTE = 17,
- TD_SCDMA_GSM_WCDMA = 18,
- TD_SCDMA_WCDMA_LTE = 19,
- TD_SCDMA_GSM_WCDMA_LTE = 20,
- TD_SCDMA_GSM_WCDMA_CDMA_EVDO_AUTO = 21,
- TD_SCDMA_LTE_CDMA_EVDO_GSM_WCDMA = 22,
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioAccessNetworks.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioAccessNetworks.aidl
deleted file mode 100644
index 67f5e8a..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioAccessNetworks.aidl
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@Backing(type="int") @VintfStability
-enum RadioAccessNetworks {
- UNKNOWN = 0,
- GERAN = 1,
- UTRAN = 2,
- EUTRAN = 3,
- NGRAN = 4,
- CDMA2000 = 5,
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioFrequencyInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioFrequencyInfo.aidl
deleted file mode 100644
index cd0f6c2..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/RadioFrequencyInfo.aidl
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-union RadioFrequencyInfo {
- boolean noinit;
- int range;
- int channelNumber;
- const int FREQUENCY_RANGE_LOW = 1;
- const int FREQUENCY_RANGE_MID = 2;
- const int FREQUENCY_RANGE_HIGH = 3;
- const int FREQUENCY_RANGE_MMWAVE = 4;
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/VoiceRegStateResult.aidl b/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/VoiceRegStateResult.aidl
deleted file mode 100644
index a693ff5..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio/current/android/hardware/radio/VoiceRegStateResult.aidl
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio;
-@VintfStability
-parcelable VoiceRegStateResult {
- android.hardware.radio.RegState regState;
- int rat;
- boolean cssSupported;
- int roamingIndicator;
- int systemIsInPrl;
- int defaultRoamingIndicator;
- int reasonForDenial;
- android.hardware.radio.CellIdentity cellIdentity;
-}
diff --git a/radio/aidl/android/hardware/radio/CellConfigLte.aidl b/radio/aidl/android/hardware/radio/CellConfigLte.aidl
deleted file mode 100644
index 56a1a10..0000000
--- a/radio/aidl/android/hardware/radio/CellConfigLte.aidl
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-/**
- * Contains the configuration of the LTE cell tower.
- */
-@VintfStability
-parcelable CellConfigLte {
- /**
- * Indicates that if E-UTRA-NR Dual Connectivity (EN-DC) is supported by the LTE cell.
- * True if the plmn-InfoList-r15 is present in SIB2 and at least one bit in this list is true,
- * otherwise this value should be false.
- * Reference: 3GPP TS 36.331 v15.2.2 6.3.1 System information blocks.
- */
- boolean isEndcAvailable;
-}
diff --git a/radio/aidl/android/hardware/radio/CellInfoInfo.aidl b/radio/aidl/android/hardware/radio/CellInfoInfo.aidl
deleted file mode 100644
index 4d5e12d..0000000
--- a/radio/aidl/android/hardware/radio/CellInfoInfo.aidl
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-import android.hardware.radio.CellInfoCdma;
-import android.hardware.radio.CellInfoGsm;
-import android.hardware.radio.CellInfoLte;
-import android.hardware.radio.CellInfoNr;
-import android.hardware.radio.CellInfoTdscdma;
-import android.hardware.radio.CellInfoWcdma;
-
-@VintfStability
-union CellInfoInfo {
- CellInfoGsm gsm;
- CellInfoCdma cdma;
- CellInfoWcdma wcdma;
- CellInfoTdscdma tdscdma;
- CellInfoLte lte;
- CellInfoNr nr;
-}
diff --git a/radio/aidl/android/hardware/radio/CellInfoType.aidl b/radio/aidl/android/hardware/radio/CellInfoType.aidl
deleted file mode 100644
index 8e5e8c9..0000000
--- a/radio/aidl/android/hardware/radio/CellInfoType.aidl
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-@VintfStability
-@Backing(type="int")
-enum CellInfoType {
- NONE,
- GSM,
- CDMA,
- LTE,
- WCDMA,
- TD_SCDMA,
-}
diff --git a/radio/aidl/android/hardware/radio/DataRegStateResult.aidl b/radio/aidl/android/hardware/radio/DataRegStateResult.aidl
deleted file mode 100644
index dcc39c8..0000000
--- a/radio/aidl/android/hardware/radio/DataRegStateResult.aidl
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-import android.hardware.radio.CellIdentity;
-import android.hardware.radio.LteVopsInfo;
-import android.hardware.radio.NrIndicators;
-import android.hardware.radio.RegState;
-
-@VintfStability
-parcelable DataRegStateResult {
- /**
- * Valid reg states are NOT_REG_MT_NOT_SEARCHING_OP, REG_HOME, NOT_REG_MT_SEARCHING_OP,
- * REG_DENIED, UNKNOWN, REG_ROAMING defined in RegState
- */
- RegState regState;
- /**
- * Indicates the available data radio technology, valid values as defined by RadioTechnology.
- */
- int rat;
- /**
- * If registration state is 3 (Registration denied) this is an enumerated reason why
- * registration was denied. See 3GPP TS 24.008, Annex G.6 "Additional cause codes for GMM".
- * 7 == GPRS services not allowed
- * 8 == GPRS services and non-GPRS services not allowed
- * 9 == MS identity cannot be derived by the network
- * 10 == Implicitly detached
- * 14 == GPRS services not allowed in this PLMN
- * 16 == MSC temporarily not reachable
- * 40 == No PDP context activated
- */
- int reasonDataDenied;
- /**
- * The maximum number of simultaneous Data Calls must be established using setupDataCall().
- */
- int maxDataCalls;
- CellIdentity cellIdentity;
- /**
- * Network capabilities for voice over PS services. This info is valid only on LTE network and
- * must be present when device is camped on LTE. vopsInfo must be empty when device is camped
- * only on 2G/3G.
- */
- @nullable LteVopsInfo lteVopsInfo;
- /**
- * The parameters of NR 5G Non-Standalone. This value is only valid on E-UTRAN, otherwise
- * must be empty.
- */
- NrIndicators nrIndicators;
-}
diff --git a/radio/aidl/android/hardware/radio/IRadio.aidl b/radio/aidl/android/hardware/radio/IRadio.aidl
deleted file mode 100644
index ebf3c9b..0000000
--- a/radio/aidl/android/hardware/radio/IRadio.aidl
+++ /dev/null
@@ -1,2012 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-import android.hardware.radio.AccessNetwork;
-import android.hardware.radio.CallForwardInfo;
-import android.hardware.radio.CardPowerState;
-import android.hardware.radio.CarrierRestrictions;
-import android.hardware.radio.CdmaBroadcastSmsConfigInfo;
-import android.hardware.radio.CdmaRoamingType;
-import android.hardware.radio.CdmaSmsAck;
-import android.hardware.radio.CdmaSmsMessage;
-import android.hardware.radio.CdmaSmsWriteArgs;
-import android.hardware.radio.CdmaSubscriptionSource;
-import android.hardware.radio.DataProfileInfo;
-import android.hardware.radio.DataRequestReason;
-import android.hardware.radio.DataThrottlingAction;
-import android.hardware.radio.DeviceStateType;
-import android.hardware.radio.Dial;
-import android.hardware.radio.EmergencyCallRouting;
-import android.hardware.radio.EmergencyServiceCategory;
-import android.hardware.radio.GsmBroadcastSmsConfigInfo;
-import android.hardware.radio.GsmSmsMessage;
-import android.hardware.radio.IRadioIndication;
-import android.hardware.radio.IRadioResponse;
-import android.hardware.radio.IccIo;
-import android.hardware.radio.ImsSmsMessage;
-import android.hardware.radio.ImsiEncryptionInfo;
-import android.hardware.radio.IndicationFilter;
-import android.hardware.radio.KeepaliveRequest;
-import android.hardware.radio.LinkAddress;
-import android.hardware.radio.NetworkScanRequest;
-import android.hardware.radio.NrDualConnectivityState;
-import android.hardware.radio.NvItem;
-import android.hardware.radio.NvWriteItem;
-import android.hardware.radio.PersoSubstate;
-import android.hardware.radio.PhonebookRecordInfo;
-import android.hardware.radio.PreferredNetworkType;
-import android.hardware.radio.RadioAccessFamily;
-import android.hardware.radio.RadioAccessNetworks;
-import android.hardware.radio.RadioAccessSpecifier;
-import android.hardware.radio.RadioBandMode;
-import android.hardware.radio.RadioCapability;
-import android.hardware.radio.RadioTechnology;
-import android.hardware.radio.ResetNvType;
-import android.hardware.radio.SelectUiccSub;
-import android.hardware.radio.SignalThresholdInfo;
-import android.hardware.radio.SimApdu;
-import android.hardware.radio.SimLockMultiSimPolicy;
-import android.hardware.radio.SliceInfo;
-import android.hardware.radio.SmsAcknowledgeFailCause;
-import android.hardware.radio.SmsWriteArgs;
-import android.hardware.radio.TrafficDescriptor;
-import android.hardware.radio.TtyMode;
-
-/**
- * This interface is used by telephony and telecom to talk to cellular radio.
- * All the functions have minimum one parameter:
- * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the
- * duration of a method call. If clients provide colliding serials (including passing the same
- * serial to different methods), multiple responses (one for each method call) must still be served.
- * setResponseFunctions must work with IRadioResponse and IRadioIndication.
- */
-@VintfStability
-oneway interface IRadio {
- /**
- * Answer incoming call. Must not be called for WAITING calls.
- * switchWaitingOrHoldingAndActive() must be used in this case instead
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.acceptCallResponse()
- */
- void acceptCall(in int serial);
-
- /**
- * Acknowledge successful or failed receipt of SMS previously indicated via unsol
- * responseNewSms(), including acknowledgement TPDU to send as the RP-User-Data element of the
- * RP-ACK or RP-ERROR PDU.
- *
- * @param serial Serial number of request.
- * @param success true on successful receipt (send RP-ACK)
- * false on failed receipt (send RP-ERROR)
- * @param ackPdu acknowledgement TPDU in hexadecimal format
- *
- * Response callback is IRadioResponse.acknowledgeIncomingGsmSmsWithPduResponse()
- */
- void acknowledgeIncomingGsmSmsWithPdu(in int serial, in boolean success, in String ackPdu);
-
- /**
- * Acknowledge the success or failure in the receipt of SMS previously indicated
- * via responseCdmaNewSms()
- *
- * @param serial Serial number of request.
- * @param smsAck Cdma Sms ack to be sent described by CdmaSmsAck in types.hal
- *
- * Response callback is IRadioResponse.acknowledgeLastIncomingCdmaSmsResponse()
- */
- void acknowledgeLastIncomingCdmaSms(in int serial, in CdmaSmsAck smsAck);
-
- /**
- * Acknowledge successful or failed receipt of SMS previously indicated via unsolResponseNewSms
- *
- * @param serial Serial number of request.
- * @param success is true on successful receipt
- * (basically, AT+CNMA=1 from TS 27.005 is 0 on failed receipt
- * (basically, AT+CNMA=2 from TS 27.005)
- * @param cause: if success is false, this contains the failure cause as defined
- * in TS 23.040, 9.2.3.22.
- *
- * Response function is IRadioResponse.acknowledgeLastIncomingGsmSmsResponse()
- */
- void acknowledgeLastIncomingGsmSms(
- in int serial, in boolean success, in SmsAcknowledgeFailCause cause);
-
- /**
- * Reserves an unallocated pdu session id from the pool of ids. The allocated id is returned
- * in the response. When the id is no longer needed, call releasePduSessionId to return it to
- * the pool.
- *
- * Reference: 3GPP TS 24.007 section 11.2.3.1b
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.allocatePduSessionIdResponse()
- */
- void allocatePduSessionId(in int serial);
-
- /**
- * Whether uiccApplications are enabled, or disabled.
- * By default uiccApplications must be enabled, unless enableUiccApplications() with enable
- * being false is called.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.areUiccApplicationsEnabledResponse()
- */
- void areUiccApplicationsEnabled(in int serial);
-
- /**
- * Indicates that a handover was cancelled after a call to IRadio::startHandover.
- * Since the handover was unsuccessful, the modem retains ownership over any of the resources
- * being transferred and is still responsible for releasing them.
- *
- * @param serial Serial number of request.
- * @param id callId The identifier of the data call which is provided in SetupDataCallResult
- *
- * Response function is IRadioResponse.cancelHandoverResponse()
- */
- void cancelHandover(in int serial, in int callId);
-
- /**
- * Cancel the current USSD session if one exists.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.cancelPendingUssdResponse()
- */
- void cancelPendingUssd(in int serial);
-
- /**
- * Supplies old ICC PIN2 and new PIN2.
- *
- * @param serial Serial number of request.
- * @param oldPin2 Old pin2 value
- * @param newPin2 New pin2 value
- * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
- *
- * Response function is IRadioResponse.changeIccPin2ForAppResponse()
- */
- void changeIccPin2ForApp(in int serial, in String oldPin2, in String newPin2, in String aid);
-
- /**
- * Supplies old ICC PIN and new PIN.
- *
- * @param serial Serial number of request.
- * @param oldPin Old pin value
- * @param newPin New pin value
- * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
- *
- * Response function is IRadioResponse.changeIccPinForAppResponse()
- */
- void changeIccPinForApp(in int serial, in String oldPin, in String newPin, in String aid);
-
- /**
- * Conference holding and active (like AT+CHLD=3)
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.conferenceResponse()
- */
- void conference(in int serial);
-
- /**
- * Deactivate packet data connection and remove from the data call list. An
- * unsolDataCallListChanged() must be sent when data connection is deactivated.
- *
- * @param serial Serial number of request.
- * @param cid Data call id.
- * @param reason The request reason. Must be normal, handover, or shutdown.
- *
- * Response function is IRadioResponse.deactivateDataCallResponse()
- */
- void deactivateDataCall(in int serial, in int cid, in DataRequestReason reason);
-
- /**
- * Deletes a CDMA SMS message from RUIM memory.
- *
- * @param serial Serial number of request.
- * @param index record index of the message to delete
- *
- * Response callback is IRadioResponse.deleteSmsOnRuimResponse()
- */
- void deleteSmsOnRuim(in int serial, in int index);
-
- /**
- * Deletes a SMS message from SIM memory.
- *
- * @param serial Serial number of request.
- * @param index Record index of the message to delete.
- *
- * Response function is IRadioResponse.deleteSmsOnSimResponse()
- */
- void deleteSmsOnSim(in int serial, in int index);
-
- /**
- * Initiate voice call. This method is never used for supplementary service codes.
- *
- * @param serial Serial number of request.
- * @param dialInfo Dial struct
- *
- * Response function is IRadioResponse.dialResponse()
- */
- void dial(in int serial, in Dial dialInfo);
-
- /**
- * Initiate emergency voice call, with zero or more emergency service category(s), zero or
- * more emergency Uniform Resource Names (URN), and routing information for handling the call.
- * Android uses this request to make its emergency call instead of using IRadio.dial if the
- * 'address' in the 'dialInfo' field is identified as an emergency number by Android.
- *
- * In multi-sim scenario, if the emergency number is from a specific subscription, this radio
- * request can still be sent out on the other subscription as long as routing is set to
- * EmergencyNumberRouting#EMERGENCY. This radio request will not be sent on an inactive
- * (PIN/PUK locked) subscription unless both subscriptions are PIN/PUK locked. In this case,
- * the request will be sent on the primary subscription.
- *
- * Some countries or carriers require some emergency numbers that must be handled with normal
- * call routing if possible or emergency routing. 1) if the 'routing' field is specified as
- * EmergencyNumberRouting#NORMAL, the implementation must try the full radio service to use
- * normal call routing to handle the call; if service cannot support normal routing, the
- * implementation must use emergency routing to handle the call. 2) if 'routing' is specified
- * as EmergencyNumberRouting#EMERGENCY, the implementation must use emergency routing to handle
- * the call. 3) if 'routing' is specified as EmergencyNumberRouting#UNKNOWN, Android does not
- * know how to handle the call.
- *
- * If the dialed emergency number does not have a specified emergency service category, the
- * 'categories' field is set to EmergencyServiceCategory#UNSPECIFIED; if the dialed emergency
- * number does not have specified emergency Uniform Resource Names, the 'urns' field is set to
- * an empty list. If the underlying technology used to request emergency services does not
- * support the emergency service category or emergency uniform resource names, the field
- * 'categories' or 'urns' may be ignored.
- *
- * In the scenarios that the 'address' in the 'dialInfo' field has other functions besides the
- * emergency number function, if the 'hasKnownUserIntentEmergency' field is true, the user's
- * intent for this dial request is emergency call, and the modem must treat this as an actual
- * emergency dial; if the 'hasKnownUserIntentEmergency' field is false, Android does not know
- * user's intent for this call.
- *
- * If 'isTesting' is true, this request is for testing purpose, and must not be sent to a real
- * emergency service; otherwise it's for a real emergency call request.
- *
- * Reference: 3gpp 22.101, Section 10 - Emergency Calls;
- * 3gpp 23.167, Section 6 - Functional description;
- * 3gpp 24.503, Section 5.1.6.8.1 - General;
- * RFC 5031
- *
- * @param serial Serial number of request.
- * @param dialInfo the same Dial information used by IRadio.dial.
- * @param categories bitfield<EmergencyServiceCategory> the Emergency Service Category(s)
- * of the call.
- * @param urns the emergency Uniform Resource Names (URN)
- * @param routing EmergencyCallRouting the emergency call routing information.
- * @param hasKnownUserIntentEmergency Flag indicating if user's intent for the emergency call
- * is known.
- * @param isTesting Flag indicating if this request is for testing purpose.
- *
- * Response function is IRadioResponse.emergencyDialResponse()
- */
- void emergencyDial(in int serial, in Dial dialInfo, in EmergencyServiceCategory categories,
- in String[] urns, in EmergencyCallRouting routing,
- in boolean hasKnownUserIntentEmergency, in boolean isTesting);
-
- /**
- * Toggle logical modem on/off. This is similar to IRadio.setRadioPower(), however that
- * does not enforce that radio power is toggled only for the corresponding radio and certain
- * vendor implementations do it for all radios. This new API should affect only the modem for
- * which it is called. A modem stack must be on/active only when both setRadioPower() and
- * enableModem() are set to on for it.
- *
- * SIM must be read if available even if modem is off/inactive.
- *
- * @param serial Serial number of request.
- * @param on True to turn on the logical modem, otherwise turn it off.
- *
- * Response function is IRadioResponse.enableModemResponse()
- */
- void enableModem(in int serial, in boolean on);
-
- /**
- * Enable or disable UiccApplications on the SIM. If disabled:
- * - Modem will not register on any network.
- * - SIM must be PRESENT, and the IccId of the SIM must still be accessible.
- * - The corresponding modem stack is still functional, e.g. able to make emergency calls or
- * do network scan.
- * By default if this API is not called, the uiccApplications must be enabled automatically.
- * It must work for both single SIM and DSDS cases for UX consistency.
- * The preference is per SIM, and must be remembered over power cycle, modem reboot, or SIM
- * insertion / unplug.
- *
- * @param serial Serial number of request.
- * @param enable true if to enable uiccApplications, false to disable.
- *
- * Response callback is IRadioResponse.enableUiccApplicationsResponse()
- */
- void enableUiccApplications(in int serial, in boolean enable);
-
- /**
- * Request the radio's system selection module to exit emergency callback mode. Radio must not
- * respond with SUCCESS until the modem has completely exited from Emergency Callback Mode.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.exitEmergencyCallbackModeResponse()
- */
- void exitEmergencyCallbackMode(in int serial);
-
- /**
- * Connects the two calls and disconnects the subscriber from both calls.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.explicitCallTransferResponse()
- */
- void explicitCallTransfer(in int serial);
-
- /**
- * Get carrier restrictions.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getAllowedCarriersResponse()
- */
- void getAllowedCarriers(in int serial);
-
- /**
- * Requests bitmap representing the currently allowed network types.
- * getPreferredNetworkType, getPreferredNetworkTypesBitmap will not be called anymore
- * except for IRadio v1.5 or older devices.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getAllowedNetworkTypesBitmapResponse()
- */
- void getAllowedNetworkTypesBitmap(in int serial);
-
- /**
- * Get the list of band modes supported by RF.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getAvailableBandModesResponse()
- */
- void getAvailableBandModes(in int serial);
-
- /**
- * Scans for available networks
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getAvailableNetworksResponse()
- */
- void getAvailableNetworks(in int serial);
-
- /**
- * Get all the barring info for the current camped cell applicable to the current user.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getBarringInfoResponse()
- */
- void getBarringInfo(in int serial);
-
- /**
- * Return string value indicating baseband version, eg response from AT+CGMR
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getBasebandVersionResponse()
- */
- void getBasebandVersion(in int serial);
-
- /**
- * Request the device MDN / H_SID / H_NID. The request is only allowed when CDMA subscription
- * is available. When CDMA subscription is changed, application layer must re-issue the request
- * to update the subscription information.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getCDMASubscriptionResponse()
- */
- void getCDMASubscription(in int serial);
-
- /**
- * Request call forward status.
- *
- * @param serial Serial number of request.
- * @param callInfo CallForwardInfo
- *
- * Response function is IRadioResponse.getCallForwardStatusResponse()
- */
- void getCallForwardStatus(in int serial, in CallForwardInfo callInfo);
-
- /**
- * Query current call waiting state
- *
- * @param serial Serial number of request.
- * @param serviceClass Service class is the TS 27.007 service class to query
- *
- * Response function is IRadioResponse.getCallWaitingResponse()
- */
- void getCallWaiting(in int serial, in int serviceClass);
-
- /**
- * Request the setting of CDMA Broadcast SMS config
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getCdmaBroadcastConfigResponse()
- */
- void getCdmaBroadcastConfig(in int serial);
-
- /**
- * Request the actual setting of the roaming preferences in CDMA in the modem
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getCdmaRoamingPreferenceResponse()
- */
- void getCdmaRoamingPreference(in int serial);
-
- /**
- * Request to query the location where the CDMA subscription shall be retrieved.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getCdmaSubscriptionSourceResponse()
- */
- void getCdmaSubscriptionSource(in int serial);
-
- /**
- * Request all of the current cell information known to the radio. The radio must return a list
- * of all current cells, including the neighboring cells. If for a particular cell information
- * isn't known then the appropriate unknown value will be returned.
- * This does not cause or change the rate of unsolicited cellInfoList().
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getCellInfoListResponse()
- */
- void getCellInfoList(in int serial);
-
- /**
- * Queries the status of the CLIP supplementary service (for MMI code "*#30#")
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getClipResponse()
- */
- void getClip(in int serial);
-
- /**
- * Gets current CLIR status
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getClirResponse()
- */
- void getClir(in int serial);
-
- /**
- * Requests current call list
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getCurrentCallsResponse()
- */
- void getCurrentCalls(in int serial);
-
- /**
- * Returns the data call list. An entry is added when a setupDataCall() is issued and removed
- * on a deactivateDataCall(). The list is emptied when setRadioPower() off/on issued or when
- * the vendor HAL or modem crashes.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getDataCallListResponse()
- */
- void getDataCallList(in int serial);
-
- /**
- * Request current data registration state.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getDataRegistrationStateResponse()
- */
- void getDataRegistrationState(in int serial);
-
- /**
- * Request the device ESN / MEID / IMEI / IMEISV. The request is always allowed and contains
- * GSM and CDMA device identity. When CDMA subscription is changed the ESN/MEID changes.
- * The application layer must re-issue the request to update the device identity in this case.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getDeviceIdentityResponse()
- */
- void getDeviceIdentity(in int serial);
-
- /**
- * Query the status of a facility lock state
- *
- * @param serial Serial number of request.
- * @param facility is the facility string code from TS 27.007 7.4
- * (eg "AO" for BAOC, "SC" for SIM lock)
- * @param password is the password, or "" if not required
- * @param serviceClass is the TS 27.007 service class bit vector of services to query
- * @param appId is AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
- * This is only applicable in the case of Fixed Dialing Numbers (FDN) requests.
- *
- * Response function is IRadioResponse.getFacilityLockForAppResponse()
- */
- void getFacilityLockForApp(in int serial, in String facility, in String password,
- in int serviceClass, in String appId);
-
- /**
- * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getGsmBroadcastConfigResponse()
- */
- void getGsmBroadcastConfig(in int serial);
-
- /**
- * Request all of the current hardware (modem and sim) associated with Radio.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getHardwareConfigResponse()
- */
- void getHardwareConfig(in int serial);
-
- /**
- * Requests status of the ICC card
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getIccCardStatusResponse()
- *
- */
- void getIccCardStatus(in int serial);
-
- /**
- * Request current IMS registration state
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getImsRegistrationStateResponse()
- */
- void getImsRegistrationState(in int serial);
-
- /**
- * Get the SIM IMSI. Only valid when radio state is "RADIO_STATE_ON"
- *
- * @param serial Serial number of request.
- * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
- *
- * Response function is IRadioResponse.getImsiForAppResponse()
- *
- */
- void getImsiForApp(in int serial, in String aid);
-
- /**
- * Requests the failure cause code for the most recently terminated call.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getLastCallFailCauseResponse()
- *
- */
- void getLastCallFailCause(in int serial);
-
- /**
- * Get modem activity information for power consumption estimation. Request clear-on-read
- * statistics information that is used for estimating the per-millisecond power consumption
- * of the cellular modem.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getModemActivityInfoResponse()
- */
- void getModemActivityInfo(in int serial);
-
- /**
- * Request status of logical modem. It returns isEnabled=true if the logical modem is on.
- * This method is the getter method for enableModem.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getModemStackStatusResponse()
- */
- void getModemStackStatus(in int serial);
-
- /**
- * Queries the current state of the uplink mute setting
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getMuteResponse()
- */
- void getMute(in int serial);
-
- /**
- * Request neighboring cell id in GSM network
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getNeighboringCidsResponse()
- */
- void getNeighboringCids(in int serial);
-
- /**
- * Query current network selection mode
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getNetworkSelectionModeResponse()
- */
- void getNetworkSelectionMode(in int serial);
-
- /**
- * Request current operator ONS or EONS
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getOperatorResponse()
- */
- void getOperator(in int serial);
-
- /**
- * Query the preferred network type (CS/PS domain, RAT, and operation mode)
- * for searching and registering
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getPreferredNetworkTypeResponse()
- */
- void getPreferredNetworkType(in int serial);
-
- /**
- * Query the preferred network type bitmap.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getPreferredNetworkTypeBitmapResponse()
- */
- void getPreferredNetworkTypeBitmap(in int serial);
-
- /**
- * Request the setting of preferred voice privacy mode.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getPreferredVoicePrivacyResponse()
- */
- void getPreferredVoicePrivacy(in int serial);
-
- /**
- * Used to get phone radio capability.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getRadioCapabilityResponse()
- */
- void getRadioCapability(in int serial);
-
- /**
- * Requests current signal strength and associated information. Must succeed if radio is on.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getSignalStrengthResponse()
- */
- void getSignalStrength(in int serial);
-
- /**
- * Get the phone book capacity
- *
- * @param serial Serial number of request.
- *
- * Response function is defined from IRadioResponse.getSimPhonebookCapacityResponse()
- */
- void getSimPhonebookCapacity(in int serial);
-
- /**
- * Get the local and global phonebook records from the SIM card.
- * This should be called again after a simPhonebookChanged notification is received.
- * The phonebook records are received via IRadioIndication.simPhonebookRecordsReceived()
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getSimPhonebookRecordsResponse()
- */
- void getSimPhonebookRecords(in int serial);
-
- /**
- * Request to get 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.
- *
- * Response function is IRadioResponse.getSlicingConfigResponse()
- */
- void getSlicingConfig(in int serial);
-
- /**
- * Get the default Short Message Service Center address on the device.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getSmscAddressResponse()
- */
- void getSmscAddress(in int serial);
-
- /**
- * Get which bands the modem's background scan is acting on.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getSystemSelectionChannelsResponse()
- */
- void getSystemSelectionChannels(in int serial);
-
- /**
- * Request the setting of TTY mode
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getTTYModeResponse()
- */
- void getTTYMode(in int serial);
-
- /**
- * Query the radio technology type (3GPP/3GPP2) used for voice. Query is valid only
- * when radio state is not RADIO_STATE_UNAVAILABLE
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.getVoiceRadioTechnologyResponse()
- */
- void getVoiceRadioTechnology(in int serial);
-
- /**
- * Request current voice registration state.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.getVoiceRegistrationStateResponse()
- */
- void getVoiceRegistrationState(in int serial);
-
- /**
- * When STK application gets stkCallSetup(), the call actually has been initialized by the
- * mobile device already. (We could see the call has been in the 'call list'). STK application
- * needs to accept/reject the call according to user operations.
- *
- * @param serial Serial number of request.
- * @param accept true = accept the call setup, false = reject the call setup
- *
- * Response callback is IRadioResponse.handleStkCallSetupRequestFromSimResponse()
- */
- void handleStkCallSetupRequestFromSim(in int serial, in boolean accept);
-
- /**
- * Hang up a specific line (like AT+CHLD=1x). After this HANGUP request returns, Radio must
- * show the connection is NOT active anymore in next getCurrentCalls() query.
- *
- * @param serial Serial number of request.
- * @param gsmIndex Connection index (value of 'x' in CHLD above)
- *
- * Response function is IRadioResponse.hangupResponse()
- */
- void hangup(in int serial, in int gsmIndex);
-
- /**
- * Hang up waiting or held (like AT+CHLD=1). After this HANGUP request returns, Radio must show
- * the connection is NOT active anymore in next getCurrentCalls() query.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.hangupForegroundResumeBackgroundResponse()
- */
- void hangupForegroundResumeBackground(in int serial);
-
- /**
- * Hang up waiting or held (like AT+CHLD=0). After this HANGUP request returns, Radio must show
- * the connection is NOT active anymore in next getCurrentCalls() query.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.hangupWaitingOrBackgroundResponse()
- */
- void hangupWaitingOrBackground(in int serial);
-
- /**
- * Close a previously opened logical channel. This command reflects TS 27.007
- * "close logical channel" operation (+CCHC).
- *
- * @param serial Serial number of request.
- * @param channelId session id of the logical channel (+CCHC).
- *
- * Response callback is IRadioResponse.iccCloseLogicalChannelResponse()
- */
- void iccCloseLogicalChannel(in int serial, in int channelId);
-
- /**
- * Request ICC I/O operation. This is similar to the TS 27.007 "restricted SIM" operation where
- * it assumes all of the EF selection must be done by the callee. Arguments and responses that
- * are unused for certain values of "command" must be ignored or set to empty string.
- * Note that IccIo has a "PIN2" field which may be empty string, or may specify a PIN2 for
- * operations that require a PIN2 (eg updating FDN records).
- *
- * @param serial Serial number of request.
- * @param iccIo IccIo
- *
- * Response function is IRadioResponse.iccIOForAppResponse()
- */
- void iccIOForApp(in int serial, in IccIo iccIo);
-
- /**
- * Open a new logical channel and select the given application. This command
- * reflects TS 27.007 "open logical channel" operation (+CCHO).
- *
- * @param serial Serial number of request.
- * @param aid AID value, See ETSI 102.221 and 101.220.
- * @param p2 P2 value, described in ISO 7816-4. Ignore if equal to RadioConst:P2_CONSTANT_NO_P2
- *
- * Response callback is IRadioResponse.iccOpenLogicalChannelResponse()
- */
- void iccOpenLogicalChannel(in int serial, in String aid, in int p2);
-
- /**
- * Request APDU exchange on the basic channel. This command reflects TS 27.007
- * "generic SIM access" operation (+CSIM). The modem must ensure proper function of GSM/CDMA,
- * and filter commands appropriately. It must filter channel management and SELECT by DF
- * name commands. "sessionid" field must be ignored.
- *
- * @param serial Serial number of request.
- * @param message SimApdu as defined in types.hal to be sent
- *
- * Response callback is IRadioResponse.iccTransmitApduBasicChannelResponse()
- */
- void iccTransmitApduBasicChannel(in int serial, in SimApdu message);
-
- /**
- * Exchange APDUs with a UICC over a previously opened logical channel. This command reflects
- * TS 27.007 "generic logical channel access" operation (+CGLA). The modem must filter channel
- * management and SELECT by DF name commands.
- *
- * @param serial Serial number of request.
- * @param message SimApdu as defined in types.hal to be sent
- *
- * Response callback is IRadioResponse.iccTransmitApduLogicalChannelResponse()
- */
- void iccTransmitApduLogicalChannel(in int serial, in SimApdu message);
-
- /**
- * Is E-UTRA-NR Dual Connectivity enabled
- *
- * @param serial Serial number of request.
- * Response callback is IRadioResponse.isNrDualConnectivityEnabledResponse()
- */
- void isNrDualConnectivityEnabled(in int serial);
-
- /**
- * Read one of the radio NV items.
- * This is used for device configuration by some CDMA operators.
- *
- * @param serial Serial number of request.
- * @param itemId NvItem is radio NV item as defined in types.hal
- *
- * Response callback is IRadioResponse.nvReadItemResponse()
- */
- void nvReadItem(in int serial, in NvItem itemId);
-
- /**
- * Reset the radio NV configuration to the factory state.
- * This is used for device configuration by some CDMA operators.
- *
- * @param serial Serial number of request.
- * @param resetType ResetNvType as defined in types.hal
- *
- * Response callback is IRadioResponse.nvResetConfigResponse()
- */
- void nvResetConfig(in int serial, in ResetNvType resetType);
-
- /**
- * Update the CDMA Preferred Roaming List (PRL) in the radio NV storage.
- * This is used for device configuration by some CDMA operators.
- *
- * @param serial Serial number of request.
- * @param prl PRL as a byte array
- *
- * Response callback is IRadioResponse.nvWriteCdmaPrlResponse()
- */
- void nvWriteCdmaPrl(in int serial, in byte[] prl);
-
- /**
- * Write one of the radio NV items.
- * This is used for device configuration by some CDMA operators.
- *
- * @param serial Serial number of request.
- * @param item NvWriteItem as defined in types.hal
- *
- * Response callback is IRadioResponse.nvWriteItemResponse()
- */
- void nvWriteItem(in int serial, in NvWriteItem item);
-
- /**
- * Send UDUB (user determined user busy) to ringing or waiting call answer)
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.rejectCallResponse()
- */
- void rejectCall(in int serial);
-
- /**
- * Releases a pdu session id that was previously allocated using allocatePduSessionId.
- * Reference: 3GPP TS 24.007 section 11.2.3.1b
- *
- * @param serial Serial number of request.
- * @param id Pdu session id to release.
- *
- * Response function is IRadioResponse.releasePduSessionIdResponse()
- */
- void releasePduSessionId(in int serial, in int id);
-
- /**
- * Indicates whether there is storage available for new SMS messages.
- *
- * @param serial Serial number of request.
- * @param available true if memory is available for storing new messages,
- * false if memory capacity is exceeded
- *
- * Response callback is IRadioResponse.reportSmsMemoryStatusResponse()
- */
- void reportSmsMemoryStatus(in int serial, in boolean available);
-
- /**
- * Indicates that the StkService is running and is ready to receive unsolicited stk commands.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.reportStkServiceIsRunningResponse()
- */
- void reportStkServiceIsRunning(in int serial);
-
- /**
- * Returns the response of SIM Authentication through Radio challenge request.
- *
- * @param serial Serial number of request.
- * @param authContext P2 value of authentication command, see P2 parameter in
- * 3GPP TS 31.102 7.1.2
- * @param authData the challenge string in Base64 format, see 3GPP TS 31.102 7.1.2
- * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value
- *
- * Response callback is IRadioResponse.requestIccSimAuthenticationResponse()
- */
- void requestIccSimAuthentication(
- in int serial, in int authContext, in String authData, in String aid);
-
- /**
- * Request the ISIM application on the UICC to perform AKA challenge/response algorithm
- * for IMS authentication
- *
- * @param serial Serial number of request.
- * @param challenge challenge string in Base64 format
- *
- * Response callback is IRadioResponse.requestIsimAuthenticationResponse()
- */
- void requestIsimAuthentication(in int serial, in String challenge);
-
- /**
- * Device is shutting down. All further commands are ignored and RADIO_NOT_AVAILABLE
- * must be returned.
- *
- * @param serial Serial number of request.
- *
- * Response callback is IRadioResponse.requestShutdownResponse()
- */
- void requestShutdown(in int serial);
-
- /**
- * When response type received from a radio indication or radio response is
- * RadioIndicationType:UNSOLICITED_ACK_EXP or RadioResponseType:SOLICITED_ACK_EXP respectively,
- * acknowledge the receipt of those messages by sending responseAcknowledgement().
- */
- void responseAcknowledgement();
-
- /**
- * Send DTMF string
- *
- * @param serial Serial number of request.
- * @param dtmf DTMF string
- * @param on DTMF ON length in milliseconds, or 0 to use default
- * @param off is the DTMF OFF length in milliseconds, or 0 to use default
- *
- * Response callback is IRadioResponse.sendBurstDtmfResponse()
- */
- void sendBurstDtmf(in int serial, in String dtmf, in int on, in int off);
-
- /**
- * Send FLASH command
- *
- * @param serial Serial number of request.
- * @param featureCode String associated with Flash command
- *
- * Response callback is IRadioResponse.sendCDMAFeatureCodeResponse()
- */
- void sendCDMAFeatureCode(in int serial, in String featureCode);
-
- /**
- * Send a CDMA SMS message
- *
- * @param serial Serial number of request.
- * @param sms Cdma Sms to be sent described by CdmaSmsMessage in types.hal
- *
- * Response callback is IRadioResponse.sendCdmaSmsResponse()
- */
- void sendCdmaSms(in int serial, in CdmaSmsMessage sms);
-
- /**
- * Send an SMS message. Identical to sendCdmaSms, except that more messages are expected to be
- * sent soon.
- *
- * @param serial Serial number of request.
- * @param sms Cdma Sms to be sent described by CdmaSmsMessage in types.hal
- *
- * Response callback is IRadioResponse.sendCdmaSMSExpectMoreResponse()
- */
- void sendCdmaSmsExpectMore(in int serial, in CdmaSmsMessage sms);
-
- /**
- * Send the updated device state. This is providing the device state information for the modem
- * to perform power saving strategies.
- *
- * @param serial Serial number of request.
- * @param deviceStateType The updated device state type.
- * @param state The updated state. See the definition of state at DeviceStateType.
- *
- * Response callback is IRadioResponse.sendDeviceStateResponse()
- */
- void sendDeviceState(in int serial, in DeviceStateType deviceStateType, in boolean state);
-
- /**
- * Send a DTMF tone. If the implementation is currently playing a tone requested via
- * startDtmf(), that tone must be cancelled and the new tone must be played instead.
- *
- * @param serial Serial number of request.
- * @param s string with single char having one of 12 values: 0-9, *, #
- *
- * Response function is IRadioResponse.sendDtmfResponse()
- */
- void sendDtmf(in int serial, in String s);
-
- /**
- * Requests to send a SAT/USAT envelope command to SIM.
- * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
- *
- * @param serial Serial number of request.
- * @param command SAT/USAT command in hexadecimal format string starting with command tag
- *
- * Response function is IRadioResponse.sendEnvelopeResponse()
- */
- void sendEnvelope(in int serial, in String command);
-
- /**
- * Requests to send a SAT/USAT envelope command to SIM. The SAT/USAT envelope command refers to
- * 3GPP TS 11.14 and 3GPP TS 31.111. This request has one difference from sendEnvelope():
- * The SW1 and SW2 status bytes from the UICC response are returned along with the response
- * data, using the same structure as iccIOForApp(). The implementation must perform normal
- * processing of a '91XX' response in SW1/SW2 to retrieve the pending proactive command and
- * send it as an unsolicited response, as sendEnvelope() does.
- *
- * @param serial Serial number of request.
- * @param contents SAT/USAT command in hexadecimal format starting with command tag
- *
- * Response callback is IRadioResponse.sendEnvelopeWithStatusResponse()
- */
- void sendEnvelopeWithStatus(in int serial, in String contents);
-
- /**
- * Send a SMS message over IMS. Based on the return error, caller decides to resend if sending
- * sms fails. SMS_SEND_FAIL_RETRY means retry, and other errors means no retry.
- * In case of retry, data is encoded based on Voice Technology available.
- *
- * @param serial Serial number of request.
- * @param message ImsSmsMessage as defined in types.hal to be sent
- *
- * Response callback is IRadioResponse.sendImsSmsResponse()
- */
- void sendImsSms(in int serial, in ImsSmsMessage message);
-
- /**
- * Send an SMS message. Based on the returned error, caller decides to resend if sending sms
- * fails. RadioError:SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332) and
- * RadioError:GENERIC_FAILURE means no retry (i.e. error cause is 500)
- *
- * @param serial Serial number of request.
- * @param message GsmSmsMessage as defined in types.hal
- *
- * Response function is IRadioResponse.sendSmsResponse()
- */
- void sendSms(in int serial, in GsmSmsMessage message);
-
- /**
- * Send an SMS message. Identical to sendSms, except that more messages are expected to be sent
- * soon. If possible, keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command).
- * Based on the return error, caller decides to resend if sending sms fails.
- * RadioError:SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332) and
- * RadioError:GENERIC_FAILURE means no retry (i.e. error cause is 500)
- *
- * @param serial Serial number of request.
- * @param message GsmSmsMessage as defined in types.hal
- *
- * Response function is IRadioResponse.sendSmsExpectMoreResponse()
- */
- void sendSmsExpectMore(in int serial, in GsmSmsMessage message);
-
- /**
- * Requests to send a terminal response to SIM for a received proactive command
- *
- * @param serial Serial number of request.
- * @param commandResponse SAT/USAT response in hexadecimal format string starting with
- * first byte of response data
- *
- * Response function is IRadioResponse.sendTerminalResponseResponseToSim()
- */
- void sendTerminalResponseToSim(in int serial, in String commandResponse);
-
- /**
- * Send a USSD message. If a USSD session already exists, the message must be sent in the
- * context of that session. Otherwise, a new session must be created. The network reply must be
- * reported via unsolOnUssd.
- *
- * Only one USSD session must exist at a time, and the session is assumed to exist until:
- * a) The android system invokes cancelUssd()
- * b) The implementation sends a unsolOnUssd() with a type code of
- * "0" (USSD-Notify/no further action) or "2" (session terminated)
- *
- * @param serial Serial number of request.
- * @param ussd string containing the USSD request in UTF-8 format
- *
- * Response function is IRadioResponse.sendUssdResponse()
- *
- * See also requestCancelUssd, unsolOnUssd
- */
- void sendUssd(in int serial, in String ussd);
-
- /**
- * Separate a party from a multiparty call placing the multiparty call (less the specified
- * party) on hold and leaving the specified party as the only other member of the current
- * (active) call. Like AT+CHLD=2x.
- *
- * See TS 22.084 1.3.8.2 (iii)
- * TS 22.030 6.5.5 "Entering "2X followed by send"
- * TS 27.007 "AT+CHLD=2x"
- *
- * @param serial Serial number of request.
- * @param gsmIndex contains Connection index (value of 'x' in CHLD above)
- *
- * Response function is IRadioResponse.separateConnectionResponse()
- */
- void separateConnection(in int serial, in int gsmIndex);
-
- /**
- * Set carrier restrictions. Expected modem behavior:
- * If never receives this command:
- * - Must allow all carriers
- * Receives this command:
- * - Only allow carriers specified in carriers. The restriction persists across power cycles
- * and FDR. If a present SIM is allowed, modem must not reload the SIM. If a present SIM is
- * *not* allowed, modem must detach from the registered network and only keep emergency
- * service, and notify Android SIM refresh reset with new SIM state being
- * CardState:RESTRICTED. Emergency service must be enabled.
- *
- * @param serial Serial number of request.
- * @param carriers CarrierRestrictions consisting allowed and excluded carriers
- * @param multiSimPolicy Policy to be used for devices with multiple SIMs.
- *
- * Response callback is IRadioResponse.setAllowedCarriersResponse()
- */
- void setAllowedCarriers(in int serial, in CarrierRestrictions carriers,
- in SimLockMultiSimPolicy multiSimPolicy);
-
- /**
- * Requests to set the network type for searching and registering. Instruct the radio to
- * *only* accept the types of network provided. setPreferredNetworkTypesBitmap and
- * setPreferredNetworkType will not be called anymore except for IRadio v1.5 or older devices.
- * In case of an emergency call, the modem is authorized to bypass this restriction.
- *
- * @param serial Serial number of request.
- * @param networkTypeBitmap a 32-bit bearer bitmap of RadioAccessFamily
- *
- * Response callback is IRadioResponse.setAllowedNetworkTypesBitmapResponse()
- */
- void setAllowedNetworkTypesBitmap(in int serial, in RadioAccessFamily networkTypeBitmap);
-
- /**
- * Assign a specified band for RF configuration.
- *
- * @param serial Serial number of request.
- * @param mode RadioBandMode defined in types.hal
- *
- * Response function is IRadioResponse.setBandModeResponse()
- */
- void setBandMode(in int serial, in RadioBandMode mode);
-
- /**
- * Change call barring facility password
- *
- * @param serial Serial number of request.
- * @param facility facility string code from TS 27.007 7.4 (eg "AO" for BAOC)
- * @param oldPassword old password
- * @param newPassword new password
- *
- * Response function is IRadioResponse.setBarringPasswordResponse()
- */
- void setBarringPassword(
- in int serial, in String facility, in String oldPassword, in String newPassword);
-
- /**
- * Configure call forward rule
- *
- * @param serial Serial number of request.
- * @param callInfo CallForwardInfo
- *
- * Response function is IRadioResponse.setCallForwardResponse()
- */
- void setCallForward(in int serial, in CallForwardInfo callInfo);
-
- /**
- * Configure current call waiting state
- *
- * @param serial Serial number of request.
- * @param enable is false for "disabled" and true for "enabled"
- * @param serviceClass is the TS 27.007 service class bit vector of services to modify
- *
- * Response function is IRadioResponse.setCallWaitingResponse()
- */
- void setCallWaiting(in int serial, in boolean enable, in int serviceClass);
-
- /**
- * Provide Carrier specific information to the modem that must be used to encrypt the IMSI and
- * IMPI. Sent by the framework during boot, carrier switch and everytime the framework receives
- * a new certificate.
- *
- * @param serial Serial number of request.
- * @param imsiEncryptionInfo ImsiEncryptionInfo as defined in types.hal.
- *
- * Response callback is IRadioResponse.setCarrierInfoForImsiEncryptionResponse()
- */
- void setCarrierInfoForImsiEncryption(in int serial, in ImsiEncryptionInfo imsiEncryptionInfo);
-
- /**
- * Enable or disable the reception of CDMA Cell Broadcast SMS
- *
- * @param serial Serial number of request.
- * @param activate indicates to activate or turn off the reception of CDMA
- * Cell Broadcast SMS. true = activate, false = turn off
- *
- * Response callback is IRadioResponse.setCdmaBroadcastActivationResponse()
- */
- void setCdmaBroadcastActivation(in int serial, in boolean activate);
-
- /**
- * Set CDMA Broadcast SMS config
- *
- * @param serial Serial number of request.
- * @param configInfo CDMA Broadcast SMS config to be set.
- *
- * Response callback is IRadioResponse.setCdmaBroadcastConfigResponse()
- */
- void setCdmaBroadcastConfig(in int serial, in CdmaBroadcastSmsConfigInfo[] configInfo);
-
- /**
- * Request to set the roaming preferences in CDMA
- *
- * @param serial Serial number of request.
- * @param type CdmaRoamingType defined in types.hal
- *
- * Response callback is IRadioResponse.setCdmaRoamingPreferenceResponse()
- */
- void setCdmaRoamingPreference(in int serial, in CdmaRoamingType type);
-
- /**
- * Request to set the location where the CDMA subscription shall be retrieved
- *
- * @param serial Serial number of request.
- * @param cdmaSub CdmaSubscriptionSource
- *
- * Response callback is IRadioResponse.setCdmaSubscriptionSourceResponse()
- */
- void setCdmaSubscriptionSource(in int serial, in CdmaSubscriptionSource cdmaSub);
-
- /**
- * Sets the minimum time between when unsolicited cellInfoList() must be invoked.
- * A value of 0, means invoke cellInfoList() when any of the reported information changes.
- * Setting the value to INT_MAX(0x7fffffff) means never issue a unsolicited cellInfoList().
- *
- * @param serial Serial number of request.
- * @param rate minimum time in milliseconds to indicate time between unsolicited cellInfoList()
- *
- * Response callback is IRadioResponse.setCellInfoListRateResponse()
- */
- void setCellInfoListRate(in int serial, in int rate);
-
- /**
- * Set current CLIR status
- *
- * @param serial Serial number of request.
- * @param status "n" parameter from TS 27.007 7.7
- *
- * Response function is IRadioResponse.setClirResponse()
- */
- void setClir(in int serial, in int status);
-
- /**
- * Tells the modem whether data calls are allowed or not
- *
- * @param serial Serial number of request.
- * @param allow true to allow data calls, false to disallow data calls
- *
- * Response callback is IRadioResponse.setDataAllowedResponse()
- */
- void setDataAllowed(in int serial, in boolean allow);
-
- /**
- * Send data profiles of the current carrier to the modem.
- *
- * @param serial Serial number of request.
- * @param profiles Array of DataProfileInfo to set.
- *
- * Response callback is IRadioResponse.setDataProfileResponse()
- */
- void setDataProfile(in int serial, in DataProfileInfo[] profiles);
-
- /**
- * Control data throttling at modem.
- * - DataThrottlingAction:NO_DATA_THROTTLING should clear any existing data throttling within
- * the requested completion window.
- * - DataThrottlingAction:THROTTLE_SECONDARY_CARRIER: Remove any existing throttling on anchor
- * carrier and achieve maximum data throttling on secondary carrier within the requested
- * completion window.
- * - DataThrottlingAction:THROTTLE_ANCHOR_CARRIER: disable secondary carrier and achieve maximum
- * data throttling on anchor carrier by requested completion window.
- * - DataThrottlingAction:HOLD: Immediately hold on to current level of throttling.
- *
- * @param serial Serial number of request.
- * @param dataThrottlingAction DataThrottlingAction as defined in types.hal
- * @param completionDurationMillis window, in milliseconds, in which the requested throttling
- * action has to be achieved. This must be 0 when dataThrottlingAction is
- * DataThrottlingAction:HOLD.
- *
- * Response function is IRadioResponse.setDataThrottlingResponse()
- */
- void setDataThrottling(in int serial, in DataThrottlingAction dataThrottlingAction,
- in long completionDurationMillis);
-
- /**
- * Enable/disable one facility lock
- *
- * @param serial Serial number of request.
- * @param facility is the facility string code from TS 27.007 7.4 (eg "AO" for BAOC)
- * @param lockState false for "unlock" and true for "lock"
- * @param password is the password
- * @param serviceClass is string representation of decimal TS 27.007 service class bit vector.
- * Eg, the string "1" means "set this facility for voice services"
- * @param appId is AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
- * This is only applicable in the case of Fixed Dialing Numbers (FDN) requests.
- *
- * Response function is IRadioResponse.setFacilityLockForAppResponse()
- */
- void setFacilityLockForApp(in int serial, in String facility, in boolean lockState,
- in String password, in int serviceClass, in String appId);
-
- /**
- * Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
- *
- * @param serial Serial number of request.
- * @param activate indicates to activate or turn off the reception of GSM/WCDMA
- * Cell Broadcast SMS. true = activate, false = turn off
- *
- * Response callback is IRadioResponse.setGsmBroadcastActivationResponse()
- */
- void setGsmBroadcastActivation(in int serial, in boolean activate);
-
- /**
- * Set GSM/WCDMA Cell Broadcast SMS config
- *
- * @param serial Serial number of request.
- * @param configInfo Setting of GSM/WCDMA Cell broadcast config
- *
- * Response callback is IRadioResponse.setGsmBroadcastConfigResponse()
- */
- void setGsmBroadcastConfig(in int serial, in GsmBroadcastSmsConfigInfo[] configInfo);
-
- /**
- * Sets the indication filter. Prevents the reporting of specified unsolicited indications from
- * the radio. This is used for power saving in instances when those indications are not needed.
- * If unset, defaults to IndicationFilter:ALL.
- *
- * @param serial Serial number of request.
- * @param indicationFilter 32-bit bitmap of IndicationFilter. Bits set to 1 indicate the
- * indications are enabled. See IndicationFilter for the definition of each bit.
- *
- * Response callback is IRadioResponse.setIndicationFilterResponse()
- */
- void setIndicationFilter(in int serial, in IndicationFilter indicationFilter);
-
- /**
- * Set an APN to initial attach network.
- *
- * @param serial Serial number of request.
- * @param dataProfileInfo data profile containing APN settings
- *
- * Response callback is IRadioResponse.setInitialAttachApnResponse()
- */
- void setInitialAttachApn(in int serial, in DataProfileInfo dataProfileInfo);
-
- /**
- * Sets the link capacity reporting criteria. The resulting reporting criteria are the AND of
- * all the supplied criteria. Note that reporting criteria must be individually set for each
- * RAN. If unset, reporting criteria for that RAN are implementation-defined.
- *
- * Response callback is IRadioResponse.setLinkCapacityReportingCriteriaResponse().
- *
- * @param serial Serial number of request.
- * @param hysteresisMs A hysteresis time in milliseconds to prevent flapping. A value of 0
- * disables hysteresis.
- * @param hysteresisDlKbps An interval in kbps defining the required magnitude change between DL
- * reports. hysteresisDlKbps must be smaller than the smallest threshold delta. A value
- * of 0 disables hysteresis.
- * @param hysteresisUlKbps An interval in kbps defining the required magnitude change between UL
- * reports. hysteresisUlKbps must be smaller than the smallest threshold delta. A value
- * of 0 disables hysteresis.
- * @param thresholdsDownlinkKbps A vector of trigger thresholds in kbps for downlink reports. A
- * vector size of 0 disables the use of DL thresholds for reporting.
- * @param thresholdsUplinkKbps A vector of trigger thresholds in kbps for uplink reports. A
- * vector size of 0 disables the use of UL thresholds for reporting.
- * @param accessNetwork The type of network for which to apply these thresholds.
- */
- void setLinkCapacityReportingCriteria(in int serial, in int hysteresisMs,
- in int hysteresisDlKbps, in int hysteresisUlKbps, in int[] thresholdsDownlinkKbps,
- in int[] thresholdsUplinkKbps, in AccessNetwork accessNetwork);
-
- /**
- * Enables/disables network state change notifications due to changes in LAC and/or CID (for
- * GSM) or BID/SID/NID/latitude/longitude (for CDMA). Basically +CREG=2 vs. +CREG=1 (TS 27.007).
- * The Radio implementation must default to "updates enabled" when the screen is on and
- * "updates disabled" when the screen is off.
- *
- * @param serial Serial number of request.
- * @param enable true=updates enabled (+CREG=2), false=updates disabled (+CREG=1)
- *
- * Response callback is IRadioResponse.setLocationUpdatesResponse()
- */
- void setLocationUpdates(in int serial, in boolean enable);
-
- /**
- * Turn on or off uplink (microphone) mute. Must only be sent while voice call is active.
- * Must always be reset to "disable mute" when a new voice call is initiated
- *
- * @param serial Serial number of request.
- * @param enable true for "enable mute" and false for "disable mute"
- *
- * Response function is IRadioResponse.setMuteResponse()
- */
- void setMute(in int serial, in boolean enable);
-
- /**
- * Specify that the network must be selected automatically.
- * This request must not respond until the new operator is selected and registered.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.setNetworkSelectionModeAutomaticResponse()
- */
- void setNetworkSelectionModeAutomatic(in int serial);
-
- /**
- * Manually select a specified network. This request must not respond until the new operator is
- * selected and registered. Per TS 23.122, the RAN is just the initial suggested value.
- * If registration fails, the RAN is not available afterwards, or the RAN is not within the
- * network types specified by IRadio::setPreferredNetworkTypeBitmap, then the modem will need to
- * select the next best RAN for network registration.
- *
- * @param serial Serial number of request.
- * @param operatorNumeric String specifying MCCMNC of network to select (eg "310170").
- * @param ran Initial suggested radio access network type. If value is UNKNOWN, the modem
- * will select the next best RAN for network registration.
- *
- * Response function is IRadioResponse.setNetworkSelectionModeManualResponse()
- */
- void setNetworkSelectionModeManual(
- in int serial, in String operatorNumeric, in RadioAccessNetworks ran);
-
- /**
- * Enable or disable E-UTRA-NR dual connectivity. If disabled then UE will not connect
- * to secondary carrier.
- *
- * @param serial Serial number of request.
- * @param nrDualConnectivityState expected NR dual connectivity state.
- * 1: Enable NR dual connectivity {NrDualConnectivityState:ENABLE}
- * 2: Disable NR dual connectivity {NrDualConnectivityState:DISABLE}
- * 3: Disable NR dual connectivity and force secondary cell to be released
- * {NrDualConnectivityState:DISABLE_IMMEDIATE}
- *
- * Response callback is IRadioResponse.setNRDualConnectivityStateResponse()
- */
- void setNrDualConnectivityState(
- in int serial, in NrDualConnectivityState nrDualConnectivityState);
-
- /**
- * Requests to set the preferred network type for searching and registering
- * (CS/PS domain, RAT, and operation mode)
- *
- * @param serial Serial number of request.
- * @param nwType PreferredNetworkType defined in types.hal
- *
- * Response callback is IRadioResponse.setPreferredNetworkTypeResponse()
- */
- void setPreferredNetworkType(in int serial, in PreferredNetworkType nwType);
-
- /**
- * Requests to set the preferred network type for searching and registering.
- *
- * @param serial Serial number of request.
- * @param networkTypeBitmap a 32-bit bitmap of RadioAccessFamily.
- *
- * Response callback is IRadioResponse.setPreferredNetworkTypeBitmapResponse()
- */
- void setPreferredNetworkTypeBitmap(in int serial, in RadioAccessFamily networkTypeBitmap);
-
- /**
- * Request to set the preferred voice privacy mode used in voice scrambling.
- *
- * @param serial Serial number of request.
- * @param enable false for Standard Privacy Mode (Public Long Code Mask)
- * true for Enhanced Privacy Mode (Private Long Code Mask)
- *
- * Response callback is IRadioResponse.setPreferredVoicePrivacyResponse()
- */
- void setPreferredVoicePrivacy(in int serial, in boolean enable);
-
- /**
- * Used to set the phones radio capability. Be VERY careful using this request as it may cause
- * some vendor modems to reset. Because of the possible modem reset any radio commands after
- * this one may not be processed.
- *
- * @param serial Serial number of request.
- * @param rc RadioCapability structure to be set
- *
- * Response callback is IRadioResponse.setRadioCapabilityResponse()
- */
- void setRadioCapability(in int serial, in RadioCapability rc);
-
- /**
- * Toggle radio on and off (for "airplane" mode). If the radio is turned off/on the radio modem
- * subsystem is expected return to an initialized state. For instance, any voice and data calls
- * must be terminated and all associated lists emptied.
- * When setting radio power on to exit from airplane mode to place an emergency call on this
- * logical modem, powerOn, forEmergencyCall and preferredForEmergencyCall must be true. In
- * this case, this modem is optimized to scan only emergency call bands, until:
- * 1) Emergency call is completed; or
- * 2) Another setRadioPower is issued with forEmergencyCall being false or
- * preferredForEmergencyCall being false; or
- * 3) Timeout after 30 seconds if dial or emergencyDial is not called.
- * Once one of these conditions is reached, the modem should move into normal operation.
- *
- * @param serial Serial number of request.
- * @param powerOn To turn on radio -> on = true, to turn off radio -> on = false.
- * @param forEmergencyCall To indication to radio if this request is due to emergency call.
- * No effect if powerOn is false.
- * @param preferredForEmergencyCall indicate whether the following emergency call will be sent
- * on this modem or not. No effect if forEmergencyCall is false, or powerOn is false.
- *
- * Response callback is IRadioConfigResponse.setRadioPowerResponse.
- */
- void setRadioPower(in int serial, in boolean powerOn, in boolean forEmergencyCall,
- in boolean preferredForEmergencyCall);
-
- /**
- * Set response functions for radio requests & radio indications.
- *
- * @param radioResponse Object containing response functions
- * @param radioIndication Object containing radio indications
- */
- void setResponseFunctions(in IRadioResponse radioResponse, in IRadioIndication radioIndication);
-
- /**
- * Sets the signal strength reporting criteria. The resulting reporting rules are the AND of all
- * the supplied criteria. For each RAN the hysteresisDb and thresholds apply to only the
- * following measured quantities:
- * -GERAN - RSSI
- * -CDMA2000 - RSSI
- * -UTRAN - RSCP
- * -EUTRAN - RSRP/RSRQ/RSSNR
- * -NGRAN - SSRSRP/SSRSRQ/SSSINR
- * Note that reporting criteria must be individually set for each RAN. For each RAN, if none of
- * reporting criteria of any measurement is set enabled (see SignalThresholdInfo.isEnabled),
- * the reporting criteria for this RAN is implementation-defined. For each RAN, if any reporting
- * criteria of any measure is set enabled, the reporting criteria of the other measures in this
- * RAN are set disabled (see SignalThresholdInfo.isEnabled) until they are set enabled.
- *
- * @param serial Serial number of request.
- * @param signalThresholdInfo Signal threshold info including the threshold values,
- * hysteresisDb, hysteresisMs and isEnabled. See SignalThresholdInfo for details.
- * @param accessNetwork The type of network for which to apply these thresholds.
- *
- * Response callback is IRadioResponse.setSignalStrengthReportingCriteriaResponse()
- */
- void setSignalStrengthReportingCriteria(in int serial,
- in SignalThresholdInfo signalThresholdInfo, in AccessNetwork accessNetwork);
-
- /**
- * Set SIM card power state. Request is used to power off or power on the card. It should not
- * generate a CardState.CARDSTATE_ABSENT indication, since the SIM is still physically inserted.
- * When SIM card is in POWER_UP_PASS_THROUGH, the modem does not send any command to it (for
- * example SELECT of MF, or TERMINAL CAPABILITY), and the SIM card is controlled completely by
- * Telephony sending APDUs directly. The SIM card state must be RIL_CARDSTATE_PRESENT and the
- * number of card apps will be 0. No new error code is generated. Emergency calls are supported
- * in the same way as if the SIM card is absent. Pass-through mode is valid only for the
- * specific card session where it is activated, and normal behavior occurs at the next SIM
- * initialization, unless POWER_UP_PASS_THROUGH is requested again.
- * The device is required to power down the SIM card before it can switch the mode between
- * POWER_UP and POWER_UP_PASS_THROUGH. At device power up, the SIM interface is powered up
- * automatically. Each subsequent request to this method is processed only after the completion
- * of the previous one.
- * When the SIM is in POWER_DOWN, the modem should send an empty vector of AppStatus in
- * CardStatus.applications. If a SIM in the POWER_DOWN state is removed and a new SIM is
- * inserted, the new SIM should be in POWER_UP mode by default. If the device is turned off or
- * restarted while the SIM is in POWER_DOWN, then the SIM should turn on normally in POWER_UP
- * mode when the device turns back on.
- *
- * @param serial Serial number of request
- * @param powerUp POWER_DOWN if powering down the SIM card
- * POWER_UP if powering up the SIM card
- * POWER_UP_PASS_THROUGH if powering up the SIM card in pass through mode
- *
- * Response callback is IRadioResponse.setSimCardPowerResponse().
- */
- void setSimCardPower(in int serial, in CardPowerState powerUp);
-
- /**
- * Set the default Short Message Service Center address on the device.
- *
- * @param serial Serial number of request.
- * @param smsc Short Message Service Center address to set
- *
- * Response callback is IRadioResponse.setSmscAddressResponse()
- */
- void setSmscAddress(in int serial, in String smsc);
-
- /**
- * Enables/disables supplementary service related notifications from the network.
- * Notifications are reported via unsolSuppSvcNotification().
- *
- * @param serial Serial number of request.
- * @param enable true = notifications enabled, false = notifications disabled.
- *
- * Response function is IRadioResponse.setSuppServiceNotificationsResponse()
- */
- void setSuppServiceNotifications(in int serial, in boolean enable);
-
- /**
- * Specify which bands modem's background scan must act on. If specifyChannels is true, it only
- * scans bands specified in specifiers. If specifyChannels is false, it scans all bands. For
- * example, CBRS is only on LTE band 48. By specifying this band, modem saves more power.
- *
- * @param serial Serial number of request.
- * @param specifyChannels whether to scan bands defined in specifiers.
- * @param specifiers which bands to scan. Only used if specifyChannels is true.
- *
- * Response callback is IRadioResponse.setSystemSelectionChannelsResponse()
- */
- void setSystemSelectionChannels(
- in int serial, in boolean specifyChannels, in RadioAccessSpecifier[] specifiers);
-
- /**
- * Request to set the TTY mode
- *
- * @param serial Serial number of request.
- * @param mode TtyMode
- *
- * Response callback is IRadioResponse.setTTYModeResponse()
- */
- void setTTYMode(in int serial, in TtyMode mode);
-
- /**
- * Selection/de-selection of a subscription from a SIM card
- *
- * @param serial Serial number of request.
- * @param uiccSub SelectUiccSub as defined in types.hal
- *
- * Response callback is IRadioResponse.setUiccSubscriptionResponse()
- */
- void setUiccSubscription(in int serial, in SelectUiccSub uiccSub);
-
- /**
- * Setup a packet data connection. If DataCallResponse.status returns DataCallFailCause:NONE,
- * the data connection must be added to data calls and a unsolDataCallListChanged() must be
- * sent. The call remains until removed by subsequent unsolDataCallIstChanged(). It may be lost
- * due to many factors, including deactivateDataCall() being issued, the radio powered off,
- * reception lost or even transient factors like congestion. This data call list is returned by
- * getDataCallList() and dataCallListChanged().
- * The Radio is expected to:
- * - Create one data call context.
- * - Create and configure a dedicated interface for the context.
- * - The interface must be point to point.
- * - The interface is configured with one or more addresses and is capable of sending and
- * receiving packets. The format is IP address with optional "/" prefix length (The format is
- * defined in RFC-4291 section 2.3). For example, "192.0.1.3", "192.0.1.11/16", or
- * "2001:db8::1/64". Typically one IPv4 or one IPv6 or one of each. If the prefix length is
- * absent, then the addresses are assumed to be point to point with IPv4 with prefix length 32
- * or IPv6 with prefix length 128.
- * - Must not modify routing configuration related to this interface; routing management is
- * exclusively within the purview of the Android OS.
- * - Support simultaneous data call contexts up to DataRegStateResult.maxDataCalls specified in
- * the response of getDataRegistrationState.
- *
- * @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 this should respond with an error.
- * @param dataProfileInfo Data profile info.
- * @param roamingAllowed Indicates whether or not data roaming is allowed by the user.
- * @param reason The request reason. Must be DataRequestReason:NORMAL or
- * DataRequestReason:HANDOVER.
- * @param addresses If the reason is DataRequestReason:HANDOVER, this indicates the list of link
- * addresses of the existing data connection. This parameter must be ignored unless
- * reason is DataRequestReason:HANDOVER.
- * @param dnses If the reason is DataRequestReason:HANDOVER, this indicates the list of DNS
- * addresses of the existing data connection. The format is defined in RFC-4291 section
- * 2.2. For example, "192.0.1.3" or "2001:db8::1". This parameter must be ignored unless
- * reason is DataRequestReason:HANDOVER.
- * @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.
- * @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 matching --
- * it does not specify the end point to be used for the data call. The end point is
- * specified by DataProfileInfo.apn; DataProfileInfo.apn must be used as the end point if
- * one is not specified through URSP rules.
- * @param matchAllRuleAllowed bool to indicate if using default match-all URSP rule for this
- * request is allowed. If false, this request must not use the match-all URSP rule and if
- * a non-match-all rule is not found (or if URSP rules are not available) it should
- * return failure with cause DataCallFailCause:MATCH_ALL_RULE_NOT_ALLOWED. This is needed
- * as some requests need to have a hard failure if the intention cannot be met, for
- * example, a zero-rating slice.
- *
- * Response function is IRadioResponse.setupDataCallResponse()
- */
- void setupDataCall(in int serial, in AccessNetwork accessNetwork,
- in DataProfileInfo dataProfileInfo, in boolean roamingAllowed,
- in DataRequestReason reason, in LinkAddress[] addresses, in String[] dnses,
- in int pduSessionId, in @nullable SliceInfo sliceInfo,
- in @nullable TrafficDescriptor trafficDescriptor,
- in boolean matchAllRuleAllowed);
-
- /**
- * Start playing a DTMF tone. Continue playing DTMF tone until stopDtmf is received. If a
- * startDtmf() is received while a tone is currently playing, it must cancel the previous tone
- * and play the new one.
- *
- * @param serial Serial number of request.
- * @param s string having a single character with one of 12 values: 0-9,*,#
- *
- * Response function is IRadioResponse.startDtmfResponse()
- */
- void startDtmf(in int serial, in String s);
-
- /**
- * Indicates that a handover to the IWLAN transport has begun. Any resources being transferred
- * to the IWLAN transport cannot be released while a handover is underway. For example, if a
- * pdu session id needs to be transferred to IWLAN, then the modem should not release the id
- * while the handover is in progress. If a handover was unsuccessful, then the framework calls
- * IRadio::cancelHandover. The modem retains ownership over any of the resources being
- * transferred to IWLAN. If a handover was successful, the framework calls
- * IRadio::deactivateDataCall with reason HANDOVER. The IWLAN transport now owns the transferred
- * resources and is responsible for releasing them.
- *
- * @param serial Serial number of request.
- * @param id callId The identifier of the data call which is provided in SetupDataCallResult
- *
- * Response function is IRadioResponse.startHandoverResponse()
- */
- void startHandover(in int serial, in int callId);
-
- /**
- * Start a Keepalive session (for IPsec)
- *
- * @param serial Serial number of request.
- * @param keepalive A request structure containing all necessary info to describe a keepalive
- *
- * Response function is IRadioResponse.startKeepaliveResponse()
- */
- void startKeepalive(in int serial, in KeepaliveRequest keepalive);
-
- /**
- * Starts a network scan.
- *
- * @param serial Serial number of request.
- * @param request Defines the radio networks/bands/channels which need to be scanned.
- *
- * Response function is IRadioResponse.startNetworkScanResponse()
- */
- void startNetworkScan(in int serial, in NetworkScanRequest request);
-
- /**
- * Stop playing a currently playing DTMF tone.
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.stopDtmfResponse()
- */
- void stopDtmf(in int serial);
-
- /**
- * Stop an ongoing Keepalive session (for IPsec)
- *
- * @param serial Serial number of request.
- * @param sessionHandle The handle that was provided by IRadioResponse.startKeepaliveResponse
- *
- * Response function is IRadioResponse.stopKeepaliveResponse()
- */
- void stopKeepalive(in int serial, in int sessionHandle);
-
- /**
- * Stops ongoing network scan
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.stopNetworkScanResponse()
- */
- void stopNetworkScan(in int serial);
-
- /**
- * Supplies ICC PIN2. Only called following operation where SIM_PIN2 was returned as a failure
- * from a previous operation.
- *
- * @param serial Serial number of request.
- * @param pin2 PIN2 value
- * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
- *
- * Response function is IRadioResponse.supplyIccPin2ForAppResponse()
- */
- void supplyIccPin2ForApp(in int serial, in String pin2, in String aid);
-
- /**
- * Supplies ICC PIN. Only called if CardStatus has AppState.PIN state
- *
- * @param serial Serial number of request.
- * @param pin PIN value
- * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
- *
- * Response function is IRadioResponse.supplyIccPinForAppResponse()
- */
- void supplyIccPinForApp(in int serial, in String pin, in String aid);
-
- /**
- * Supplies ICC PUK2 and new PIN2.
- *
- * @param serial Serial number of request.
- * @param puk2 PUK2 value
- * @param pin2 New PIN2 value
- * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
- *
- * Response function is IRadioResponse.supplyIccPuk2ForAppResponse()
- */
- void supplyIccPuk2ForApp(in int serial, in String puk2, in String pin2, in String aid);
-
- /**
- * Supplies ICC PUK and new PIN.
- *
- * @param serial Serial number of request.
- * @param puk PUK value
- * @param pin New PIN value
- * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
- *
- * Response function is IRadioResponse.supplyIccPukForAppResponse()
- */
- void supplyIccPukForApp(in int serial, in String puk, in String pin, in String aid);
-
- /**
- * Requests that network personalization be deactivated
- *
- * @param serial Serial number of request.
- * @param netPin Network depersonlization code
- *
- * Response function is IRadioResponse.supplyNetworkDepersonalizationResponse()
- */
- void supplyNetworkDepersonalization(in int serial, in String netPin);
-
- /**
- * Request that deactivates one category of device personalization. Device personalization
- * generally binds the device so it can only be used on one carrier or even one carrier subnet
- * (See TS 22.022). When the user has gained the rights to unbind the device (at the end of a
- * contract period or other event), the controlKey will be delivered to either the user for
- * manual entry or to a carrier app on the device for automatic entry.
- *
- * @param serial Serial number of request.
- * @param persoType SIM personalization type.
- * @param controlKey the unlock code for removing persoType personalization from this device
- *
- * Response function is IRadioResponse.supplySimDepersonalizationResponse()
- */
- void supplySimDepersonalization(
- in int serial, in PersoSubstate persoType, in String controlKey);
-
- /**
- * Switch waiting or holding call and active call (like AT+CHLD=2).
- * Call transitions must happen as shown below.
- * BEFORE AFTER
- * Call 1 Call 2 Call 1 Call 2
- * ACTIVE HOLDING HOLDING ACTIVE
- * ACTIVE WAITING HOLDING ACTIVE
- * HOLDING WAITING HOLDING ACTIVE
- * ACTIVE IDLE HOLDING IDLE
- * IDLE IDLE IDLE IDLE
- *
- * @param serial Serial number of request.
- *
- * Response function is IRadioResponse.switchWaitingOrHoldingAndActiveResponse()
- */
- void switchWaitingOrHoldingAndActive(in int serial);
-
- /**
- * Insert, delete or update a phonebook record on the SIM card. If the index of recordInfo is 0,
- * the phonebook record will be added to global or local phonebook, and global phonebook has
- * higher priority than local phonebook. If the fields in the recordInfo are all empty except
- * for the index, the phonebook record specified by the index will be deleted. The indication
- * simPhonebookChanged will be called after every successful call of updateSimPhonebookRecords.
- *
- * @param serial Serial number of request.
- * @param recordInfo Details of the record to insert, delete or update.
- *
- * Response callback is IRadioResponse.updateSimPhonebookRecordsResponse()
- */
- void updateSimPhonebookRecords(in int serial, in PhonebookRecordInfo recordInfo);
-
- /**
- * Stores a CDMA SMS message to RUIM memory.
- *
- * @param serial Serial number of request.
- * @param cdmaSms CDMA message as defined by CdmaSmsWriteArgs in types.hal
- *
- * Response callback is IRadioResponse.writeSmsToRuimResponse()
- */
- void writeSmsToRuim(in int serial, in CdmaSmsWriteArgs cdmaSms);
-
- /**
- * Stores a SMS message to SIM memory.
- *
- * @param serial Serial number of request.
- * @param smsWriteArgs SmsWriteArgs defined in types.hal
- *
- * Response function is IRadioResponse.writeSmsToSimResponse()
- */
- void writeSmsToSim(in int serial, in SmsWriteArgs smsWriteArgs);
-}
diff --git a/radio/aidl/android/hardware/radio/IRadioIndication.aidl b/radio/aidl/android/hardware/radio/IRadioIndication.aidl
deleted file mode 100644
index ec6adde..0000000
--- a/radio/aidl/android/hardware/radio/IRadioIndication.aidl
+++ /dev/null
@@ -1,626 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-import android.hardware.radio.BarringInfo;
-import android.hardware.radio.CdmaCallWaiting;
-import android.hardware.radio.CdmaInformationRecords;
-import android.hardware.radio.CdmaOtaProvisionStatus;
-import android.hardware.radio.CdmaSignalInfoRecord;
-import android.hardware.radio.CdmaSmsMessage;
-import android.hardware.radio.CdmaSubscriptionSource;
-import android.hardware.radio.CellIdentity;
-import android.hardware.radio.CellInfo;
-import android.hardware.radio.Domain;
-import android.hardware.radio.EmergencyNumber;
-import android.hardware.radio.HardwareConfig;
-import android.hardware.radio.KeepaliveStatus;
-import android.hardware.radio.LceDataInfo;
-import android.hardware.radio.LinkCapacityEstimate;
-import android.hardware.radio.NetworkScanResult;
-import android.hardware.radio.PbReceivedStatus;
-import android.hardware.radio.PcoDataInfo;
-import android.hardware.radio.PhoneRestrictedState;
-import android.hardware.radio.PhonebookRecordInfo;
-import android.hardware.radio.PhysicalChannelConfig;
-import android.hardware.radio.RadioCapability;
-import android.hardware.radio.RadioIndicationType;
-import android.hardware.radio.RadioState;
-import android.hardware.radio.RadioTechnology;
-import android.hardware.radio.SetupDataCallResult;
-import android.hardware.radio.SignalStrength;
-import android.hardware.radio.SimRefreshResult;
-import android.hardware.radio.SrvccState;
-import android.hardware.radio.StkCcUnsolSsResult;
-import android.hardware.radio.SuppSvcNotification;
-import android.hardware.radio.UssdModeType;
-
-/**
- * Interface declaring unsolicited radio indications.
- */
-@VintfStability
-oneway interface IRadioIndication {
- /**
- * Indicate barring information for the user’s access category / access class and PLMN.
- *
- * <p>Provide information about the barring status of the cell for the user. The information
- * provided should describe all barring configurations that are applicable to the current user,
- * even if the user is not currently barred (due to conditional barring). This informs Android
- * of likely future (statistical) barring for specific services.
- *
- * <p>This indication should be sent whenever the cell’s barring config changes for the current
- * user, or if the user’s conditional barring status changes due to re-evaluation of the
- * barring conditions. Barring status will likely change when the device camps for service,
- * when PLMN selection is completed, when the device attempts to access a conditionally barred
- * service, and when the System Information including barring info for a camped cell is updated.
- */
- void barringInfoChanged(in RadioIndicationType type, in CellIdentity cellIdentity,
- in BarringInfo[] barringInfos);
-
- /**
- * Ring indication for an incoming call (eg, RING or CRING event). There must be at least one
- * callRing() at the beginning of a call and sending multiple is optional. If the system
- * property ro.telephony.call_ring.multiple is false then the upper layers must generate the
- * multiple events internally. Otherwise the vendor code must generate multiple callRing() if
- * ro.telephony.call_ring.multiple is true or if it is absent.
- * The rate of these events is controlled by ro.telephony.call_ring.delay and has a default
- * value of 3000 (3 seconds) if absent.
- *
- * @param type Type of radio indication
- * @param isGsm true for GSM & false for CDMA
- * @param record Cdma Signal Information
- */
- void callRing(in RadioIndicationType type, in boolean isGsm, in CdmaSignalInfoRecord record);
-
- /**
- * Indicates when call state has changed. Callee must invoke IRadio.getCurrentCalls(). Must be
- * invoked on, for example, "RING", "BUSY", "NO CARRIER", and also call state transitions
- * (DIALING->ALERTING ALERTING->ACTIVE). Redundent or extraneous invocations are tolerated.
- *
- * @param type Type of radio indication
- */
- void callStateChanged(in RadioIndicationType type);
-
- /**
- * Indicates that the modem requires the Carrier info for IMSI/IMPI encryption. This might
- * happen when the modem restarts or for some reason it's cache has been invalidated.
- *
- * @param type Type of radio indication
- */
- void carrierInfoForImsiEncryption(in RadioIndicationType info);
-
- /**
- * Indicates when CDMA radio receives a call waiting indication.
- *
- * @param type Type of radio indication
- * @param callWaitingRecord Cdma CallWaiting information
- */
- void cdmaCallWaiting(in RadioIndicationType type, in CdmaCallWaiting callWaitingRecord);
-
- /**
- * Indicates when CDMA radio receives one or more info recs.
- *
- * @param type Type of radio indication
- * @param records New Cdma Information
- */
- void cdmaInfoRec(in RadioIndicationType type, in CdmaInformationRecords records);
-
- /**
- * Indicates when new CDMA SMS is received. Callee must subsequently confirm the receipt of the
- * SMS with acknowledgeLastIncomingCdmaSms(). Server must not send cdmaNewSms() messages until
- * acknowledgeLastIncomingCdmaSms() has been received.
- *
- * @param type Type of radio indication
- * @param msg Cdma Sms Message
- */
- void cdmaNewSms(in RadioIndicationType type, in CdmaSmsMessage msg);
-
- /**
- * Indicates when CDMA radio receives an update of the progress of an OTASP/OTAPA call.
- *
- * @param type Type of radio indication
- * @param status Cdma OTA provision status
- */
- void cdmaOtaProvisionStatus(in RadioIndicationType type, in CdmaOtaProvisionStatus status);
-
- /**
- * Indicates when PRL (preferred roaming list) changes.
- *
- * @param type Type of radio indication
- * @param version PRL version after PRL changes
- */
- void cdmaPrlChanged(in RadioIndicationType type, in int version);
-
- /**
- * Indicates that SMS storage on the RUIM is full. Messages cannot be saved on the RUIM until
- * space is freed.
- *
- * @param type Type of radio indication
- */
- void cdmaRuimSmsStorageFull(in RadioIndicationType type);
-
- /**
- * Indicates when CDMA subscription source changed.
- *
- * @param type Type of radio indication
- * @param cdmaSource New Cdma SubscriptionSource
- */
- void cdmaSubscriptionSourceChanged(
- in RadioIndicationType type, in CdmaSubscriptionSource cdmaSource);
-
- /**
- * Report all of the current cell information known to the radio.
- *
- * @param type Type of radio indication
- * @param records Current cell information
- */
- void cellInfoList(in RadioIndicationType type, in CellInfo[] records);
-
- /**
- * Report the current list of emergency numbers. Each emergency number in the emergency number
- * list contains a dialing number, zero or more service category(s), zero or more emergency
- * uniform resource names, mobile country code, mobile network code, and source(s) that indicate
- * where it comes from.
- * Radio must report all the valid emergency numbers with known mobile country code, mobile
- * network code, emergency service categories, and emergency uniform resource names from all
- * available sources including network signaling, sim, modem/oem configuration, and default
- * configuration (112 and 911 must be always available; additionally, 000, 08, 110, 999, 118
- * and 119 must be available when sim is not present). Radio shall not report emergency numbers
- * that are invalid in the current locale. The reported emergency number list must not have
- * duplicate EmergencyNumber entries. Please refer the documentation of EmergencyNumber to
- * construct each emergency number to report.
- * Radio must report the complete list of emergency numbers whenever the emergency numbers in
- * the list are changed or whenever the client and the radio server are connected.
- *
- * Reference: 3gpp 22.101, Section 10 - Emergency Calls;
- * 3gpp 24.008, Section 9.2.13.4 - Emergency Number List
- *
- * @param type Type of radio indication
- * @param emergencyNumberList Current list of emergency numbers known to radio.
- */
- void currentEmergencyNumberList(
- in RadioIndicationType type, in EmergencyNumber[] emergencyNumberList);
-
- /**
- * Indicates current link capacity estimate. This indication is sent whenever the reporting
- * criteria, as set by IRadio.setLinkCapacityReportingCriteria, are met and the indication is
- * not suppressed by IRadio.setIndicationFilter().
- *
- * @param type Type of radio indication
- * @param lce LinkCapacityEstimate
- */
- void currentLinkCapacityEstimate(in RadioIndicationType type, in LinkCapacityEstimate lce);
-
- /**
- * Indicates physical channel configurations. An empty configs list shall be returned when the
- * radio is in idle mode (i.e. RRC idle).
- *
- * @param type Type of radio indication
- * @param configs Vector of PhysicalChannelConfigs
- */
- void currentPhysicalChannelConfigs(
- in RadioIndicationType type, in PhysicalChannelConfig[] configs);
-
- /**
- * Indicates current signal strength of the radio.
- *
- * @param type Type of radio indication
- * @param signalStrength SignalStrength information
- */
- void currentSignalStrength(in RadioIndicationType type, in SignalStrength signalStrength);
-
- /**
- * Indicates data call contexts have changed.
- *
- * @param type Type of radio indication
- * @param dcList Array of SetupDataCallResult identical to that returned by
- * IRadio.getDataCallList(). It is the complete list of current data contexts including
- * new contexts that have been activated. A data call is only removed from this list
- * when any of the below conditions is matched:
- * - The framework sends a IRadio.deactivateDataCall().
- * - The radio is powered off/on.
- * - Unsolicited disconnect from either modem or network side.
- */
- void dataCallListChanged(in RadioIndicationType type, in SetupDataCallResult[] dcList);
-
- /**
- * Indicates that the radio system selection module has autonomously entered emergency
- * callback mode.
- *
- * @param type Type of radio indication
- */
- void enterEmergencyCallbackMode(in RadioIndicationType type);
-
- /**
- * Indicates when Emergency Callback Mode Ends. Indicates that the radio system selection module
- * has proactively exited emergency callback mode.
- *
- * @param type Type of radio indication
- */
- void exitEmergencyCallbackMode(in RadioIndicationType type);
-
- /**
- * Indicates when the hardware configuration associated with the RILd changes.
- *
- * @param type Type of radio indication
- * @param configs Array of hardware configs
- */
- void hardwareConfigChanged(in RadioIndicationType type, in HardwareConfig[] configs);
-
- /**
- * Indicates when IMS registration state has changed. To get IMS registration state and IMS SMS
- * format, callee needs to invoke getImsRegistrationState().
- *
- * @param type Type of radio indication
- */
- void imsNetworkStateChanged(in RadioIndicationType type);
-
- /**
- * Indicates that nework doesn't have in-band information, need to play out-band tone.
- *
- * @param type Type of radio indication
- * @param start true = start play ringback tone, false = stop playing ringback tone
- */
- void indicateRingbackTone(in RadioIndicationType type, in boolean start);
-
- /**
- * Indicates a status update for a particular Keepalive session. This must include a handle for
- * a previous session and should include a status update regarding the state of a keepalive.
- * Unsolicited keepalive status reports should never be PENDING as unsolicited status should
- * only be sent when known.
- *
- * @param type Type of radio indication
- * @param status Status information for a Keepalive session
- */
- void keepaliveStatus(in RadioIndicationType type, in KeepaliveStatus status);
-
- /**
- * Indicates when there is an incoming Link Capacity Estimate (LCE) info report.
- *
- * @param type Type of radio indication
- * @param lce LceData information
- *
- * DEPRECATED in @1.2 and above, use IRadioIndication.currentLinkCapacityEstimate() instead.
- */
- void lceData(in RadioIndicationType type, in LceDataInfo lce);
-
- /**
- * Indicates when there is a modem reset.
- * When modem restarts, one of the following radio state transitions must happen
- * 1) RadioState:ON->RadioState:UNAVAILABLE->RadioState:ON or
- * 2) RadioState:OFF->RadioState:UNAVAILABLE->RadioState:OFF
- * This message must be sent either just before the Radio State changes to
- * RadioState:UNAVAILABLE or just after but must never be sent after the Radio State changes
- * from RadioState:UNAVAILABLE to RadioState:ON/RadioState:OFF again. It must NOT be sent after
- * the Radio state changes to RadioState:ON/RadioState:OFF after the modem restart as that may
- * be interpreted as a second modem reset by the framework.
- *
- * @param type Type of radio indication
- * @param reason the reason for the reset. It may be a crash signature if the restart was due to
- * a crash or some string such as "user-initiated restart" or "AT command initiated
- * restart" that explains the cause of the modem restart
- */
- void modemReset(in RadioIndicationType type, in String reason);
-
- /**
- * Incremental network scan results.
- *
- * @param type Type of radio indication
- * @param result the result of the network scan
- */
- void networkScanResult(in RadioIndicationType type, in NetworkScanResult result);
-
- /**
- * Indicates when voice or data network state changed. Callee must invoke
- * IRadio.getVoiceRegistrationState(), IRadio.getDataRegistrationState(), and
- * IRadio.getOperator()
- *
- * @param type Type of radio indication
- */
- void networkStateChanged(in RadioIndicationType type);
-
- /**
- * Indicates when new Broadcast SMS is received
- *
- * @param type Type of radio indication
- * @param data If received from GSM network, "data" is byte array of 88 bytes which indicates
- * each page of a CBS Message sent to the MS by the BTS as coded in 3GPP 23.041 Section
- * 9.4.1.2. If received from UMTS network, "data" is byte array of 90 up to 1252 bytes
- * which contain between 1 and 15 CBS Message pages sent as one packet to the MS by the
- * BTS as coded in 3GPP 23.041 Section 9.4.2.2
- */
- void newBroadcastSms(in RadioIndicationType type, in byte[] data);
-
- /**
- * Indicates when new SMS is received. Callee must subsequently confirm the receipt of the SMS
- * with a acknowledgeLastIncomingGsmSms(). Server must not send newSms() or newSmsStatusReport()
- * messages until an acknowledgeLastIncomingGsmSms() has been received.
- *
- * @param type Type of radio indication
- * @param pdu PDU of SMS-DELIVER represented as byte array.
- * The PDU starts with the SMSC address per TS 27.005 (+CMT:)
- */
- void newSms(in RadioIndicationType type, in byte[] pdu);
-
- /**
- * Indicates when new SMS has been stored on SIM card
- *
- * @param type Type of radio indication
- * @param recordNumber Record number on the sim
- */
- void newSmsOnSim(in RadioIndicationType type, in int recordNumber);
-
- /**
- * Indicates when new SMS Status Report is received. Callee must subsequently confirm the
- * receipt of the SMS with a acknowledgeLastIncomingGsmSms(). Server must not send newSms() or
- * newSmsStatusReport() messages until an acknowledgeLastIncomingGsmSms() has been received
- *
- * @param type Type of radio indication
- * @param pdu PDU of SMS-STATUS-REPORT represented as byte array.
- * The PDU starts with the SMSC address per TS 27.005 (+CMT:)
- */
- void newSmsStatusReport(in RadioIndicationType type, in byte[] pdu);
-
- /**
- * Indicates when radio has received a NITZ time message.
- *
- * @param type Type of radio indication
- * @param nitzTime NITZ time string in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
- * @param receivedTime milliseconds since boot that the NITZ time was received
- */
- void nitzTimeReceived(in RadioIndicationType type, in String nitzTime, in long receivedTime);
-
- /**
- * Indicates when Supplementary service(SS) response is received when DIAL/USSD/SS is changed to
- * SS by call control.
- *
- * @param type Type of radio indication
- */
- void onSupplementaryServiceIndication(in RadioIndicationType type, in StkCcUnsolSsResult ss);
-
- /**
- * Indicates when a new USSD message is received. The USSD session is assumed to persist if the
- * type code is REQUEST, otherwise the current session (if any) is assumed to have terminated.
- *
- * @param type Type of radio indication
- * @param modeType USSD type code
- * @param msg Message string in UTF-8, if applicable
- */
- void onUssd(in RadioIndicationType type, in UssdModeType modeType, in String msg);
-
- /**
- * Indicates when there is new Carrier PCO data received for a data call. Ideally only new data
- * must be forwarded, though this is not required. Multiple boxes of carrier PCO data for a
- * given call must result in a series of pcoData() calls.
- *
- * @param type Type of radio indication
- * @param pco New PcoData
- */
- void pcoData(in RadioIndicationType type, in PcoDataInfo pco);
-
- /**
- * Sent when setRadioCapability() completes. Returns the phone radio capability exactly as
- * getRadioCapability() and must be the same set as sent by setRadioCapability().
- *
- * @param type Type of radio indication
- * @param rc Current radio capability
- */
- void radioCapabilityIndication(in RadioIndicationType type, in RadioCapability rc);
-
- /**
- * Indicates when radio state changes.
- *
- * @param type Type of radio indication
- * @param radioState Current radio state
- */
- void radioStateChanged(in RadioIndicationType type, in RadioState radioState);
-
- /**
- * Report that Registration or a Location/Routing/Tracking Area update has failed.
- *
- * <p>Indicate whenever a registration procedure, including a location, routing, or tracking
- * area update fails. This includes procedures that do not necessarily result in a change of
- * the modem's registration status. If the modem's registration status changes, that is
- * reflected in the onNetworkStateChanged() and subsequent get{Voice/Data}RegistrationState().
- *
- * @param cellIdentity the CellIdentity, which must include the globally unique identifier for
- * the cell (for example, all components of the CGI or ECGI).
- * @param chosenPlmn a 5 or 6 digit alphanumeric PLMN (MCC|MNC) among those broadcast by the
- * cell that was chosen for the failed registration attempt.
- * @param domain Domain::CS, Domain::PS, or both in case of a combined procedure.
- * @param causeCode the primary failure cause code of the procedure.
- * For GSM/UMTS (MM), values are in TS 24.008 Sec 10.5.95
- * For GSM/UMTS (GMM), values are in TS 24.008 Sec 10.5.147
- * For LTE (EMM), cause codes are TS 24.301 Sec 9.9.3.9
- * For NR (5GMM), cause codes are TS 24.501 Sec 9.11.3.2
- * MAX_INT if this value is unused.
- * @param additionalCauseCode the cause code of any secondary/combined procedure if appropriate.
- * For UMTS, if a combined attach succeeds for PS only, then the GMM cause code shall be
- * included as an additionalCauseCode.
- * For LTE (ESM), cause codes are in TS 24.301 9.9.4.4
- * MAX_INT if this value is unused.
- */
- void registrationFailed(in RadioIndicationType type, in CellIdentity cellIdentity,
- in String chosenPlmn, in Domain domain, in int causeCode, in int additionalCauseCode);
-
- /**
- * Indicates that framework/application must reset the uplink mute state.
- *
- * @param type Type of radio indication
- */
- void resendIncallMute(in RadioIndicationType type);
-
- /**
- * Indicates a restricted state change (eg, for Domain Specific Access Control).
- * Radio must send this msg after radio off/on cycle no matter it is changed or not.
- *
- * @param type Type of radio indication
- * @param state Bitmask of restricted state as defined by PhoneRestrictedState
- */
- void restrictedStateChanged(in RadioIndicationType type, in PhoneRestrictedState state);
-
- /**
- * Indicates the ril connects and returns the version
- *
- * @param type Type of radio indication
- */
- void rilConnected(in RadioIndicationType type);
-
- /**
- * Indicates whether SIM phonebook is changed. This indication is sent whenever the SIM
- * phonebook is changed, including SIM is inserted or removed and updated by
- * IRadio.updateSimPhonebookRecords.
- *
- * @param type Type of radio indication
- */
- void simPhonebookChanged(in RadioIndicationType type);
-
- /**
- * Indicates the content of all the used records in the SIM phonebook. This indication is
- * associated with the API getSimPhonebookRecords and might be received more than once that is
- * replying on the record count.
- *
- * @param type Type of radio indication
- * @param status Status of PbReceivedStatus
- * @param records Vector of PhonebookRecordInfo
- */
- void simPhonebookRecordsReceived(in RadioIndicationType type, in PbReceivedStatus status,
- in PhonebookRecordInfo[] records);
-
- /**
- * Indicates that file(s) on the SIM have been updated, or the SIM has been reinitialized.
- * If the SIM state changes as a result of the SIM refresh (eg, SIM_READY ->
- * SIM_LOCKED_OR_ABSENT), simStatusChanged() must be sent.
- *
- * @param type Type of radio indication
- * @param refreshResult Result of sim refresh
- */
- void simRefresh(in RadioIndicationType type, in SimRefreshResult refreshResult);
-
- /**
- * Indicates that SMS storage on the SIM is full. Sent when the network attempts to deliver a
- * new SMS message. Messages cannot be saved on the SIM until space is freed. In particular,
- * incoming Class 2 messages must not be stored.
- *
- * @param type Type of radio indication
- */
- void simSmsStorageFull(in RadioIndicationType type);
-
- /**
- * Indicates that SIM state changes. Callee must invoke getIccCardStatus().
- *
- * @param type Type of radio indication
- */
- void simStatusChanged(in RadioIndicationType type);
-
- /**
- * Indicates when Single Radio Voice Call Continuity (SRVCC) progress state has changed.
- *
- * @param type Type of radio indication
- * @param state New Srvcc State
- */
- void srvccStateNotify(in RadioIndicationType type, in SrvccState state);
-
- /**
- * Indicates when there is an ALPHA from UICC during Call Control.
- *
- * @param type Type of radio indication
- * @param alpha ALPHA string from UICC in UTF-8 format
- */
- void stkCallControlAlphaNotify(in RadioIndicationType type, in String alpha);
-
- /**
- * Indicates when SIM wants application to setup a voice call.
- *
- * @param type Type of radio indication
- * @param timeout Timeout value in millisec for setting up voice call
- */
- void stkCallSetup(in RadioIndicationType type, in long timeout);
-
- /**
- * Indicates when SIM notifies applcations some event happens.
- *
- * @param type Type of radio indication
- * @param cmd SAT/USAT commands or responses sent by ME to SIM or commands handled by ME,
- * represented as byte array starting with first byte of response data for command tag.
- * Refer to TS 102.223 section 9.4 for command types
- */
- void stkEventNotify(in RadioIndicationType type, in String cmd);
-
- /**
- * Indicates when SIM issue a STK proactive command to applications
- *
- * @param type Type of radio indication
- * @param cmd SAT/USAT proactive represented as byte array starting with command tag.
- * Refer to TS 102.223 section 9.4 for command types
- */
- void stkProactiveCommand(in RadioIndicationType type, in String cmd);
-
- /**
- * Indicates when STK session is terminated by SIM.
- *
- * @param type Type of radio indication
- */
- void stkSessionEnd(in RadioIndicationType type);
-
- /**
- * Indicated when there is a change in subscription status.
- * This event must be sent in the following scenarios
- * - subscription readiness at modem, which was selected by telephony layer
- * - when subscription is deactivated by modem due to UICC card removal
- * - when network invalidates the subscription i.e. attach reject due to authentication reject
- *
- * @param type Type of radio indication
- * @param activate false for subscription deactivated, true for subscription activated
- */
- void subscriptionStatusChanged(in RadioIndicationType type, in boolean activate);
-
- /**
- * Reports supplementary service related notification from the network.
- *
- * @param type Type of radio indication
- * @param suppSvc SuppSvcNotification as defined in types.hal
- */
- void suppSvcNotify(in RadioIndicationType type, in SuppSvcNotification suppSvc);
-
- /**
- * Report change of whether uiccApplications are enabled, or disabled.
- *
- * @param type Type of radio indication
- * @param enabled whether uiccApplications are enabled, or disabled
- */
- void uiccApplicationsEnablementChanged(in RadioIndicationType type, in boolean enabled);
-
- /**
- * The modem can explicitly set SetupDataCallResult::suggestedRetryTime after a failure in
- * IRadio.SetupDataCall. During that time, no new calls are allowed to IRadio.SetupDataCall that
- * use the same APN. When IRadioIndication.unthrottleApn is sent, AOSP will no longer throttle
- * calls to IRadio.SetupDataCall for the given APN.
- *
- * @param type Type of radio indication
- * @param apn Apn to unthrottle
- */
- void unthrottleApn(in RadioIndicationType type, in String apn);
-
- /**
- * Indicates that voice technology has changed. Responds with new rat.
- *
- * @param type Type of radio indication
- * @param rat Current new voice rat
- */
- void voiceRadioTechChanged(in RadioIndicationType type, in RadioTechnology rat);
-}
diff --git a/radio/aidl/android/hardware/radio/IRadioResponse.aidl b/radio/aidl/android/hardware/radio/IRadioResponse.aidl
deleted file mode 100644
index 4447bb1..0000000
--- a/radio/aidl/android/hardware/radio/IRadioResponse.aidl
+++ /dev/null
@@ -1,3039 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-import android.hardware.radio.ActivityStatsInfo;
-import android.hardware.radio.BarringInfo;
-import android.hardware.radio.Call;
-import android.hardware.radio.CallForwardInfo;
-import android.hardware.radio.CardStatus;
-import android.hardware.radio.CarrierRestrictions;
-import android.hardware.radio.CdmaBroadcastSmsConfigInfo;
-import android.hardware.radio.CdmaRoamingType;
-import android.hardware.radio.CdmaSubscriptionSource;
-import android.hardware.radio.CellIdentity;
-import android.hardware.radio.CellInfo;
-import android.hardware.radio.ClipStatus;
-import android.hardware.radio.DataRegStateResult;
-import android.hardware.radio.GsmBroadcastSmsConfigInfo;
-import android.hardware.radio.HardwareConfig;
-import android.hardware.radio.IccIoResult;
-import android.hardware.radio.KeepaliveStatus;
-import android.hardware.radio.LastCallFailCauseInfo;
-import android.hardware.radio.LceDataInfo;
-import android.hardware.radio.LceStatusInfo;
-import android.hardware.radio.NeighboringCell;
-import android.hardware.radio.OperatorInfo;
-import android.hardware.radio.PersoSubstate;
-import android.hardware.radio.PhonebookCapacity;
-import android.hardware.radio.PreferredNetworkType;
-import android.hardware.radio.RadioAccessFamily;
-import android.hardware.radio.RadioAccessSpecifier;
-import android.hardware.radio.RadioBandMode;
-import android.hardware.radio.RadioCapability;
-import android.hardware.radio.RadioResponseInfo;
-import android.hardware.radio.RadioTechnology;
-import android.hardware.radio.RadioTechnologyFamily;
-import android.hardware.radio.RegStateResult;
-import android.hardware.radio.SendSmsResult;
-import android.hardware.radio.SetupDataCallResult;
-import android.hardware.radio.SignalStrength;
-import android.hardware.radio.SimLockMultiSimPolicy;
-import android.hardware.radio.SlicingConfig;
-import android.hardware.radio.TtyMode;
-import android.hardware.radio.VoiceRegStateResult;
-
-/**
- * Interface declaring response functions to solicited radio requests.
- */
-@VintfStability
-oneway interface IRadioResponse {
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void acceptCallResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void acknowledgeIncomingGsmSmsWithPduResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_SMS_TO_ACK
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:NETWORK_NOT_READY
- * RadioError:INVALID_MODEM_STATE
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void acknowledgeLastIncomingCdmaSmsResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void acknowledgeLastIncomingGsmSmsResponse(in RadioResponseInfo info);
-
- /**
- * Acknowledge the receipt of radio request sent to the vendor. This must be sent only for
- * radio request which take long time to respond. For more details, refer
- * https://source.android.com/devices/tech/connect/ril.html
- *
- * @param serial Serial no. of the request whose acknowledgement is sent.
- */
- void acknowledgeRequest(in int serial);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param id The allocated id. On an error, this is set to 0.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_RESOURCES- Indicates that no pdu session ids are available
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void allocatePduSessionIdResponse(in RadioResponseInfo info, in int id);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param enabled whether Uicc applications are enabled.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:SIM_ABSENT
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- */
- void areUiccApplicationsEnabledResponse(in RadioResponseInfo info, in boolean enabled);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param dcResponse Attributes of data call
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_RESOURCES
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_CALL_ID
- */
- void cancelHandoverResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SIM_BUSY
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:INVALID_STATE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void cancelPendingUssdResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:PASSWORD_INCORRECT (old PIN2 is invalid)
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SIM_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_PUK2
- */
- void changeIccPin2ForAppResponse(in RadioResponseInfo info, in int remainingRetries);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:PASSWORD_INCORRECT
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SIM_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void changeIccPinForAppResponse(in RadioResponseInfo info, in int remainingRetries);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_STATE
- * RadioError:INVALID_CALL_ID
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void conferenceResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:REQUEST_NOT_SUPPORTED may be returned when HAL 1.2 or higher is supported.
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_CALL_ID
- * RadioError:INVALID_STATE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void deactivateDataCallResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:NO_SUCH_ENTRY
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:SIM_ABSENT
- */
- void deleteSmsOnRuimResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SIM_FULL
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:NO_SUCH_ENTRY
- * RadioError:INTERNAL_ERR
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:SIM_ABSENT
- */
- void deleteSmsOnSimResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:DIAL_MODIFIED_TO_USSD
- * RadioError:DIAL_MODIFIED_TO_SS
- * RadioError:DIAL_MODIFIED_TO_DIAL
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:INVALID_STATE
- * RadioError:NO_RESOURCES
- * RadioError:INTERNAL_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:MODEM_ERR
- * RadioError:NO_SUBSCRIPTION
- * RadioError:NO_NETWORK_FOUND
- * RadioError:INVALID_CALL_ID
- * RadioError:DEVICE_IN_USE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:ABORTED
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:CANCELLED
- */
- void dialResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:DIAL_MODIFIED_TO_USSD
- * RadioError:DIAL_MODIFIED_TO_SS
- * RadioError:DIAL_MODIFIED_TO_DIAL
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_RESOURCES
- * RadioError:INTERNAL_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:MODEM_ERR
- * RadioError:NO_SUBSCRIPTION
- * RadioError:NO_NETWORK_FOUND
- * RadioError:INVALID_CALL_ID
- * RadioError:DEVICE_IN_USE
- * RadioError:ABORTED
- * RadioError:INVALID_MODEM_STATE
- */
- void emergencyDialResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:MODEM_ERR
- * RadioError:INVALID_STATE: this is for the case that the API is called in a single-sim
- * mode, or when there is only one modem available, as this API should only
- * be called in multi sim status.
- */
- void enableModemResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:SIM_ABSENT
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:BUSY
- */
- void enableUiccApplicationsResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NO_ALLOWED
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void exitEmergencyCallbackModeResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_STATE
- * RadioError:NO_RESOURCES
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void explicitCallTransferResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param carriers Carrier restriction information.
- * @param multiSimPolicy Policy used for devices with multiple SIM cards.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void getAllowedCarriersResponse(in RadioResponseInfo info, in CarrierRestrictions carriers,
- in SimLockMultiSimPolicy multiSimPolicy);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param networkTypeBitmap a 32-bit bitmap of RadioAccessFamily.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:MODE_NOT_SUPPORTED
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- */
- void getAllowedNetworkTypesBitmapResponse(
- in RadioResponseInfo info, in RadioAccessFamily networkTypeBitmap);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param bandModes List of RadioBandMode listing supported modes
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getAvailableBandModesResponse(in RadioResponseInfo info, in RadioBandMode[] bandModes);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param networkInfos List of network operator information as OperatorInfos defined in
- * types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:ABORTED
- * RadioError:DEVICE_IN_USE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:CANCELLED
- * RadioError:NO_RESOURCES
- * RadioError:INTERNAL_ERR
- */
- void getAvailableNetworksResponse(in RadioResponseInfo info, in OperatorInfo[] networkInfos);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param cellIdentity CellIdentity for the barring infos.
- * @param barringInfos a vector of barring info for all barring service types
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:MODEM_ERR
- */
- void getBarringInfoResponse(
- in RadioResponseInfo info, in CellIdentity cellIdentity, in BarringInfo[] barringInfos);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param version string containing version string for log reporting
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:EMPTY_RECORD
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:NOT_PROVISIONED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getBasebandVersionResponse(in RadioResponseInfo info, in String version);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param mdn MDN if CDMA subscription is available
- * @param hSid is a comma separated list of H_SID (Home SID) if CDMA subscription is available,
- * in decimal format
- * @param hNid is a comma separated list of H_NID (Home NID) if CDMA subscription is available,
- * in decimal format
- * @param min MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
- * @param prl PRL version if CDMA subscription is available
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SUBSCRIPTION_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:NOT_PROVISIONED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void getCDMASubscriptionResponse(in RadioResponseInfo info, in String mdn, in String hSid,
- in String hNid, in String min, in String prl);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param callForwardInfos points to a vector of CallForwardInfo, one for each distinct
- * registered phone number. For example, if data is forwarded to +18005551212 and voice
- * is forwarded to +18005559999, then two separate CallForwardInfo's must be returned.
- * However, if both data and voice are forwarded to +18005551212, then a single
- * CallForwardInfo must be returned with the service class set to "data + voice = 3".
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SYSTEM_ERR
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getCallForwardStatusResponse(
- in RadioResponseInfo info, in CallForwardInfo[] callForwardInfos);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param enable If current call waiting state is disabled, enable = false else true
- * @param serviceClass If enable, then callWaitingResp[1] must follow, with the TS 27.007
- * service class bit vector of services for which call waiting is enabled. For example,
- * if callWaitingResp[0] is 1 and callWaitingResp[1] is 3, then call waiting is enabled
- * for data and voice and disabled for everything else.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getCallWaitingResponse(in RadioResponseInfo info, in boolean enable, in int serviceClass);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param configs Vector of CDMA Broadcast SMS configs.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:NO_RESOURCES
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- */
- void getCdmaBroadcastConfigResponse(
- in RadioResponseInfo info, in CdmaBroadcastSmsConfigInfo[] configs);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param type CdmaRoamingType defined in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void getCdmaRoamingPreferenceResponse(in RadioResponseInfo info, in CdmaRoamingType type);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param source CDMA subscription source
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SUBSCRIPTION_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_ABSENT
- */
- void getCdmaSubscriptionSourceResponse(
- in RadioResponseInfo info, in CdmaSubscriptionSource source);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param cellInfo List of current cell information known to radio
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- */
- void getCellInfoListResponse(in RadioResponseInfo info, in CellInfo[] cellInfo);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param status indicates CLIP status
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getClipResponse(in RadioResponseInfo info, in ClipStatus status);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param n is "n" parameter from TS 27.007 7.7
- * @param m is "m" parameter from TS 27.007 7.7
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getClirResponse(in RadioResponseInfo info, in int n, in int m);
-
- /**
- * @param info Response info struct containing respontype, serial no. and error
- * @param calls Current call list
- *
- * Valid errors returned:
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getCurrentCallsResponse(in RadioResponseInfo info, in Call[] calls);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param dcResponse List of SetupDataCallResult as defined in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:SIM_ABSENT
- */
- void getDataCallListResponse(in RadioResponseInfo info, in SetupDataCallResult[] dcResponse);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param dataRegResponse Current Data registration response as defined by RegStateResult in
- * types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NOT_PROVISIONED
- */
- void getDataRegistrationStateResponse(
- in RadioResponseInfo info, in RegStateResult dataRegResponse);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param imei IMEI if GSM subscription is available
- * @param imeisv IMEISV if GSM subscription is available
- * @param esn ESN if CDMA subscription is available
- * @param meid MEID if CDMA subscription is available
- *
- * If a empty string value is returned for any of the device id, it means that there was error
- * accessing the device.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:NOT_PROVISIONED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void getDeviceIdentityResponse(in RadioResponseInfo info, in String imei, in String imeisv,
- in String esn, in String meid);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param response 0 is the TS 27.007 service class bit vector of services for which the
- * specified barring facility is active. "0" means "disabled for all"
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getFacilityLockForAppResponse(in RadioResponseInfo info, in int response);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param configs Vector of GSM/WCDMA Cell broadcast configs
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:NO_RESOURCES
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- */
- void getGsmBroadcastConfigResponse(
- in RadioResponseInfo info, in GsmBroadcastSmsConfigInfo[] configs);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param config Array of HardwareConfig of the radio.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void getHardwareConfigResponse(in RadioResponseInfo info, in HardwareConfig[] config);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param imsi String containing the IMSI
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_SIM_STATE
- * RadioError:SIM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void getIMSIForAppResponse(in RadioResponseInfo info, in String imsi);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param cardStatus ICC card status as defined by CardStatus in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_RESOURCES
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void getIccCardStatusResponse(in RadioResponseInfo info, in CardStatus cardStatus);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param isRegistered false = not registered, true = registered
- * @param ratFamily RadioTechnologyFamily as defined in types.hal. This value is valid only if
- * isRegistered is true.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void getImsRegistrationStateResponse(
- in RadioResponseInfo info, in boolean isRegistered, in RadioTechnologyFamily ratFamily);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param failCauseInfo Contains LastCallFailCause and vendor cause code.
- *
- * The vendor cause code must be used for debugging purpose only. The implementation must return
- * one of the values of LastCallFailCause as mentioned below.
- * GSM failure reasons codes for the cause codes defined in TS 24.008 Annex H where possible.
- * CDMA failure reasons codes for the possible call failure scenarios described in the
- * "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
- * Any of the following reason codes if the call is failed or dropped due to reason mentioned
- * with in the braces.
- * LastCallFailCause:RADIO_OFF (Radio is OFF)
- * LastCallFailCause:OUT_OF_SERVICE (No cell coverage)
- * LastCallFailCause:NO_VALID_SIM (No valid SIM)
- * LastCallFailCause:RADIO_INTERNAL_ERROR (Modem hit unexpected error scenario)
- * LastCallFailCause:NETWORK_RESP_TIMEOUT (No response from network)
- * LastCallFailCause:NETWORK_REJECT (Explicit network reject)
- * LastCallFailCause:RADIO_ACCESS_FAILURE (RRC connection failure. Eg.RACH)
- * LastCallFailCause:RADIO_LINK_FAILURE (Radio Link Failure)
- * LastCallFailCause:RADIO_LINK_LOST (Radio link lost due to poor coverage)
- * LastCallFailCause:RADIO_UPLINK_FAILURE (Radio uplink failure)
- * LastCallFailCause:RADIO_SETUP_FAILURE (RRC connection setup failure)
- * LastCallFailCause:RADIO_RELEASE_NORMAL (RRC connection release, normal)
- * LastCallFailCause:RADIO_RELEASE_ABNORMAL (RRC connection release, abnormal)
- * LastCallFailCause:ACCESS_CLASS_BLOCKED (Access class barring)
- * LastCallFailCause:NETWORK_DETACH (Explicit network detach)
- * OEM causes (LastCallFailCause:OEM_CAUSE_XX) must be used for debug purpose only
- *
- * If the implementation does not have access to the exact cause codes, then it must return one
- * of the values listed in LastCallFailCause, as the UI layer needs to distinguish these cases
- * for tone generation or error notification.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:NO_MEMORY
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INTERNAL_ERR
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getLastCallFailCauseResponse(
- in RadioResponseInfo info, in LastCallFailCauseInfo failCauseinfo);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param activityInfo modem activity information
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:NOT_PROVISIONED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void getModemActivityInfoResponse(in RadioResponseInfo info, in ActivityStatsInfo activityInfo);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:MODEM_ERR
- */
- void getModemStackStatusResponse(in RadioResponseInfo info, in boolean isEnabled);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param enable true for "mute enabled" and false for "mute disabled"
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getMuteResponse(in RadioResponseInfo info, in boolean enable);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param cells Vector of neighboring radio cell
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:NO_NETWORK_FOUND
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getNeighboringCidsResponse(in RadioResponseInfo info, in NeighboringCell[] cells);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param selection false for automatic selection, true for manual selection
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getNetworkSelectionModeResponse(in RadioResponseInfo info, in boolean manual);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param longName is long alpha ONS or EONS or empty string if unregistered
- * @param shortName is short alpha ONS or EONS or empty string if unregistered
- * @param numeric is 5 or 6 digit numeric code (MCC + MNC) or empty string if unregistered
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getOperatorResponse(
- in RadioResponseInfo info, in String longName, in String shortName, in String numeric);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param networkTypeBitmap a 32-bit bitmap of RadioAccessFamily.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- */
- void getPreferredNetworkTypeBitmapResponse(
- in RadioResponseInfo info, in RadioAccessFamily networkTypeBitmap);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param nwType RadioPreferredNetworkType defined in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getPreferredNetworkTypeResponse(in RadioResponseInfo info, in PreferredNetworkType nwType);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param enable false for Standard Privacy Mode (Public Long Code Mask)
- * true for Enhanced Privacy Mode (Private Long Code Mask)
- *
- * Valid errors:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getPreferredVoicePrivacyResponse(in RadioResponseInfo info, in boolean enable);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param rc Radio capability as defined by RadioCapability in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INVALID_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getRadioCapabilityResponse(in RadioResponseInfo info, in RadioCapability rc);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param signalStrength Current signal strength
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- */
- void getSignalStrengthResponse(in RadioResponseInfo info, in SignalStrength signalStrength);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param capacity Response capacity enum indicating response processing status
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SIM_STATE
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * REQUEST_NOT_SUPPORTED may only be returned on devices that don't support this API,
- * indicated by the HAL capability CAPABILITY_SIM_PHONEBOOK_IN_MODEM.
- */
- void getSimPhonebookCapacityResponse(in RadioResponseInfo info, in PhonebookCapacity capacity);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SIM_STATE
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * REQUEST_NOT_SUPPORTED may only be returned on devices that don't support this API,
- * indicated by the HAL capability CAPABILITY_SIM_PHONEBOOK_IN_MODEM.
- */
- void getSimPhonebookRecordsResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param slicingConfig Current slicing configuration
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:MODEM_ERR
- */
- void getSlicingConfigResponse(in RadioResponseInfo info, in SlicingConfig slicingConfig);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param smsc Short Message Service Center address on the device
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:MODEM_ERR
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NOT_PROVISIONED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void getSmscAddressResponse(in RadioResponseInfo info, in String smsc);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param specifiers List of RadioAccessSpecifiers that are scanned.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_ARGUMENTS
- */
- void getSystemSelectionChannelsResponse(
- in RadioResponseInfo info, in RadioAccessSpecifier[] specifiers);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param mode TtyMode
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void getTTYModeResponse(in RadioResponseInfo info, in TtyMode mode);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param rat Current voice RAT
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void getVoiceRadioTechnologyResponse(in RadioResponseInfo info, in RadioTechnology rat);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param voiceRegResponse Current Voice registration response as defined by RegStateResult
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- */
- void getVoiceRegistrationStateResponse(
- in RadioResponseInfo info, in RegStateResult voiceRegResponse);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_ABSENT
- */
- void handleStkCallSetupRequestFromSimResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:INVALID_STATE
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void hangupConnectionResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:NO_RESOURCES
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void hangupForegroundResumeBackgroundResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:NO_RESOURCES
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:CANCELLED
- */
- void hangupWaitingOrBackgroundResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void iccCloseLogicalChannelResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param iccIo ICC io operation response as defined by IccIoResult in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SIM_PIN2
- * RadioError:SIM_PUK2
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_SIM_STATE
- * RadioError:SIM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void iccIOForAppResponse(in RadioResponseInfo info, in IccIoResult iccIo);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param channelId session id of the logical channel.
- * @param selectResponse Contains the select response for the open channel command with one
- * byte per integer
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:MISSING_RESOURCE
- * RadioError:NO_SUCH_ELEMENT
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ERR
- * RadioError:INVALID_SIM_STATE
- * RadioError:MISSING_RESOURCE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void iccOpenLogicalChannelResponse(
- in RadioResponseInfo info, in int channelId, in byte[] selectResponse);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param result IccIoResult as defined in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void iccTransmitApduBasicChannelResponse(in RadioResponseInfo info, in IccIoResult result);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param result IccIoResult as defined in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void iccTransmitApduLogicalChannelResponse(in RadioResponseInfo info, in IccIoResult result);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param isEnabled Indicates whether NR dual connectivity is enabled or not, True if enabled
- * else false.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void isNrDualConnectivityEnabledResponse(in RadioResponseInfo info, in boolean isEnabled);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param result string containing the contents of the NV item
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void nvReadItemResponse(in RadioResponseInfo info, in String result);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void nvResetConfigResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void nvWriteCdmaPrlResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void nvWriteItemResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param lceInfo LceDataInfo indicating LCE data
- *
- * Valid errors returned:
- * RadioError:REQUEST_NOT_SUPPORTED may be returned when HAL 1.2 or higher is supported.
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:LCE_NOT_SUPPORTED
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void pullLceDataResponse(in RadioResponseInfo info, in LceDataInfo lceInfo);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:INVALID_STATE
- * RadioError:NO_RESOURCES
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void rejectCallResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_RESOURCES
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void releasePduSessionIdResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:MODEM_ERR
- * RadioError:INVALID_STATE
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void reportSmsMemoryStatusResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void reportStkServiceIsRunningResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param result IccIoResult as defined in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:SIM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void requestIccSimAuthenticationResponse(in RadioResponseInfo info, in IccIoResult result);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param response response string of the challenge/response algo for ISIM auth in base64 format
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_ABSENT
- */
- void requestIsimAuthenticationResponse(in RadioResponseInfo info, in String response);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void requestShutdownResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:INVALID_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:OPERATION_NOT_ALLOWED
- */
- void sendBurstDtmfResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:INVALID_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:OPERATION_NOT_ALLOWED
- */
- void sendCDMAFeatureCodeResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param sms Response to sms sent as defined by SendSmsResult in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SMS_SEND_FAIL_RETRY
- * RadioError:NETWORK_REJECT
- * RadioError:INVALID_STATE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:INVALID_SMS_FORMAT
- * RadioError:SYSTEM_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:ENCODING_ERR
- * RadioError:INVALID_SMSC_ADDRESS
- * RadioError:MODEM_ERR
- * RadioError:NETWORK_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NETWORK_NOT_READY
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- * RadioError:SIMULTANEOUS_SMS_AND_CALL_NOT_ALLOWED
- * RadioError:ACCESS_BARRED
- * RadioError:BLOCKED_DUE_TO_CALL
- */
- void sendCdmaSmsExpectMoreResponse(in RadioResponseInfo info, in SendSmsResult sms);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param sms Sms result struct as defined by SendSmsResult in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SMS_SEND_FAIL_RETRY
- * RadioError:NETWORK_REJECT
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:INVALID_SMS_FORMAT
- * RadioError:SYSTEM_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:MODEM_ERR
- * RadioError:NETWORK_ERR
- * RadioError:ENCODING_ERR
- * RadioError:INVALID_SMSC_ADDRESS
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:ENCODING_ERR
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- * RadioError:SIMULTANEOUS_SMS_AND_CALL_NOT_ALLOWED
- * RadioError:ACCESS_BARRED
- * RadioError:BLOCKED_DUE_TO_CALL
- */
- void sendCdmaSmsResponse(in RadioResponseInfo info, in SendSmsResult sms);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void sendDeviceStateResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_RESOURCES
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- */
- void sendDtmfResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param commandResponse SAT/USAT response in hexadecimal format string starting with first
- * byte of response
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SIM_BUSY
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_ABSENT
- */
- void sendEnvelopeResponse(in RadioResponseInfo info, in String commandResponse);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param iccIo IccIoResult as defined in types.hal corresponding to ICC IO response
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SIM_BUSY
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_ABSENT
- */
- void sendEnvelopeWithStatusResponse(in RadioResponseInfo info, in IccIoResult iccIo);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param sms Response to sms sent as defined by SendSmsResult in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SMS_SEND_FAIL_RETRY
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:NETWORK_REJECT
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:INVALID_SMS_FORMAT
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:MODEM_ERR
- * RadioError:NETWORK_ERR
- * RadioError:ENCODING_ERR
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NETWORK_NOT_READY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void sendImsSmsResponse(in RadioResponseInfo info, in SendSmsResult sms);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param sms Response to sms sent as defined by SendSmsResult in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SMS_SEND_FAIL_RETRY
- * RadioError:NETWORK_REJECT
- * RadioError:INVALID_STATE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:INVALID_SMS_FORMAT
- * RadioError:SYSTEM_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:ENCODING_ERR
- * RadioError:INVALID_SMSC_ADDRESS
- * RadioError:MODEM_ERR
- * RadioError:NETWORK_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NETWORK_NOT_READY
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void sendSMSExpectMoreResponse(in RadioResponseInfo info, in SendSmsResult sms);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param sms Response to sms sent as defined by SendSmsResult in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SMS_SEND_FAIL_RETRY
- * RadioError:NETWORK_REJECT
- * RadioError:INVALID_STATE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:INVALID_SMS_FORMAT
- * RadioError:SYSTEM_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:ENCODING_ERR
- * RadioError:INVALID_SMSC_ADDRESS
- * RadioError:MODEM_ERR
- * RadioError:NETWORK_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NETWORK_NOT_READY
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- * RadioError:ACCESS_BARRED
- * RadioError:BLOCKED_DUE_TO_CALL
- */
- void sendSmsExpectMoreResponse(in RadioResponseInfo info, in SendSmsResult sms);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param sms Response to sms sent as defined by SendSmsResult in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SMS_SEND_FAIL_RETRY
- * RadioError:NETWORK_REJECT
- * RadioError:INVALID_STATE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:INVALID_SMS_FORMAT
- * RadioError:SYSTEM_ERR
- * RadioError:ENCODING_ERR
- * RadioError:INVALID_SMSC_ADDRESS
- * RadioError:MODEM_ERR
- * RadioError:NETWORK_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NETWORK_NOT_READY
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- * RadioError:ACCESS_BARRED
- * RadioError:BLOCKED_DUE_TO_CALL
- */
- void sendSmsResponse(in RadioResponseInfo info, in SendSmsResult sms);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_ABSENT
- */
- void sendTerminalResponseToSimResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:USSD_MODIFIED_TO_DIAL
- * RadioError:USSD_MODIFIED_TO_SS
- * RadioError:USSD_MODIFIED_TO_USSD
- * RadioError:SIM_BUSY
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:ABORTED
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void sendUssdResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_STATE
- * RadioError:NO_RESOURCES
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:CANCELLED
- */
- void separateConnectionResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void setAllowedCarriersResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:MODE_NOT_SUPPORTED
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- */
- void setAllowedNetworkTypesBitmapResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setBandModeResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setBarringPasswordResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_STATE
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setCallForwardResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_STATE
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setCallWaitingResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:RIL_E_SUCCESS
- * RadioError:RIL_E_RADIO_NOT_AVAILABLE
- * RadioError:SIM_ABSENT
- * RadioError:RIL_E_REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_INTERNAL_FAILURE
- */
- void setCarrierInfoForImsiEncryptionResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- */
- void setCdmaBroadcastActivationResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- */
- void setCdmaBroadcastConfigResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void setCdmaRoamingPreferenceResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SIM_ABSENT
- * RadioError:SUBSCRIPTION_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void setCdmaSubscriptionSourceResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void setCellInfoListRateResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setClirResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:DEVICE_IN_USE
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void setDataAllowedResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SUBSCRIPTION_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_ABSENT
- */
- void setDataProfileResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:MODEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void setDataThrottlingResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param retry 0 is the number of retries remaining, or -1 if unknown
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SS_MODIFIED_TO_DIAL
- * RadioError:SS_MODIFIED_TO_USSD
- * RadioError:SS_MODIFIED_TO_SS
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_STATE
- * RadioError:FDN_CHECK_FAILURE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setFacilityLockForAppResponse(in RadioResponseInfo info, in int retry);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- */
- void setGsmBroadcastActivationResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- */
- void setGsmBroadcastConfigResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- */
- void setIndicationFilterResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SUBSCRIPTION_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NOT_PROVISIONED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setInitialAttachApnResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- */
- void setLinkCapacityReportingCriteriaResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void setLocationUpdatesResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_MEMORY
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setMuteResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:ILLEGAL_SIM_OR_ME
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- *
- * Returns RadioError:ILLEGAL_SIM_OR_ME when the failure is permanent and
- * no retries needed, such as illegal SIM or ME.
- */
- void setNetworkSelectionModeAutomaticResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:ILLEGAL_SIM_OR_ME
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- *
- * Returns RadioError:ILLEGAL_SIM_OR_ME when the failure is permanent and
- * no retries needed, such as illegal SIM or ME.
- */
- void setNetworkSelectionModeManualResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_STATE
- */
- void setNrDualConnectivityStateResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:MODE_NOT_SUPPORTED
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- */
- void setPreferredNetworkTypeBitmapResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:MODE_NOT_SUPPORTED
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setPreferredNetworkTypeResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_CALL_ID
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setPreferredVoicePrivacyResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param rc Radio capability as defined by RadioCapability in types.hal used to
- * feedback return status
- *
- * Valid errors returned:
- * RadioError:NONE means a unsol radioCapability() will be sent within 30 seconds.
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:INVALID_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setRadioCapabilityResponse(in RadioResponseInfo info, in RadioCapability rc);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:RF_HARDWARE_ISSUE
- * RadioError:NO_RF_CALIBRATION_INFO
- */
- void setRadioPowerResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:RADIO_NOT_AVAILABLE
- */
- void setSignalStrengthReportingCriteriaResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SIM_ERR (indicates a timeout or other issue making the SIM unresponsive)
- */
- void setSimCardPowerResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SMS_FORMAT
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_RATE_LIMITED
- * RadioError:MODEM_ERR
- * RadioError:NO_RESOURCES
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void setSmscAddressResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SIM_BUSY
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void setSuppServiceNotificationsResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_ARGUMENTS
- */
- void setSystemSelectionChannelsResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setTTYModeResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SUBSCRIPTION_NOT_SUPPORTED
- * RadioError:NO_MEMORY
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void setUiccSubscriptionResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param dcResponse SetupDataCallResult defined in types.hal
- *
- * Valid errors returned:
- * RadioError:NONE must be returned on both success and failure of setup with the
- * DataCallResponse.status containing the actual status
- * For all other errors the DataCallResponse is ignored.
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:OP_NOT_ALLOWED_BEFORE_REG_TO_NW
- * RadioError:OP_NOT_ALLOWED_DURING_VOICE_CALL
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INTERNAL_ERR
- * RadioError:NO_RESOURCES if the vendor is unable handle due to resources are full.
- * RadioError:SIM_ABSENT
- */
- void setupDataCallResponse(in RadioResponseInfo info, in SetupDataCallResult dcResponse);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_RESOURCES
- * RadioError:NO_MEMORY
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- */
- void startDtmfResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INTERNAL_ERR
- * RadioError:NO_RESOURCES
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_CALL_ID
- */
- void startHandoverResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param status Status object containing a new handle and a current status. The status returned
- * here may be PENDING to indicate that the radio has not yet processed the keepalive
- * request.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:NO_RESOURCES
- * RadioError:INVALID_ARGUMENTS
- */
- void startKeepaliveResponse(in RadioResponseInfo info, in KeepaliveStatus status);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param statusInfo LceStatusInfo indicating LCE status
- *
- * Valid errors returned:
- * RadioError:REQUEST_NOT_SUPPORTED may be returned when HAL 1.2 or higher is supported.
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:LCE_NOT_SUPPORTED
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void startLceServiceResponse(in RadioResponseInfo info, in LceStatusInfo statusInfo);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:DEVICE_IN_USE
- * RadioError:INTERNAL_ERR
- * RadioError:MODEM_ERR
- * RadioError:INVALID_ARGUMENTS
- */
- void startNetworkScanResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_RESOURCES
- * RadioError:NO_MEMORY
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_CALL_ID
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- */
- void stopDtmfResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:INVALID_ARGUMENTS
- */
- void stopKeepaliveResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param statusInfo LceStatusInfo indicating LCE status
- *
- * Valid errors returned:
- * RadioError:REQUEST_NOT_SUPPORTED may be returned when HAL 1.2 or higher is supported.
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:LCE_NOT_SUPPORTED
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:SIM_ABSENT
- */
- void stopLceServiceResponse(in RadioResponseInfo info, in LceStatusInfo statusInfo);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:INTERNAL_ERR
- * RadioError:MODEM_ERR
- */
- void stopNetworkScanResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:PASSWORD_INCORRECT
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SIM_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_PUK2
- */
- void supplyIccPin2ForAppResponse(in RadioResponseInfo info, in int remainingRetries);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:PASSWORD_INCORRECT
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SIM_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void supplyIccPinForAppResponse(in RadioResponseInfo info, in int remainingRetries);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:PASSWORD_INCORRECT (PUK is invalid)
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SIM_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void supplyIccPuk2ForAppResponse(in RadioResponseInfo info, in int remainingRetries);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:PASSWORD_INCORRECT (PUK is invalid)
- * RadioError:INTERNAL_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SIM_STATE
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void supplyIccPukForAppResponse(in RadioResponseInfo info, in int remainingRetries);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:PASSWORD_INCORRECT (code is invalid)
- * RadioError:NO_MEMORY
- * RadioError:INVALID_SIM_STATE
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:SIM_ABSENT
- */
- void supplyNetworkDepersonalizationResponse(in RadioResponseInfo info, in int remainingRetries);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param persoType SIM Personalisation type
- * @param remainingRetries postiive values indicates number of retries remaining, must be equal
- * to -1 if number of retries is infinite.
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:PASSWORD_INCORRECT (code is invalid)
- * RadioError:NO_MEMORY
- * RadioError:INVALID_SIM_STATE
- * RadioError:INTERNAL_ERR
- * RadioError:SYSTEM_ERR
- * RadioError:MODEM_ERR
- * RadioError:INVALID_ARGUMENTS
- * RadioError:NO_RESOURCES
- * RadioError:REQUEST_NOT_SUPPORTED
- */
- void supplySimDepersonalizationResponse(
- in RadioResponseInfo info, in PersoSubstate persoType, in int remainingRetries);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
- * RadioError:INVALID_STATE
- * RadioError:NO_MEMORY
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:INVALID_STATE
- * RadioError:INVALID_CALL_ID
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- */
- void switchWaitingOrHoldingAndActiveResponse(in RadioResponseInfo info);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param updatedRecordIndex The index of the updated or inserted record in the phonebook and
- * the minimum value is 1
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SIM_STATE
- * RadioError:MODEM_ERR
- * RadioError:INTERNAL_ERR
- * RadioError:SIM_ERR
- * RadioError:NO_SUCH_ENTRY
- * RadioError:NO_RESOURCES
- * REQUEST_NOT_SUPPORTED may only be returned on devices that don't support this API,
- * indicated by the HAL capability CAPABILITY_SIM_PHONEBOOK_IN_MODEM.
- */
- void updateSimPhonebookRecordsResponse(in RadioResponseInfo info, in int updatedRecordIndex);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param index record index where the cmda sms message is stored
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SMS_FORMAT
- * RadioError:SIM_FULL
- * RadioError:INTERNAL_ERR
- * RadioError:MODEM_ERR
- * RadioError:ENCODING_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:INVALID_MODEM_STATE
- * RadioError:INVALID_SMSC_ADDRESS
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:NO_RESOURCES
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:SIM_ABSENT
- */
- void writeSmsToRuimResponse(in RadioResponseInfo info, in int index);
-
- /**
- * @param info Response info struct containing response type, serial no. and error
- * @param index record index where the message is stored
- *
- * Valid errors returned:
- * RadioError:NONE
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SIM_FULL
- * RadioError:INVALID_ARGUMENTS
- * RadioError:INVALID_SMS_FORMAT
- * RadioError:INTERNAL_ERR
- * RadioError:MODEM_ERR
- * RadioError:ENCODING_ERR
- * RadioError:NO_MEMORY
- * RadioError:NO_RESOURCES
- * RadioError:INVALID_MODEM_STATE
- * RadioError:OPERATION_NOT_ALLOWED
- * RadioError:INVALID_SMSC_ADDRESS
- * RadioError:RADIO_NOT_AVAILABLE
- * RadioError:SYSTEM_ERR
- * RadioError:REQUEST_NOT_SUPPORTED
- * RadioError:CANCELLED
- * RadioError:INVALID_MODEM_STATE
- * RadioError:SIM_ABSENT
- */
- void writeSmsToSimResponse(in RadioResponseInfo info, in int index);
-}
diff --git a/radio/aidl/android/hardware/radio/IndicationFilter.aidl b/radio/aidl/android/hardware/radio/IndicationFilter.aidl
deleted file mode 100644
index 826c8c1..0000000
--- a/radio/aidl/android/hardware/radio/IndicationFilter.aidl
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-@VintfStability
-@Backing(type="int")
-enum IndicationFilter {
- NONE = 0,
- ALL = ~0,
- /**
- * When this bit is set, modem must send the signal strength update through
- * IRadioIndication.currentSignalStrength() when all criteria specified by
- * IRadio.setSignalStrengthReportingCriteria() are met.
- */
- SIGNAL_STRENGTH = 1 << 0,
- /**
- * When this bit is set, modem must invoke IRadioIndication.networkStateChanged() when any field
- * in VoiceRegStateResult or DataRegStateResult changes. When this bit is not set, modem must
- * suppress IRadioIndication.networkStateChanged() when there are only changes from
- * insignificant fields. Modem must invoke IRadioIndication.networkStateChanged() when
- * significant fields are updated regardless of whether this bit is set.
- *
- * The following fields are considered significant: VoiceRegStateResult.regState,
- * VoiceRegStateResult.rat, DataRegStateResult.regState, DataRegStateResult.rat.
- */
- FULL_NETWORK_STATE = 1 << 1,
- /**
- * When this bit is set, modem must send IRadioIndication.dataCallListChanged() whenever any
- * field in ITypes.SetupDataCallResult changes. When this bit is not set, modem must suppress
- * the indication when the only changed field is 'active' (for data dormancy). For all other
- * field changes, the modem must send IRadioIndication.dataCallListChanged() regardless of
- * whether this bit is set.
- */
- DATA_CALL_DORMANCY_CHANGED = 1 << 2,
- /**
- * When this bit is set, modem must send the link capacity update through
- * IRadioIndication.currentLinkCapacityEstimate() when all criteria specified by
- * IRadio.setLinkCapacityReportingCriteria() are met.
- */
- LINK_CAPACITY_ESTIMATE = 1 << 3,
- /**
- * When this bit is set, the modem must send the physical channel configuration update through
- * IRadioIndication.currentPhysicalChannelConfigs() when the configuration has changed. It is
- * recommended that this be reported whenever link capacity or signal strength is reported.
- */
- PHYSICAL_CHANNEL_CONFIG = 1 << 4,
- /**
- * Control the unsolicited sending of registration failure reports via onRegistrationFailed
- */
- REGISTRATION_FAILURE = 1 << 5,
- /**
- * Control the unsolicited sending of barring info updates via onBarringInfo
- */
- BARRING_INFO = 1 << 6,
-}
diff --git a/radio/aidl/android/hardware/radio/LceStatusInfo.aidl b/radio/aidl/android/hardware/radio/LceStatusInfo.aidl
deleted file mode 100644
index d663d38..0000000
--- a/radio/aidl/android/hardware/radio/LceStatusInfo.aidl
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-@VintfStability
-parcelable LceStatusInfo {
- const int LCE_STATUS_NOT_SUPPORTED = 0;
- const int LCE_STATUS_STOPPED = 1;
- const int LCE_STATUS_ACTIVE = 2;
-
- /**
- * Values are LCE_STATUS_
- */
- int lceStatus;
- /**
- * Actual LCE reporting interval, meaningful only if LceStatus = ACTIVE.
- */
- byte actualIntervalMs;
-}
diff --git a/radio/aidl/android/hardware/radio/PreferredNetworkType.aidl b/radio/aidl/android/hardware/radio/PreferredNetworkType.aidl
deleted file mode 100644
index 7ca38c6..0000000
--- a/radio/aidl/android/hardware/radio/PreferredNetworkType.aidl
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-@VintfStability
-@Backing(type="int")
-enum PreferredNetworkType {
- /**
- * GSM/WCDMA (WCDMA preferred)
- */
- GSM_WCDMA,
- /**
- * GSM only
- */
- GSM_ONLY,
- /**
- * WCDMA
- */
- WCDMA,
- /**
- * GSM/WCDMA (auto mode, according to PRL)
- */
- GSM_WCDMA_AUTO,
- /**
- * CDMA and EvDo (auto mode, according to PRL)
- */
- CDMA_EVDO_AUTO,
- /**
- * CDMA only
- */
- CDMA_ONLY,
- /**
- * EvDo only
- */
- EVDO_ONLY,
- /**
- * GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL)
- */
- GSM_WCDMA_CDMA_EVDO_AUTO,
- /**
- * LTE, CDMA and EvDo
- */
- LTE_CDMA_EVDO,
- /**
- * LTE, GSM/WCDMA
- */
- LTE_GSM_WCDMA,
- /**
- * LTE, CDMA, EvDo, GSM/WCDMA
- */
- LTE_CMDA_EVDO_GSM_WCDMA,
- /**
- * LTE only
- */
- LTE_ONLY,
- /**
- * LTE/WCDMA only
- */
- LTE_WCDMA,
- /**
- * TD-SCDMA only
- */
- TD_SCDMA_ONLY,
- /**
- * TD-SCDMA and WCDMA
- */
- TD_SCDMA_WCDMA,
- /**
- * TD-SCDMA and LTE
- */
- TD_SCDMA_LTE,
- /**
- * TD-SCDMA and GSM
- */
- TD_SCDMA_GSM,
- /**
- * TD-SCDMA,GSM and LTE
- */
- TD_SCDMA_GSM_LTE,
- /**
- * TD-SCDMA, GSM/WCDMA
- */
- TD_SCDMA_GSM_WCDMA,
- /**
- * TD-SCDMA, WCDMA and LTE
- */
- TD_SCDMA_WCDMA_LTE,
- /**
- * TD-SCDMA, GSM/WCDMA and LTE
- */
- TD_SCDMA_GSM_WCDMA_LTE,
- /**
- * TD-SCDMA, GSM/WCDMA, CDMA and EvDo
- */
- TD_SCDMA_GSM_WCDMA_CDMA_EVDO_AUTO,
- /**
- * TD-SCDMA, LTE, CDMA, EvDo GSM/WCDMA
- */
- TD_SCDMA_LTE_CDMA_EVDO_GSM_WCDMA,
-}
diff --git a/radio/aidl/android/hardware/radio/RadioAccessNetworks.aidl b/radio/aidl/android/hardware/radio/RadioAccessNetworks.aidl
deleted file mode 100644
index 3757233..0000000
--- a/radio/aidl/android/hardware/radio/RadioAccessNetworks.aidl
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-@VintfStability
-@Backing(type="int")
-enum RadioAccessNetworks {
- UNKNOWN,
- /**
- * GSM EDGE Radio Access Network
- */
- GERAN,
- /**
- * Universal Terrestrial Radio Access Network
- */
- UTRAN,
- /**
- * Evolved Universal Terrestrial Radio Access Network
- */
- EUTRAN,
- /**
- * Next Generation Radio Access Network
- */
- NGRAN,
- /**
- * CDMA 2000 Network
- */
- CDMA2000,
-}
diff --git a/radio/aidl/android/hardware/radio/RadioFrequencyInfo.aidl b/radio/aidl/android/hardware/radio/RadioFrequencyInfo.aidl
deleted file mode 100644
index 140d65a..0000000
--- a/radio/aidl/android/hardware/radio/RadioFrequencyInfo.aidl
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-@VintfStability
-union RadioFrequencyInfo {
- /**
- * Indicates the frequency range is below 1GHz.
- */
- const int FREQUENCY_RANGE_LOW = 1;
- /**
- * Indicates the frequency range is between 1GHz and 3GHz.
- */
- const int FREQUENCY_RANGE_MID = 2;
- /**
- * Indicates the frequency range is between 3GHz and 6GHz.
- */
- const int FREQUENCY_RANGE_HIGH = 3;
- /**
- * Indicates the frequency range is above 6GHz (millimeter wave frequency).
- */
- const int FREQUENCY_RANGE_MMWAVE = 4;
-
- boolean noinit;
- /**
- * A rough frequency range.
- * Values are FREQUENCY_RANGE_
- */
- int range;
- /**
- * The Absolute Radio Frequency Channel Number.
- */
- int channelNumber;
-}
diff --git a/radio/aidl/android/hardware/radio/VoiceRegStateResult.aidl b/radio/aidl/android/hardware/radio/VoiceRegStateResult.aidl
deleted file mode 100644
index 897c663..0000000
--- a/radio/aidl/android/hardware/radio/VoiceRegStateResult.aidl
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio;
-
-import android.hardware.radio.CellIdentity;
-import android.hardware.radio.RegState;
-
-@VintfStability
-parcelable VoiceRegStateResult {
- /**
- * Valid reg states are NOT_REG_MT_NOT_SEARCHING_OP, REG_HOME, NOT_REG_MT_SEARCHING_OP,
- * REG_DENIED, UNKNOWN, REG_ROAMING defined in RegState.
- */
- RegState regState;
- /**
- * Indicates the available voice radio technology, valid values as defined by RadioTechnology.
- */
- int rat;
- /**
- * Concurrent services support indicator, if registered on a CDMA system.
- * false - Concurrent services not supported,
- * true - Concurrent services supported
- */
- boolean cssSupported;
- /**
- * TSB-58 Roaming Indicator if registered on a CDMA or EVDO system or -1 if not.
- * Valid values are 0-255.
- */
- int roamingIndicator;
- /**
- * Indicates whether the current system is in the PRL if registered on a CDMA or EVDO system
- * or -1 if not. 0=not in the PRL, 1=in the PRL
- */
- int systemIsInPrl;
- /**
- * Default Roaming Indicator from the PRL if registered on a CDMA or EVDO system or -1 if not.
- * Valid values are 0-255.
- */
- int defaultRoamingIndicator;
- /**
- * Reason for denial if registration state is REG_DENIED. This is an enumerated reason why
- * registration was denied. See 3GPP TS 24.008, 10.5.3.6 and Annex G.
- * 0 - General
- * 1 - Authentication Failure
- * 2 - IMSI unknown in HLR
- * 3 - Illegal MS
- * 4 - Illegal ME
- * 5 - PLMN not allowed
- * 6 - Location area not allowed
- * 7 - Roaming not allowed
- * 8 - No Suitable Cells in this Location Area
- * 9 - Network failure
- * 10 - Persistent location update reject
- * 11 - PLMN not allowed
- * 12 - Location area not allowed
- * 13 - Roaming not allowed in this Location Area
- * 15 - No Suitable Cells in this Location Area
- * 17 - Network Failure
- * 20 - MAC Failure
- * 21 - Sync Failure
- * 22 - Congestion
- * 23 - GSM Authentication unacceptable
- * 25 - Not Authorized for this CSG
- * 32 - Service option not supported
- * 33 - Requested service option not subscribed
- * 34 - Service option temporarily out of order
- * 38 - Call cannot be identified
- * 48-63 - Retry upon entry into a new cell
- * 95 - Semantically incorrect message
- * 96 - Invalid mandatory information
- * 97 - Message type non-existent or not implemented
- * 98 - Message type not compatible with protocol state
- * 99 - Information element non-existent or not implemented
- * 100 - Conditional IE error
- * 101 - Message not compatible with protocol state
- * 111 - Protocol error, unspecified
- */
- int reasonForDenial;
- CellIdentity cellIdentity;
-}
diff --git a/radio/aidl/android/hardware/radio/ApnAuthType.aidl b/radio/aidl/android/hardware/radio/data/ApnAuthType.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/ApnAuthType.aidl
rename to radio/aidl/android/hardware/radio/data/ApnAuthType.aidl
index c836a31..8209dfe 100644
--- a/radio/aidl/android/hardware/radio/ApnAuthType.aidl
+++ b/radio/aidl/android/hardware/radio/data/ApnAuthType.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/ApnTypes.aidl b/radio/aidl/android/hardware/radio/data/ApnTypes.aidl
similarity index 86%
rename from radio/aidl/android/hardware/radio/ApnTypes.aidl
rename to radio/aidl/android/hardware/radio/data/ApnTypes.aidl
index 340301f..e780d8e 100644
--- a/radio/aidl/android/hardware/radio/ApnTypes.aidl
+++ b/radio/aidl/android/hardware/radio/data/ApnTypes.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
@Backing(type="int")
@@ -65,11 +65,6 @@
*/
EMERGENCY = 1 << 9,
/**
- * Due to the addition of values after EMERGENCY (eg. MCX, XCAP), this value is now deprecated
- * and should not be used.
- */
- ALL = DEFAULT | MMS | SUPL | DUN | HIPRI | FOTA | IMS | CBS | IA | EMERGENCY,
- /**
* APN type for Mission Critical Service
* Reference: 3GPP TS 22.280 V15.3.0
*/
diff --git a/radio/aidl/android/hardware/radio/DataCallFailCause.aidl b/radio/aidl/android/hardware/radio/data/DataCallFailCause.aidl
similarity index 99%
rename from radio/aidl/android/hardware/radio/DataCallFailCause.aidl
rename to radio/aidl/android/hardware/radio/data/DataCallFailCause.aidl
index 021988b..89cd8f2 100644
--- a/radio/aidl/android/hardware/radio/DataCallFailCause.aidl
+++ b/radio/aidl/android/hardware/radio/data/DataCallFailCause.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/DataProfileInfo.aidl b/radio/aidl/android/hardware/radio/data/DataProfileInfo.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/DataProfileInfo.aidl
rename to radio/aidl/android/hardware/radio/data/DataProfileInfo.aidl
index 2f7bbb1..7657fc9 100644
--- a/radio/aidl/android/hardware/radio/DataProfileInfo.aidl
+++ b/radio/aidl/android/hardware/radio/data/DataProfileInfo.aidl
@@ -14,12 +14,12 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.ApnAuthType;
-import android.hardware.radio.ApnTypes;
-import android.hardware.radio.PdpProtocolType;
import android.hardware.radio.RadioAccessFamily;
+import android.hardware.radio.data.ApnAuthType;
+import android.hardware.radio.data.ApnTypes;
+import android.hardware.radio.data.PdpProtocolType;
@VintfStability
parcelable DataProfileInfo {
@@ -111,8 +111,8 @@
*/
boolean preferred;
/**
- * If true, modem must persist this data profile and profileId must not be set to
- * DataProfileId.INVALID. If the same data profile exists, this data profile must overwrite it.
+ * If true, modem must persist this data profile and profileId must not be set to ID_INVALID.
+ * If the same data profile exists, this data profile must overwrite it.
*/
boolean persistent;
}
diff --git a/radio/aidl/android/hardware/radio/DataRequestReason.aidl b/radio/aidl/android/hardware/radio/data/DataRequestReason.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/DataRequestReason.aidl
rename to radio/aidl/android/hardware/radio/data/DataRequestReason.aidl
index 74afdcb..2bb5bd6 100644
--- a/radio/aidl/android/hardware/radio/DataRequestReason.aidl
+++ b/radio/aidl/android/hardware/radio/data/DataRequestReason.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/DataThrottlingAction.aidl b/radio/aidl/android/hardware/radio/data/DataThrottlingAction.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/DataThrottlingAction.aidl
rename to radio/aidl/android/hardware/radio/data/DataThrottlingAction.aidl
index 1a49762..dfa64e2 100644
--- a/radio/aidl/android/hardware/radio/DataThrottlingAction.aidl
+++ b/radio/aidl/android/hardware/radio/data/DataThrottlingAction.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
@Backing(type="byte")
diff --git a/radio/aidl/android/hardware/radio/EpsQos.aidl b/radio/aidl/android/hardware/radio/data/EpsQos.aidl
similarity index 92%
rename from radio/aidl/android/hardware/radio/EpsQos.aidl
rename to radio/aidl/android/hardware/radio/data/EpsQos.aidl
index ee4cbdd..559a153 100644
--- a/radio/aidl/android/hardware/radio/EpsQos.aidl
+++ b/radio/aidl/android/hardware/radio/data/EpsQos.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.QosBandwidth;
+import android.hardware.radio.data.QosBandwidth;
/**
* LTE/EPS Quality of Service parameters as per 3gpp spec 24.301 sec 9.9.4.3.
diff --git a/radio/aidl/android/hardware/radio/data/IRadioData.aidl b/radio/aidl/android/hardware/radio/data/IRadioData.aidl
new file mode 100644
index 0000000..9f5ba4c
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/data/IRadioData.aidl
@@ -0,0 +1,281 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.data;
+
+import android.hardware.radio.AccessNetwork;
+import android.hardware.radio.data.DataProfileInfo;
+import android.hardware.radio.data.DataRequestReason;
+import android.hardware.radio.data.DataThrottlingAction;
+import android.hardware.radio.data.IRadioDataIndication;
+import android.hardware.radio.data.IRadioDataResponse;
+import android.hardware.radio.data.KeepaliveRequest;
+import android.hardware.radio.data.LinkAddress;
+import android.hardware.radio.data.SliceInfo;
+import android.hardware.radio.data.TrafficDescriptor;
+
+/**
+ * This interface is used by telephony and telecom to talk to cellular radio for data APIs.
+ * All the functions have minimum one parameter:
+ * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the
+ * duration of a method call. If clients provide colliding serials (including passing the same
+ * serial to different methods), multiple responses (one for each method call) must still be served.
+ * setResponseFunctions must work with IRadioDataResponse and IRadioDataIndication.
+ */
+@VintfStability
+oneway interface IRadioData {
+ /**
+ * Reserves an unallocated pdu session id from the pool of ids. The allocated id is returned
+ * in the response. When the id is no longer needed, call releasePduSessionId to return it to
+ * the pool.
+ *
+ * Reference: 3GPP TS 24.007 section 11.2.3.1b
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioDataResponse.allocatePduSessionIdResponse()
+ */
+ void allocatePduSessionId(in int serial);
+
+ /**
+ * Indicates that a handover was cancelled after a call to IRadioData::startHandover.
+ * Since the handover was unsuccessful, the modem retains ownership over any of the resources
+ * being transferred and is still responsible for releasing them.
+ *
+ * @param serial Serial number of request.
+ * @param id callId The identifier of the data call which is provided in SetupDataCallResult
+ *
+ * Response function is IRadioDataResponse.cancelHandoverResponse()
+ */
+ void cancelHandover(in int serial, in int callId);
+
+ /**
+ * Deactivate packet data connection and remove from the data call list. An
+ * unsolDataCallListChanged() must be sent when data connection is deactivated.
+ *
+ * @param serial Serial number of request.
+ * @param cid Data call id.
+ * @param reason The request reason. Must be normal, handover, or shutdown.
+ *
+ * Response function is IRadioDataResponse.deactivateDataCallResponse()
+ */
+ void deactivateDataCall(in int serial, in int cid, in DataRequestReason reason);
+
+ /**
+ * Returns the data call list. An entry is added when a setupDataCall() is issued and removed
+ * on a deactivateDataCall(). The list is emptied when setRadioPower() off/on issued or when
+ * the vendor HAL or modem crashes.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioDataResponse.getDataCallListResponse()
+ */
+ void getDataCallList(in int serial);
+
+ /**
+ * Request to get 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 serial Serial number of request.
+ *
+ * Response function is IRadioDataResponse.getSlicingConfigResponse()
+ */
+ void getSlicingConfig(in int serial);
+
+ /**
+ * Releases a pdu session id that was previously allocated using allocatePduSessionId.
+ * Reference: 3GPP TS 24.007 section 11.2.3.1b
+ *
+ * @param serial Serial number of request.
+ * @param id Pdu session id to release.
+ *
+ * Response function is IRadioDataResponse.releasePduSessionIdResponse()
+ */
+ void releasePduSessionId(in int serial, in int id);
+
+ /**
+ * When response type received from a radio indication or radio response is
+ * RadioIndicationType:UNSOLICITED_ACK_EXP or RadioResponseType:SOLICITED_ACK_EXP respectively,
+ * acknowledge the receipt of those messages by sending responseAcknowledgement().
+ */
+ void responseAcknowledgement();
+
+ /**
+ * Tells the modem whether data calls are allowed or not
+ *
+ * @param serial Serial number of request.
+ * @param allow true to allow data calls, false to disallow data calls
+ *
+ * Response function is IRadioDataResponse.setDataAllowedResponse()
+ */
+ void setDataAllowed(in int serial, in boolean allow);
+
+ /**
+ * Send data profiles of the current carrier to the modem.
+ *
+ * @param serial Serial number of request.
+ * @param profiles Array of DataProfileInfo to set.
+ *
+ * Response function is IRadioDataResponse.setDataProfileResponse()
+ */
+ void setDataProfile(in int serial, in DataProfileInfo[] profiles);
+
+ /**
+ * Control data throttling at modem.
+ * - DataThrottlingAction:NO_DATA_THROTTLING should clear any existing data throttling within
+ * the requested completion window.
+ * - DataThrottlingAction:THROTTLE_SECONDARY_CARRIER: Remove any existing throttling on anchor
+ * carrier and achieve maximum data throttling on secondary carrier within the requested
+ * completion window.
+ * - DataThrottlingAction:THROTTLE_ANCHOR_CARRIER: disable secondary carrier and achieve maximum
+ * data throttling on anchor carrier by requested completion window.
+ * - DataThrottlingAction:HOLD: Immediately hold on to current level of throttling.
+ *
+ * @param serial Serial number of request.
+ * @param dataThrottlingAction DataThrottlingAction as defined in types.hal
+ * @param completionDurationMillis window, in milliseconds, in which the requested throttling
+ * action has to be achieved. This must be 0 when dataThrottlingAction is
+ * DataThrottlingAction:HOLD.
+ *
+ * Response function is IRadioDataResponse.setDataThrottlingResponse()
+ */
+ void setDataThrottling(in int serial, in DataThrottlingAction dataThrottlingAction,
+ in long completionDurationMillis);
+
+ /**
+ * Set an APN to initial attach network.
+ *
+ * @param serial Serial number of request.
+ * @param dataProfileInfo data profile containing APN settings
+ *
+ * Response function is IRadioDataResponse.setInitialAttachApnResponse()
+ */
+ void setInitialAttachApn(in int serial, in DataProfileInfo dataProfileInfo);
+
+ /**
+ * Set response functions for data radio requests and indications.
+ *
+ * @param radioDataResponse Object containing response functions
+ * @param radioDataIndication Object containing radio indications
+ */
+ void setResponseFunctions(
+ in IRadioDataResponse radioDataResponse, in IRadioDataIndication radioDataIndication);
+
+ /**
+ * Setup a packet data connection. If DataCallResponse.status returns DataCallFailCause:NONE,
+ * the data connection must be added to data calls and a unsolDataCallListChanged() must be
+ * sent. The call remains until removed by subsequent unsolDataCallIstChanged(). It may be lost
+ * due to many factors, including deactivateDataCall() being issued, the radio powered off,
+ * reception lost or even transient factors like congestion. This data call list is returned by
+ * getDataCallList() and dataCallListChanged().
+ * The Radio is expected to:
+ * - Create one data call context.
+ * - Create and configure a dedicated interface for the context.
+ * - The interface must be point to point.
+ * - The interface is configured with one or more addresses and is capable of sending and
+ * receiving packets. The format is IP address with optional "/" prefix length (The format is
+ * defined in RFC-4291 section 2.3). For example, "192.0.1.3", "192.0.1.11/16", or
+ * "2001:db8::1/64". Typically one IPv4 or one IPv6 or one of each. If the prefix length is
+ * absent, then the addresses are assumed to be point to point with IPv4 with prefix length 32
+ * or IPv6 with prefix length 128.
+ * - Must not modify routing configuration related to this interface; routing management is
+ * exclusively within the purview of the Android OS.
+ * - Support simultaneous data call context, with limits defined in the specifications. For LTE,
+ * the max number of data calls is equal to the max number of EPS bearers that can be active.
+ *
+ * @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 this should respond with an error.
+ * @param dataProfileInfo Data profile info.
+ * @param roamingAllowed Indicates whether or not data roaming is allowed by the user.
+ * @param reason The request reason. Must be DataRequestReason:NORMAL or
+ * DataRequestReason:HANDOVER.
+ * @param addresses If the reason is DataRequestReason:HANDOVER, this indicates the list of link
+ * addresses of the existing data connection. This parameter must be ignored unless
+ * reason is DataRequestReason:HANDOVER.
+ * @param dnses If the reason is DataRequestReason:HANDOVER, this indicates the list of DNS
+ * addresses of the existing data connection. The format is defined in RFC-4291 section
+ * 2.2. For example, "192.0.1.3" or "2001:db8::1". This parameter must be ignored unless
+ * reason is DataRequestReason:HANDOVER.
+ * @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.
+ * @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 matching --
+ * it does not specify the end point to be used for the data call. The end point is
+ * specified by DataProfileInfo.apn; DataProfileInfo.apn must be used as the end point if
+ * one is not specified through URSP rules.
+ * @param matchAllRuleAllowed bool to indicate if using default match-all URSP rule for this
+ * request is allowed. If false, this request must not use the match-all URSP rule and if
+ * a non-match-all rule is not found (or if URSP rules are not available) it should
+ * return failure with cause DataCallFailCause:MATCH_ALL_RULE_NOT_ALLOWED. This is needed
+ * as some requests need to have a hard failure if the intention cannot be met, for
+ * example, a zero-rating slice.
+ *
+ * Response function is IRadioDataResponse.setupDataCallResponse()
+ */
+ void setupDataCall(in int serial, in AccessNetwork accessNetwork,
+ in DataProfileInfo dataProfileInfo, in boolean roamingAllowed,
+ in DataRequestReason reason, in LinkAddress[] addresses, in String[] dnses,
+ in int pduSessionId, in @nullable SliceInfo sliceInfo,
+ in @nullable TrafficDescriptor trafficDescriptor,
+ in boolean matchAllRuleAllowed);
+
+ /**
+ * Indicates that a handover to the IWLAN transport has begun. Any resources being transferred
+ * to the IWLAN transport cannot be released while a handover is underway. For example, if a
+ * pdu session id needs to be transferred to IWLAN, then the modem should not release the id
+ * while the handover is in progress. If a handover was unsuccessful, then the framework calls
+ * IRadio::cancelHandover. The modem retains ownership over any of the resources being
+ * transferred to IWLAN. If a handover was successful, the framework calls
+ * IRadio::deactivateDataCall with reason HANDOVER. The IWLAN transport now owns the transferred
+ * resources and is responsible for releasing them.
+ *
+ * @param serial Serial number of request.
+ * @param id callId The identifier of the data call which is provided in SetupDataCallResult
+ *
+ * Response function is IRadioDataResponse.startHandoverResponse()
+ */
+ void startHandover(in int serial, in int callId);
+
+ /**
+ * Start a Keepalive session (for IPsec)
+ *
+ * @param serial Serial number of request.
+ * @param keepalive A request structure containing all necessary info to describe a keepalive
+ *
+ * Response function is IRadioDataResponse.startKeepaliveResponse()
+ */
+ void startKeepalive(in int serial, in KeepaliveRequest keepalive);
+
+ /**
+ * Stop an ongoing Keepalive session (for IPsec)
+ *
+ * @param serial Serial number of request.
+ * @param sessionHandle The handle that was provided by
+ * IRadioDataResponse.startKeepaliveResponse
+ *
+ * Response function is IRadioDataResponse.stopKeepaliveResponse()
+ */
+ void stopKeepalive(in int serial, in int sessionHandle);
+}
diff --git a/radio/aidl/android/hardware/radio/data/IRadioDataIndication.aidl b/radio/aidl/android/hardware/radio/data/IRadioDataIndication.aidl
new file mode 100644
index 0000000..8e73ee3
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/data/IRadioDataIndication.aidl
@@ -0,0 +1,74 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.data;
+
+import android.hardware.radio.RadioIndicationType;
+import android.hardware.radio.data.KeepaliveStatus;
+import android.hardware.radio.data.PcoDataInfo;
+import android.hardware.radio.data.SetupDataCallResult;
+
+/**
+ * Interface declaring unsolicited radio indications for data APIs.
+ */
+@VintfStability
+oneway interface IRadioDataIndication {
+ /**
+ * Indicates data call contexts have changed.
+ *
+ * @param type Type of radio indication
+ * @param dcList Array of SetupDataCallResult identical to that returned by
+ * IRadioData.getDataCallList(). It is the complete list of current data contexts
+ * including new contexts that have been activated. A data call is only removed from
+ * this list when any of the below conditions is matched:
+ * - The framework sends a IRadioData.deactivateDataCall().
+ * - The radio is powered off/on.
+ * - Unsolicited disconnect from either modem or network side.
+ */
+ void dataCallListChanged(in RadioIndicationType type, in SetupDataCallResult[] dcList);
+
+ /**
+ * Indicates a status update for a particular Keepalive session. This must include a handle for
+ * a previous session and should include a status update regarding the state of a keepalive.
+ * Unsolicited keepalive status reports should never be PENDING as unsolicited status should
+ * only be sent when known.
+ *
+ * @param type Type of radio indication
+ * @param status Status information for a Keepalive session
+ */
+ void keepaliveStatus(in RadioIndicationType type, in KeepaliveStatus status);
+
+ /**
+ * Indicates when there is new Carrier PCO data received for a data call. Ideally only new data
+ * must be forwarded, though this is not required. Multiple boxes of carrier PCO data for a
+ * given call must result in a series of pcoData() calls.
+ *
+ * @param type Type of radio indication
+ * @param pco New PcoData
+ */
+ void pcoData(in RadioIndicationType type, in PcoDataInfo pco);
+
+ /**
+ * The modem can explicitly set SetupDataCallResult::suggestedRetryTime after a failure in
+ * IRadioData.SetupDataCall. During that time, no new calls are allowed to
+ * IRadioData.SetupDataCall that use the same APN. When IRadioDataIndication.unthrottleApn
+ * is sent, AOSP will no longer throttle calls to IRadioData.SetupDataCall for the given APN.
+ *
+ * @param type Type of radio indication
+ * @param apn Apn to unthrottle
+ */
+ void unthrottleApn(in RadioIndicationType type, in String apn);
+}
diff --git a/radio/aidl/android/hardware/radio/data/IRadioDataResponse.aidl b/radio/aidl/android/hardware/radio/data/IRadioDataResponse.aidl
new file mode 100644
index 0000000..bbc8d07
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/data/IRadioDataResponse.aidl
@@ -0,0 +1,237 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.data;
+
+import android.hardware.radio.RadioResponseInfo;
+import android.hardware.radio.data.KeepaliveStatus;
+import android.hardware.radio.data.SetupDataCallResult;
+import android.hardware.radio.data.SlicingConfig;
+
+/**
+ * Interface declaring response functions to solicited radio requests for data APIs.
+ */
+@VintfStability
+oneway interface IRadioDataResponse {
+ /**
+ * Acknowledge the receipt of radio request sent to the vendor. This must be sent only for
+ * radio request which take long time to respond. For more details, refer
+ * https://source.android.com/devices/tech/connect/ril.html
+ *
+ * @param serial Serial no. of the request whose acknowledgement is sent.
+ */
+ void acknowledgeRequest(in int serial);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param id The allocated id. On an error, this is set to 0.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_RESOURCES- Indicates that no pdu session ids are available
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void allocatePduSessionIdResponse(in RadioResponseInfo info, in int id);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param dcResponse Attributes of data call
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_RESOURCES
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_CALL_ID
+ */
+ void cancelHandoverResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:REQUEST_NOT_SUPPORTED may be returned when HAL 1.2 or higher is supported.
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_CALL_ID
+ * RadioError:INVALID_STATE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void deactivateDataCallResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param dcResponse List of SetupDataCallResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:SIM_ABSENT
+ */
+ void getDataCallListResponse(in RadioResponseInfo info, in SetupDataCallResult[] dcResponse);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param slicingConfig Current slicing configuration
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:MODEM_ERR
+ */
+ void getSlicingConfigResponse(in RadioResponseInfo info, in SlicingConfig slicingConfig);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_RESOURCES
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void releasePduSessionIdResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:DEVICE_IN_USE
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void setDataAllowedResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SUBSCRIPTION_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_ABSENT
+ */
+ void setDataProfileResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void setDataThrottlingResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SUBSCRIPTION_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NOT_PROVISIONED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setInitialAttachApnResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param dcResponse SetupDataCallResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE must be returned on both success and failure of setup with the
+ * DataCallResponse.status containing the actual status
+ * For all other errors the DataCallResponse is ignored.
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:OP_NOT_ALLOWED_BEFORE_REG_TO_NW
+ * RadioError:OP_NOT_ALLOWED_DURING_VOICE_CALL
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_RESOURCES if the vendor is unable handle due to resources are full.
+ * RadioError:SIM_ABSENT
+ */
+ void setupDataCallResponse(in RadioResponseInfo info, in SetupDataCallResult dcResponse);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_RESOURCES
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_CALL_ID
+ */
+ void startHandoverResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param status Status object containing a new handle and a current status. The status returned
+ * here may be PENDING to indicate that the radio has not yet processed the keepalive
+ * request.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:NO_RESOURCES
+ * RadioError:INVALID_ARGUMENTS
+ */
+ void startKeepaliveResponse(in RadioResponseInfo info, in KeepaliveStatus status);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:INVALID_ARGUMENTS
+ */
+ void stopKeepaliveResponse(in RadioResponseInfo info);
+}
diff --git a/radio/aidl/android/hardware/radio/KeepaliveRequest.aidl b/radio/aidl/android/hardware/radio/data/KeepaliveRequest.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/KeepaliveRequest.aidl
rename to radio/aidl/android/hardware/radio/data/KeepaliveRequest.aidl
index 1433b96..57c9f68 100644
--- a/radio/aidl/android/hardware/radio/KeepaliveRequest.aidl
+++ b/radio/aidl/android/hardware/radio/data/KeepaliveRequest.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable KeepaliveRequest {
diff --git a/radio/aidl/android/hardware/radio/KeepaliveStatus.aidl b/radio/aidl/android/hardware/radio/data/KeepaliveStatus.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/KeepaliveStatus.aidl
rename to radio/aidl/android/hardware/radio/data/KeepaliveStatus.aidl
index 0cf6767..2df280c 100644
--- a/radio/aidl/android/hardware/radio/KeepaliveStatus.aidl
+++ b/radio/aidl/android/hardware/radio/data/KeepaliveStatus.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable KeepaliveStatus {
diff --git a/radio/aidl/android/hardware/radio/LinkAddress.aidl b/radio/aidl/android/hardware/radio/data/LinkAddress.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/LinkAddress.aidl
rename to radio/aidl/android/hardware/radio/data/LinkAddress.aidl
index 0c18e27..599d382 100644
--- a/radio/aidl/android/hardware/radio/LinkAddress.aidl
+++ b/radio/aidl/android/hardware/radio/data/LinkAddress.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
/**
* Describes a data link address for mobile data connection.
diff --git a/radio/aidl/android/hardware/radio/NrQos.aidl b/radio/aidl/android/hardware/radio/data/NrQos.aidl
similarity index 93%
rename from radio/aidl/android/hardware/radio/NrQos.aidl
rename to radio/aidl/android/hardware/radio/data/NrQos.aidl
index d791eef..1d69b4f 100644
--- a/radio/aidl/android/hardware/radio/NrQos.aidl
+++ b/radio/aidl/android/hardware/radio/data/NrQos.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.QosBandwidth;
+import android.hardware.radio.data.QosBandwidth;
/**
* 5G Quality of Service parameters as per 3gpp spec 24.501 sec 9.11.4.12
diff --git a/radio/aidl/android/hardware/radio/OsAppId.aidl b/radio/aidl/android/hardware/radio/data/OsAppId.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/OsAppId.aidl
rename to radio/aidl/android/hardware/radio/data/OsAppId.aidl
index 57dfc80..0bf6d7e 100644
--- a/radio/aidl/android/hardware/radio/OsAppId.aidl
+++ b/radio/aidl/android/hardware/radio/data/OsAppId.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
/**
* This struct represents the OsId + OsAppId as defined in TS 24.526 Section 5.2
diff --git a/radio/aidl/android/hardware/radio/PcoDataInfo.aidl b/radio/aidl/android/hardware/radio/data/PcoDataInfo.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/PcoDataInfo.aidl
rename to radio/aidl/android/hardware/radio/data/PcoDataInfo.aidl
index 7b600e6..9587614 100644
--- a/radio/aidl/android/hardware/radio/PcoDataInfo.aidl
+++ b/radio/aidl/android/hardware/radio/data/PcoDataInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable PcoDataInfo {
diff --git a/radio/aidl/android/hardware/radio/PdpProtocolType.aidl b/radio/aidl/android/hardware/radio/data/PdpProtocolType.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/PdpProtocolType.aidl
rename to radio/aidl/android/hardware/radio/data/PdpProtocolType.aidl
index e74b1e3..9b1136c 100644
--- a/radio/aidl/android/hardware/radio/PdpProtocolType.aidl
+++ b/radio/aidl/android/hardware/radio/data/PdpProtocolType.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
/**
* Specifies the type of packet data protocol which is defined in TS 27.007 section 10.1.1.
diff --git a/radio/aidl/android/hardware/radio/PortRange.aidl b/radio/aidl/android/hardware/radio/data/PortRange.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/PortRange.aidl
rename to radio/aidl/android/hardware/radio/data/PortRange.aidl
index 2b67e0e..b1f88e6 100644
--- a/radio/aidl/android/hardware/radio/PortRange.aidl
+++ b/radio/aidl/android/hardware/radio/data/PortRange.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
/**
* Defines range of ports. start and end are the first and last port numbers (inclusive) in the
diff --git a/radio/aidl/android/hardware/radio/Qos.aidl b/radio/aidl/android/hardware/radio/data/Qos.aidl
similarity index 85%
rename from radio/aidl/android/hardware/radio/Qos.aidl
rename to radio/aidl/android/hardware/radio/data/Qos.aidl
index 0f84ad1..3d458de 100644
--- a/radio/aidl/android/hardware/radio/Qos.aidl
+++ b/radio/aidl/android/hardware/radio/data/Qos.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.EpsQos;
-import android.hardware.radio.NrQos;
+import android.hardware.radio.data.EpsQos;
+import android.hardware.radio.data.NrQos;
/**
* EPS or NR QOS parameters
diff --git a/radio/aidl/android/hardware/radio/QosBandwidth.aidl b/radio/aidl/android/hardware/radio/data/QosBandwidth.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/QosBandwidth.aidl
rename to radio/aidl/android/hardware/radio/data/QosBandwidth.aidl
index 344b796..a21003a 100644
--- a/radio/aidl/android/hardware/radio/QosBandwidth.aidl
+++ b/radio/aidl/android/hardware/radio/data/QosBandwidth.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
parcelable QosBandwidth {
diff --git a/radio/aidl/android/hardware/radio/QosFilter.aidl b/radio/aidl/android/hardware/radio/data/QosFilter.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/QosFilter.aidl
rename to radio/aidl/android/hardware/radio/data/QosFilter.aidl
index 8b12649..626f2b4 100644
--- a/radio/aidl/android/hardware/radio/QosFilter.aidl
+++ b/radio/aidl/android/hardware/radio/data/QosFilter.aidl
@@ -14,12 +14,12 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.PortRange;
-import android.hardware.radio.QosFilterIpsecSpi;
-import android.hardware.radio.QosFilterIpv6FlowLabel;
-import android.hardware.radio.QosFilterTypeOfService;
+import android.hardware.radio.data.PortRange;
+import android.hardware.radio.data.QosFilterIpsecSpi;
+import android.hardware.radio.data.QosFilterIpv6FlowLabel;
+import android.hardware.radio.data.QosFilterTypeOfService;
/**
* See 3gpp 24.008 10.5.6.12 and 3gpp 24.501 9.11.4.13
diff --git a/radio/aidl/android/hardware/radio/QosFilterIpsecSpi.aidl b/radio/aidl/android/hardware/radio/data/QosFilterIpsecSpi.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/QosFilterIpsecSpi.aidl
rename to radio/aidl/android/hardware/radio/data/QosFilterIpsecSpi.aidl
index e213402..fd7efb1 100644
--- a/radio/aidl/android/hardware/radio/QosFilterIpsecSpi.aidl
+++ b/radio/aidl/android/hardware/radio/data/QosFilterIpsecSpi.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
union QosFilterIpsecSpi {
diff --git a/radio/aidl/android/hardware/radio/QosFilterIpv6FlowLabel.aidl b/radio/aidl/android/hardware/radio/data/QosFilterIpv6FlowLabel.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/QosFilterIpv6FlowLabel.aidl
rename to radio/aidl/android/hardware/radio/data/QosFilterIpv6FlowLabel.aidl
index d5c5a6c..d6ce84b 100644
--- a/radio/aidl/android/hardware/radio/QosFilterIpv6FlowLabel.aidl
+++ b/radio/aidl/android/hardware/radio/data/QosFilterIpv6FlowLabel.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
union QosFilterIpv6FlowLabel {
diff --git a/radio/aidl/android/hardware/radio/QosFilterTypeOfService.aidl b/radio/aidl/android/hardware/radio/data/QosFilterTypeOfService.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/QosFilterTypeOfService.aidl
rename to radio/aidl/android/hardware/radio/data/QosFilterTypeOfService.aidl
index b91323c..c50c5b6 100644
--- a/radio/aidl/android/hardware/radio/QosFilterTypeOfService.aidl
+++ b/radio/aidl/android/hardware/radio/data/QosFilterTypeOfService.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
@VintfStability
union QosFilterTypeOfService {
diff --git a/radio/aidl/android/hardware/radio/QosSession.aidl b/radio/aidl/android/hardware/radio/data/QosSession.aidl
similarity index 88%
rename from radio/aidl/android/hardware/radio/QosSession.aidl
rename to radio/aidl/android/hardware/radio/data/QosSession.aidl
index 2620ac5..389c349 100644
--- a/radio/aidl/android/hardware/radio/QosSession.aidl
+++ b/radio/aidl/android/hardware/radio/data/QosSession.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.Qos;
-import android.hardware.radio.QosFilter;
+import android.hardware.radio.data.Qos;
+import android.hardware.radio.data.QosFilter;
/**
* QOS session associated with a dedicated bearer
diff --git a/radio/aidl/android/hardware/radio/RouteSelectionDescriptor.aidl b/radio/aidl/android/hardware/radio/data/RouteSelectionDescriptor.aidl
similarity index 91%
rename from radio/aidl/android/hardware/radio/RouteSelectionDescriptor.aidl
rename to radio/aidl/android/hardware/radio/data/RouteSelectionDescriptor.aidl
index a1b482b..d9d602e 100644
--- a/radio/aidl/android/hardware/radio/RouteSelectionDescriptor.aidl
+++ b/radio/aidl/android/hardware/radio/data/RouteSelectionDescriptor.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.PdpProtocolType;
-import android.hardware.radio.SliceInfo;
+import android.hardware.radio.data.PdpProtocolType;
+import android.hardware.radio.data.SliceInfo;
/**
* This struct represents a single route selection descriptor as defined in 3GPP TS 24.526.
diff --git a/radio/aidl/android/hardware/radio/SetupDataCallResult.aidl b/radio/aidl/android/hardware/radio/data/SetupDataCallResult.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/SetupDataCallResult.aidl
rename to radio/aidl/android/hardware/radio/data/SetupDataCallResult.aidl
index 0fae8b0..ebfc55d 100644
--- a/radio/aidl/android/hardware/radio/SetupDataCallResult.aidl
+++ b/radio/aidl/android/hardware/radio/data/SetupDataCallResult.aidl
@@ -14,15 +14,15 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.DataCallFailCause;
-import android.hardware.radio.LinkAddress;
-import android.hardware.radio.PdpProtocolType;
-import android.hardware.radio.Qos;
-import android.hardware.radio.QosSession;
-import android.hardware.radio.SliceInfo;
-import android.hardware.radio.TrafficDescriptor;
+import android.hardware.radio.data.DataCallFailCause;
+import android.hardware.radio.data.LinkAddress;
+import android.hardware.radio.data.PdpProtocolType;
+import android.hardware.radio.data.Qos;
+import android.hardware.radio.data.QosSession;
+import android.hardware.radio.data.SliceInfo;
+import android.hardware.radio.data.TrafficDescriptor;
@VintfStability
parcelable SetupDataCallResult {
@@ -68,8 +68,8 @@
* retry back-off time in milliseconds. Negative value indicates network does not give any
* suggestion. 0 indicates retry should be performed immediately. 0x7fffffffffffffff indicates
* the device should not retry data setup anymore. During this time, no calls to
- * IRadio.setupDataCall for this APN will be made unless IRadioIndication.unthrottleApn is sent
- * with the same APN.
+ * IRadioData.setupDataCall for this APN will be made unless IRadioDataIndication.unthrottleApn
+ * is sent with the same APN.
*/
long suggestedRetryTime;
/**
diff --git a/radio/aidl/android/hardware/radio/SliceInfo.aidl b/radio/aidl/android/hardware/radio/data/SliceInfo.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/SliceInfo.aidl
rename to radio/aidl/android/hardware/radio/data/SliceInfo.aidl
index e5b4354..dd315e8 100644
--- a/radio/aidl/android/hardware/radio/SliceInfo.aidl
+++ b/radio/aidl/android/hardware/radio/data/SliceInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
/**
* This struct represents a S-NSSAI as defined in 3GPP TS 24.501.
diff --git a/radio/aidl/android/hardware/radio/SlicingConfig.aidl b/radio/aidl/android/hardware/radio/data/SlicingConfig.aidl
similarity index 87%
rename from radio/aidl/android/hardware/radio/SlicingConfig.aidl
rename to radio/aidl/android/hardware/radio/data/SlicingConfig.aidl
index d8d0885..eea2d49 100644
--- a/radio/aidl/android/hardware/radio/SlicingConfig.aidl
+++ b/radio/aidl/android/hardware/radio/data/SlicingConfig.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.SliceInfo;
-import android.hardware.radio.UrspRule;
+import android.hardware.radio.data.SliceInfo;
+import android.hardware.radio.data.UrspRule;
/**
* This struct represents the current slicing configuration.
diff --git a/radio/aidl/android/hardware/radio/TrafficDescriptor.aidl b/radio/aidl/android/hardware/radio/data/TrafficDescriptor.aidl
similarity index 93%
rename from radio/aidl/android/hardware/radio/TrafficDescriptor.aidl
rename to radio/aidl/android/hardware/radio/data/TrafficDescriptor.aidl
index 2580a4c..e6ea27c 100644
--- a/radio/aidl/android/hardware/radio/TrafficDescriptor.aidl
+++ b/radio/aidl/android/hardware/radio/data/TrafficDescriptor.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.OsAppId;
+import android.hardware.radio.data.OsAppId;
/**
* This struct represents a traffic descriptor. A valid struct must have at least one of the
diff --git a/radio/aidl/android/hardware/radio/UrspRule.aidl b/radio/aidl/android/hardware/radio/data/UrspRule.aidl
similarity index 88%
rename from radio/aidl/android/hardware/radio/UrspRule.aidl
rename to radio/aidl/android/hardware/radio/data/UrspRule.aidl
index 67d797a..de85be5 100644
--- a/radio/aidl/android/hardware/radio/UrspRule.aidl
+++ b/radio/aidl/android/hardware/radio/data/UrspRule.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.data;
-import android.hardware.radio.RouteSelectionDescriptor;
-import android.hardware.radio.TrafficDescriptor;
+import android.hardware.radio.data.RouteSelectionDescriptor;
+import android.hardware.radio.data.TrafficDescriptor;
/**
* This struct represents a single URSP rule as defined in 3GPP TS 24.526.
diff --git a/radio/aidl/android/hardware/radio/CdmaBroadcastSmsConfigInfo.aidl b/radio/aidl/android/hardware/radio/messaging/CdmaBroadcastSmsConfigInfo.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/CdmaBroadcastSmsConfigInfo.aidl
rename to radio/aidl/android/hardware/radio/messaging/CdmaBroadcastSmsConfigInfo.aidl
index 46f6345..3d715e2 100644
--- a/radio/aidl/android/hardware/radio/CdmaBroadcastSmsConfigInfo.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/CdmaBroadcastSmsConfigInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaBroadcastSmsConfigInfo {
diff --git a/radio/aidl/android/hardware/radio/CdmaSmsAck.aidl b/radio/aidl/android/hardware/radio/messaging/CdmaSmsAck.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/CdmaSmsAck.aidl
rename to radio/aidl/android/hardware/radio/messaging/CdmaSmsAck.aidl
index b1e85ff..25871c8 100644
--- a/radio/aidl/android/hardware/radio/CdmaSmsAck.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/CdmaSmsAck.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaSmsAck {
diff --git a/radio/aidl/android/hardware/radio/CdmaSmsAddress.aidl b/radio/aidl/android/hardware/radio/messaging/CdmaSmsAddress.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/CdmaSmsAddress.aidl
rename to radio/aidl/android/hardware/radio/messaging/CdmaSmsAddress.aidl
index d449ccf..835dda5 100644
--- a/radio/aidl/android/hardware/radio/CdmaSmsAddress.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/CdmaSmsAddress.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaSmsAddress {
diff --git a/radio/aidl/android/hardware/radio/CdmaSmsMessage.aidl b/radio/aidl/android/hardware/radio/messaging/CdmaSmsMessage.aidl
similarity index 84%
rename from radio/aidl/android/hardware/radio/CdmaSmsMessage.aidl
rename to radio/aidl/android/hardware/radio/messaging/CdmaSmsMessage.aidl
index f38cc5b..f1f065f 100644
--- a/radio/aidl/android/hardware/radio/CdmaSmsMessage.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/CdmaSmsMessage.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
-import android.hardware.radio.CdmaSmsAddress;
-import android.hardware.radio.CdmaSmsSubaddress;
+import android.hardware.radio.messaging.CdmaSmsAddress;
+import android.hardware.radio.messaging.CdmaSmsSubaddress;
@VintfStability
parcelable CdmaSmsMessage {
diff --git a/radio/aidl/android/hardware/radio/CdmaSmsSubaddress.aidl b/radio/aidl/android/hardware/radio/messaging/CdmaSmsSubaddress.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/CdmaSmsSubaddress.aidl
rename to radio/aidl/android/hardware/radio/messaging/CdmaSmsSubaddress.aidl
index e5d7494..9dfe503 100644
--- a/radio/aidl/android/hardware/radio/CdmaSmsSubaddress.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/CdmaSmsSubaddress.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable CdmaSmsSubaddress {
diff --git a/radio/aidl/android/hardware/radio/CdmaSmsWriteArgs.aidl b/radio/aidl/android/hardware/radio/messaging/CdmaSmsWriteArgs.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/CdmaSmsWriteArgs.aidl
rename to radio/aidl/android/hardware/radio/messaging/CdmaSmsWriteArgs.aidl
index 57896f4..e73a0d7 100644
--- a/radio/aidl/android/hardware/radio/CdmaSmsWriteArgs.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/CdmaSmsWriteArgs.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
-import android.hardware.radio.CdmaSmsMessage;
+import android.hardware.radio.messaging.CdmaSmsMessage;
@VintfStability
parcelable CdmaSmsWriteArgs {
diff --git a/radio/aidl/android/hardware/radio/GsmBroadcastSmsConfigInfo.aidl b/radio/aidl/android/hardware/radio/messaging/GsmBroadcastSmsConfigInfo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/GsmBroadcastSmsConfigInfo.aidl
rename to radio/aidl/android/hardware/radio/messaging/GsmBroadcastSmsConfigInfo.aidl
index 9b08ad9..2a52f0a 100644
--- a/radio/aidl/android/hardware/radio/GsmBroadcastSmsConfigInfo.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/GsmBroadcastSmsConfigInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
/**
* Which types of Cell Broadcast Message (CBM) are to be received by the ME
diff --git a/radio/aidl/android/hardware/radio/GsmSmsMessage.aidl b/radio/aidl/android/hardware/radio/messaging/GsmSmsMessage.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/GsmSmsMessage.aidl
rename to radio/aidl/android/hardware/radio/messaging/GsmSmsMessage.aidl
index 248b4be..45c09af 100644
--- a/radio/aidl/android/hardware/radio/GsmSmsMessage.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/GsmSmsMessage.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable GsmSmsMessage {
diff --git a/radio/aidl/android/hardware/radio/messaging/IRadioMessaging.aidl b/radio/aidl/android/hardware/radio/messaging/IRadioMessaging.aidl
new file mode 100644
index 0000000..1dbaed3
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/messaging/IRadioMessaging.aidl
@@ -0,0 +1,311 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.messaging;
+
+import android.hardware.radio.messaging.CdmaBroadcastSmsConfigInfo;
+import android.hardware.radio.messaging.CdmaSmsAck;
+import android.hardware.radio.messaging.CdmaSmsMessage;
+import android.hardware.radio.messaging.CdmaSmsWriteArgs;
+import android.hardware.radio.messaging.GsmBroadcastSmsConfigInfo;
+import android.hardware.radio.messaging.GsmSmsMessage;
+import android.hardware.radio.messaging.IRadioMessagingIndication;
+import android.hardware.radio.messaging.IRadioMessagingResponse;
+import android.hardware.radio.messaging.ImsSmsMessage;
+import android.hardware.radio.messaging.SmsAcknowledgeFailCause;
+import android.hardware.radio.messaging.SmsWriteArgs;
+
+/**
+ * This interface is used by telephony and telecom to talk to cellular radio for messaging APIs.
+ * All the functions have minimum one parameter:
+ * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the
+ * duration of a method call. If clients provide colliding serials (including passing the same
+ * serial to different methods), multiple responses (one for each method call) must still be served.
+ * setResponseFunctions must work with IRadioMessagingResponse and IRadioMessagingIndication.
+ */
+@VintfStability
+oneway interface IRadioMessaging {
+ /**
+ * Acknowledge successful or failed receipt of SMS previously indicated via unsol
+ * responseNewSms(), including acknowledgement TPDU to send as the RP-User-Data element of the
+ * RP-ACK or RP-ERROR PDU.
+ *
+ * @param serial Serial number of request.
+ * @param success true on successful receipt (send RP-ACK)
+ * false on failed receipt (send RP-ERROR)
+ * @param ackPdu acknowledgement TPDU in hexadecimal format
+ *
+ * Response function is IRadioMessagingResponse.acknowledgeIncomingGsmSmsWithPduResponse()
+ */
+ void acknowledgeIncomingGsmSmsWithPdu(in int serial, in boolean success, in String ackPdu);
+
+ /**
+ * Acknowledge the success or failure in the receipt of SMS previously indicated
+ * via responseCdmaNewSms()
+ *
+ * @param serial Serial number of request.
+ * @param smsAck Cdma Sms ack to be sent described by CdmaSmsAck
+ *
+ * Response function is IRadioMessagingResponse.acknowledgeLastIncomingCdmaSmsResponse()
+ */
+ void acknowledgeLastIncomingCdmaSms(in int serial, in CdmaSmsAck smsAck);
+
+ /**
+ * Acknowledge successful or failed receipt of SMS previously indicated via unsolResponseNewSms
+ *
+ * @param serial Serial number of request.
+ * @param success is true on successful receipt
+ * (basically, AT+CNMA=1 from TS 27.005 is 0 on failed receipt
+ * (basically, AT+CNMA=2 from TS 27.005)
+ * @param cause: if success is false, this contains the failure cause as defined
+ * in TS 23.040, 9.2.3.22.
+ *
+ * Response function is IRadioMessagingResponse.acknowledgeLastIncomingGsmSmsResponse()
+ */
+ void acknowledgeLastIncomingGsmSms(
+ in int serial, in boolean success, in SmsAcknowledgeFailCause cause);
+
+ /**
+ * Cancel the current USSD session if one exists.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioMessagingResponse.cancelPendingUssdResponse()
+ */
+ void cancelPendingUssd(in int serial);
+
+ /**
+ * Deletes a CDMA SMS message from RUIM memory.
+ *
+ * @param serial Serial number of request.
+ * @param index record index of the message to delete
+ *
+ * Response function is IRadioMessagingResponse.deleteSmsOnRuimResponse()
+ */
+ void deleteSmsOnRuim(in int serial, in int index);
+
+ /**
+ * Deletes a SMS message from SIM memory.
+ *
+ * @param serial Serial number of request.
+ * @param index Record index of the message to delete.
+ *
+ * Response function is IRadioMessagingResponse.deleteSmsOnSimResponse()
+ */
+ void deleteSmsOnSim(in int serial, in int index);
+
+ /**
+ * Request the setting of CDMA Broadcast SMS config
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioMessagingResponse.getCdmaBroadcastConfigResponse()
+ */
+ void getCdmaBroadcastConfig(in int serial);
+
+ /**
+ * Request the setting of GSM/WCDMA Cell Broadcast SMS config.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioMessagingResponse.getGsmBroadcastConfigResponse()
+ */
+ void getGsmBroadcastConfig(in int serial);
+
+ /**
+ * Get the default Short Message Service Center address on the device.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioMessagingResponse.getSmscAddressResponse()
+ */
+ void getSmscAddress(in int serial);
+
+ /**
+ * Indicates whether there is storage available for new SMS messages.
+ *
+ * @param serial Serial number of request.
+ * @param available true if memory is available for storing new messages,
+ * false if memory capacity is exceeded
+ *
+ * Response function is IRadioMessagingResponse.reportSmsMemoryStatusResponse()
+ */
+ void reportSmsMemoryStatus(in int serial, in boolean available);
+
+ /**
+ * When response type received from a radio indication or radio response is
+ * RadioIndicationType:UNSOLICITED_ACK_EXP or RadioResponseType:SOLICITED_ACK_EXP respectively,
+ * acknowledge the receipt of those messages by sending responseAcknowledgement().
+ */
+ void responseAcknowledgement();
+
+ /**
+ * Send a CDMA SMS message
+ *
+ * @param serial Serial number of request.
+ * @param sms CdmaSmsMessage to be sent
+ *
+ * Response function is IRadioMessagingResponse.sendCdmaSmsResponse()
+ */
+ void sendCdmaSms(in int serial, in CdmaSmsMessage sms);
+
+ /**
+ * Send an SMS message. Identical to sendCdmaSms, except that more messages are expected to be
+ * sent soon.
+ *
+ * @param serial Serial number of request.
+ * @param sms CdmaSmsMessage to be sent
+ *
+ * Response function is IRadioMessagingResponse.sendCdmaSmsExpectMoreResponse()
+ */
+ void sendCdmaSmsExpectMore(in int serial, in CdmaSmsMessage sms);
+
+ /**
+ * Send a SMS message over IMS. Based on the return error, caller decides to resend if sending
+ * sms fails. SMS_SEND_FAIL_RETRY means retry, and other errors means no retry.
+ * In case of retry, data is encoded based on Voice Technology available.
+ *
+ * @param serial Serial number of request.
+ * @param message ImsSmsMessage to be sent
+ *
+ * Response function is IRadioMessagingResponse.sendImsSmsResponse()
+ */
+ void sendImsSms(in int serial, in ImsSmsMessage message);
+
+ /**
+ * Send an SMS message. Based on the returned error, caller decides to resend if sending sms
+ * fails. RadioError:SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332) and
+ * RadioError:GENERIC_FAILURE means no retry (i.e. error cause is 500)
+ *
+ * @param serial Serial number of request.
+ * @param message GsmSmsMessage to be sent
+ *
+ * Response function is IRadioMessagingResponse.sendSmsResponse()
+ */
+ void sendSms(in int serial, in GsmSmsMessage message);
+
+ /**
+ * Send an SMS message. Identical to sendSms, except that more messages are expected to be sent
+ * soon. If possible, keep SMS relay protocol link open (eg TS 27.005 AT+CMMS command).
+ * Based on the return error, caller decides to resend if sending sms fails.
+ * RadioError:SMS_SEND_FAIL_RETRY means retry (i.e. error cause is 332) and
+ * RadioError:GENERIC_FAILURE means no retry (i.e. error cause is 500)
+ *
+ * @param serial Serial number of request.
+ * @param message GsmSmsMessage to be sent
+ *
+ * Response function is IRadioMessagingResponse.sendSmsExpectMoreResponse()
+ */
+ void sendSmsExpectMore(in int serial, in GsmSmsMessage message);
+
+ /**
+ * Send a USSD message. If a USSD session already exists, the message must be sent in the
+ * context of that session. Otherwise, a new session must be created. The network reply must be
+ * reported via unsolOnUssd.
+ *
+ * Only one USSD session must exist at a time, and the session is assumed to exist until:
+ * a) The android system invokes cancelUssd()
+ * b) The implementation sends a unsolOnUssd() with a type code of
+ * "0" (USSD-Notify/no further action) or "2" (session terminated)
+ *
+ * @param serial Serial number of request.
+ * @param ussd string containing the USSD request in UTF-8 format
+ *
+ * Response function is IRadioMessagingResponse.sendUssdResponse()
+ */
+ void sendUssd(in int serial, in String ussd);
+
+ /**
+ * Enable or disable the reception of CDMA Cell Broadcast SMS
+ *
+ * @param serial Serial number of request.
+ * @param activate indicates to activate or turn off the reception of CDMA Cell Broadcast SMS.
+ * true = activate, false = turn off
+ *
+ * Response function is IRadioMessagingResponse.setCdmaBroadcastActivationResponse()
+ */
+ void setCdmaBroadcastActivation(in int serial, in boolean activate);
+
+ /**
+ * Set CDMA Broadcast SMS config
+ *
+ * @param serial Serial number of request.
+ * @param configInfo CDMA Broadcast SMS config to be set.
+ *
+ * Response function is IRadioMessagingResponse.setCdmaBroadcastConfigResponse()
+ */
+ void setCdmaBroadcastConfig(in int serial, in CdmaBroadcastSmsConfigInfo[] configInfo);
+
+ /**
+ * Enable or disable the reception of GSM/WCDMA Cell Broadcast SMS
+ *
+ * @param serial Serial number of request.
+ * @param activate indicates to activate or turn off the reception of GSM/WCDMA
+ * Cell Broadcast SMS. true = activate, false = turn off
+ *
+ * Response function is IRadioMessagingResponse.setGsmBroadcastActivationResponse()
+ */
+ void setGsmBroadcastActivation(in int serial, in boolean activate);
+
+ /**
+ * Set GSM/WCDMA Cell Broadcast SMS config
+ *
+ * @param serial Serial number of request.
+ * @param configInfo Setting of GSM/WCDMA Cell broadcast config
+ *
+ * Response function is IRadioMessagingResponse.setGsmBroadcastConfigResponse()
+ */
+ void setGsmBroadcastConfig(in int serial, in GsmBroadcastSmsConfigInfo[] configInfo);
+
+ /**
+ * Set response functions for messaging radio requests and indications.
+ *
+ * @param radioMessagingResponse Object containing response functions
+ * @param radioMessagingIndication Object containing radio indications
+ */
+ void setResponseFunctions(in IRadioMessagingResponse radioMessagingResponse,
+ in IRadioMessagingIndication radioMessagingIndication);
+
+ /**
+ * Set the default Short Message Service Center address on the device.
+ *
+ * @param serial Serial number of request.
+ * @param smsc Short Message Service Center address to set
+ *
+ * Response function is IRadioMessagingResponse.setSmscAddressResponse()
+ */
+ void setSmscAddress(in int serial, in String smsc);
+
+ /**
+ * Stores a CDMA SMS message to RUIM memory.
+ *
+ * @param serial Serial number of request.
+ * @param cdmaSms CdmaSmsWriteArgs
+ *
+ * Response function is IRadioMessagingResponse.writeSmsToRuimResponse()
+ */
+ void writeSmsToRuim(in int serial, in CdmaSmsWriteArgs cdmaSms);
+
+ /**
+ * Stores a SMS message to SIM memory.
+ *
+ * @param serial Serial number of request.
+ * @param smsWriteArgs SmsWriteArgs
+ *
+ * Response function is IRadioMessagingResponse.writeSmsToSimResponse()
+ */
+ void writeSmsToSim(in int serial, in SmsWriteArgs smsWriteArgs);
+}
diff --git a/radio/aidl/android/hardware/radio/messaging/IRadioMessagingIndication.aidl b/radio/aidl/android/hardware/radio/messaging/IRadioMessagingIndication.aidl
new file mode 100644
index 0000000..4b40bfb
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/messaging/IRadioMessagingIndication.aidl
@@ -0,0 +1,106 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.messaging;
+
+import android.hardware.radio.RadioIndicationType;
+import android.hardware.radio.messaging.CdmaSmsMessage;
+import android.hardware.radio.messaging.UssdModeType;
+
+/**
+ * Interface declaring unsolicited radio indications for messaging APIs.
+ */
+@VintfStability
+oneway interface IRadioMessagingIndication {
+ /**
+ * Indicates when new CDMA SMS is received. Callee must subsequently confirm the receipt of the
+ * SMS with acknowledgeLastIncomingCdmaSms(). Server must not send cdmaNewSms() messages until
+ * acknowledgeLastIncomingCdmaSms() has been received.
+ *
+ * @param type Type of radio indication
+ * @param msg Cdma Sms Message
+ */
+ void cdmaNewSms(in RadioIndicationType type, in CdmaSmsMessage msg);
+
+ /**
+ * Indicates that SMS storage on the RUIM is full. Messages cannot be saved on the RUIM until
+ * space is freed.
+ *
+ * @param type Type of radio indication
+ */
+ void cdmaRuimSmsStorageFull(in RadioIndicationType type);
+
+ /**
+ * Indicates when new Broadcast SMS is received
+ *
+ * @param type Type of radio indication
+ * @param data If received from GSM network, "data" is byte array of 88 bytes which indicates
+ * each page of a CBS Message sent to the MS by the BTS as coded in 3GPP 23.041 Section
+ * 9.4.1.2. If received from UMTS network, "data" is byte array of 90 up to 1252 bytes
+ * which contain between 1 and 15 CBS Message pages sent as one packet to the MS by the
+ * BTS as coded in 3GPP 23.041 Section 9.4.2.2
+ */
+ void newBroadcastSms(in RadioIndicationType type, in byte[] data);
+
+ /**
+ * Indicates when new SMS is received. Callee must subsequently confirm the receipt of the SMS
+ * with a acknowledgeLastIncomingGsmSms(). Server must not send newSms() or newSmsStatusReport()
+ * messages until an acknowledgeLastIncomingGsmSms() has been received.
+ *
+ * @param type Type of radio indication
+ * @param pdu PDU of SMS-DELIVER represented as byte array.
+ * The PDU starts with the SMSC address per TS 27.005 (+CMT:)
+ */
+ void newSms(in RadioIndicationType type, in byte[] pdu);
+
+ /**
+ * Indicates when new SMS has been stored on SIM card
+ *
+ * @param type Type of radio indication
+ * @param recordNumber Record number on the sim
+ */
+ void newSmsOnSim(in RadioIndicationType type, in int recordNumber);
+
+ /**
+ * Indicates when new SMS Status Report is received. Callee must subsequently confirm the
+ * receipt of the SMS with a acknowledgeLastIncomingGsmSms(). Server must not send newSms() or
+ * newSmsStatusReport() messages until an acknowledgeLastIncomingGsmSms() has been received
+ *
+ * @param type Type of radio indication
+ * @param pdu PDU of SMS-STATUS-REPORT represented as byte array.
+ * The PDU starts with the SMSC address per TS 27.005 (+CMT:)
+ */
+ void newSmsStatusReport(in RadioIndicationType type, in byte[] pdu);
+
+ /**
+ * Indicates when a new USSD message is received. The USSD session is assumed to persist if the
+ * type code is REQUEST, otherwise the current session (if any) is assumed to have terminated.
+ *
+ * @param type Type of radio indication
+ * @param modeType USSD type code
+ * @param msg Message string in UTF-8, if applicable
+ */
+ void onUssd(in RadioIndicationType type, in UssdModeType modeType, in String msg);
+
+ /**
+ * Indicates that SMS storage on the SIM is full. Sent when the network attempts to deliver a
+ * new SMS message. Messages cannot be saved on the SIM until space is freed. In particular,
+ * incoming Class 2 messages must not be stored.
+ *
+ * @param type Type of radio indication
+ */
+ void simSmsStorageFull(in RadioIndicationType type);
+}
diff --git a/radio/aidl/android/hardware/radio/messaging/IRadioMessagingResponse.aidl b/radio/aidl/android/hardware/radio/messaging/IRadioMessagingResponse.aidl
new file mode 100644
index 0000000..75fa390
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/messaging/IRadioMessagingResponse.aidl
@@ -0,0 +1,587 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.messaging;
+
+import android.hardware.radio.RadioResponseInfo;
+import android.hardware.radio.messaging.CdmaBroadcastSmsConfigInfo;
+import android.hardware.radio.messaging.GsmBroadcastSmsConfigInfo;
+import android.hardware.radio.messaging.SendSmsResult;
+
+/**
+ * Interface declaring response functions to solicited radio requests for messaging APIs.
+ */
+@VintfStability
+oneway interface IRadioMessagingResponse {
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void acknowledgeIncomingGsmSmsWithPduResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_SMS_TO_ACK
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:NETWORK_NOT_READY
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void acknowledgeLastIncomingCdmaSmsResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void acknowledgeLastIncomingGsmSmsResponse(in RadioResponseInfo info);
+
+ /**
+ * Acknowledge the receipt of radio request sent to the vendor. This must be sent only for
+ * radio request which take long time to respond. For more details, refer
+ * https://source.android.com/devices/tech/connect/ril.html
+ *
+ * @param serial Serial no. of the request whose acknowledgement is sent.
+ */
+ void acknowledgeRequest(in int serial);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SIM_BUSY
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:INVALID_STATE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void cancelPendingUssdResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:NO_SUCH_ENTRY
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:SIM_ABSENT
+ */
+ void deleteSmsOnRuimResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SIM_FULL
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:NO_SUCH_ENTRY
+ * RadioError:INTERNAL_ERR
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:SIM_ABSENT
+ */
+ void deleteSmsOnSimResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param configs Vector of CDMA Broadcast SMS configs.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:NO_RESOURCES
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void getCdmaBroadcastConfigResponse(
+ in RadioResponseInfo info, in CdmaBroadcastSmsConfigInfo[] configs);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param configs Vector of GSM/WCDMA Cell broadcast configs
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:NO_RESOURCES
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void getGsmBroadcastConfigResponse(
+ in RadioResponseInfo info, in GsmBroadcastSmsConfigInfo[] configs);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param smsc Short Message Service Center address on the device
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NOT_PROVISIONED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void getSmscAddressResponse(in RadioResponseInfo info, in String smsc);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_STATE
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void reportSmsMemoryStatusResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param sms Response to sms sent as defined by SendSmsResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SMS_SEND_FAIL_RETRY
+ * RadioError:NETWORK_REJECT
+ * RadioError:INVALID_STATE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:INVALID_SMS_FORMAT
+ * RadioError:SYSTEM_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:ENCODING_ERR
+ * RadioError:INVALID_SMSC_ADDRESS
+ * RadioError:MODEM_ERR
+ * RadioError:NETWORK_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NETWORK_NOT_READY
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ * RadioError:SIMULTANEOUS_SMS_AND_CALL_NOT_ALLOWED
+ * RadioError:ACCESS_BARRED
+ * RadioError:BLOCKED_DUE_TO_CALL
+ */
+ void sendCdmaSmsExpectMoreResponse(in RadioResponseInfo info, in SendSmsResult sms);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param sms Sms result struct as defined by SendSmsResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SMS_SEND_FAIL_RETRY
+ * RadioError:NETWORK_REJECT
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:INVALID_SMS_FORMAT
+ * RadioError:SYSTEM_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:MODEM_ERR
+ * RadioError:NETWORK_ERR
+ * RadioError:ENCODING_ERR
+ * RadioError:INVALID_SMSC_ADDRESS
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:ENCODING_ERR
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ * RadioError:SIMULTANEOUS_SMS_AND_CALL_NOT_ALLOWED
+ * RadioError:ACCESS_BARRED
+ * RadioError:BLOCKED_DUE_TO_CALL
+ */
+ void sendCdmaSmsResponse(in RadioResponseInfo info, in SendSmsResult sms);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param sms Response to sms sent as defined by SendSmsResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SMS_SEND_FAIL_RETRY
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:NETWORK_REJECT
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:INVALID_SMS_FORMAT
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:MODEM_ERR
+ * RadioError:NETWORK_ERR
+ * RadioError:ENCODING_ERR
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NETWORK_NOT_READY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void sendImsSmsResponse(in RadioResponseInfo info, in SendSmsResult sms);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param sms Response to sms sent as defined by SendSmsResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SMS_SEND_FAIL_RETRY
+ * RadioError:NETWORK_REJECT
+ * RadioError:INVALID_STATE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:INVALID_SMS_FORMAT
+ * RadioError:SYSTEM_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:ENCODING_ERR
+ * RadioError:INVALID_SMSC_ADDRESS
+ * RadioError:MODEM_ERR
+ * RadioError:NETWORK_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NETWORK_NOT_READY
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ * RadioError:ACCESS_BARRED
+ * RadioError:BLOCKED_DUE_TO_CALL
+ */
+ void sendSmsExpectMoreResponse(in RadioResponseInfo info, in SendSmsResult sms);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param sms Response to sms sent as defined by SendSmsResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SMS_SEND_FAIL_RETRY
+ * RadioError:NETWORK_REJECT
+ * RadioError:INVALID_STATE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:INVALID_SMS_FORMAT
+ * RadioError:SYSTEM_ERR
+ * RadioError:ENCODING_ERR
+ * RadioError:INVALID_SMSC_ADDRESS
+ * RadioError:MODEM_ERR
+ * RadioError:NETWORK_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NETWORK_NOT_READY
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ * RadioError:ACCESS_BARRED
+ * RadioError:BLOCKED_DUE_TO_CALL
+ */
+ void sendSmsResponse(in RadioResponseInfo info, in SendSmsResult sms);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:USSD_MODIFIED_TO_DIAL
+ * RadioError:USSD_MODIFIED_TO_SS
+ * RadioError:USSD_MODIFIED_TO_USSD
+ * RadioError:SIM_BUSY
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:ABORTED
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void sendUssdResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void setCdmaBroadcastActivationResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void setCdmaBroadcastConfigResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void setGsmBroadcastActivationResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void setGsmBroadcastConfigResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SMS_FORMAT
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:MODEM_ERR
+ * RadioError:NO_RESOURCES
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void setSmscAddressResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param index record index where the cmda sms message is stored
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SMS_FORMAT
+ * RadioError:SIM_FULL
+ * RadioError:INTERNAL_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:ENCODING_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:INVALID_SMSC_ADDRESS
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:SIM_ABSENT
+ */
+ void writeSmsToRuimResponse(in RadioResponseInfo info, in int index);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param index record index where the message is stored
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SIM_FULL
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SMS_FORMAT
+ * RadioError:INTERNAL_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:ENCODING_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INVALID_SMSC_ADDRESS
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:SIM_ABSENT
+ */
+ void writeSmsToSimResponse(in RadioResponseInfo info, in int index);
+}
diff --git a/radio/aidl/android/hardware/radio/ImsSmsMessage.aidl b/radio/aidl/android/hardware/radio/messaging/ImsSmsMessage.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/ImsSmsMessage.aidl
rename to radio/aidl/android/hardware/radio/messaging/ImsSmsMessage.aidl
index 3b4efe6..809cfb3 100644
--- a/radio/aidl/android/hardware/radio/ImsSmsMessage.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/ImsSmsMessage.aidl
@@ -14,11 +14,11 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
-import android.hardware.radio.CdmaSmsMessage;
-import android.hardware.radio.GsmSmsMessage;
import android.hardware.radio.RadioTechnologyFamily;
+import android.hardware.radio.messaging.CdmaSmsMessage;
+import android.hardware.radio.messaging.GsmSmsMessage;
@VintfStability
parcelable ImsSmsMessage {
diff --git a/radio/aidl/android/hardware/radio/SendSmsResult.aidl b/radio/aidl/android/hardware/radio/messaging/SendSmsResult.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/SendSmsResult.aidl
rename to radio/aidl/android/hardware/radio/messaging/SendSmsResult.aidl
index 3186563..15d68f1 100644
--- a/radio/aidl/android/hardware/radio/SendSmsResult.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/SendSmsResult.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable SendSmsResult {
diff --git a/radio/aidl/android/hardware/radio/SmsAcknowledgeFailCause.aidl b/radio/aidl/android/hardware/radio/messaging/SmsAcknowledgeFailCause.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/SmsAcknowledgeFailCause.aidl
rename to radio/aidl/android/hardware/radio/messaging/SmsAcknowledgeFailCause.aidl
index 265a109..a47cdb6 100644
--- a/radio/aidl/android/hardware/radio/SmsAcknowledgeFailCause.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/SmsAcknowledgeFailCause.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/SmsWriteArgs.aidl b/radio/aidl/android/hardware/radio/messaging/SmsWriteArgs.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/SmsWriteArgs.aidl
rename to radio/aidl/android/hardware/radio/messaging/SmsWriteArgs.aidl
index 7258e0a..539f68b 100644
--- a/radio/aidl/android/hardware/radio/SmsWriteArgs.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/SmsWriteArgs.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
parcelable SmsWriteArgs {
diff --git a/radio/aidl/android/hardware/radio/UssdModeType.aidl b/radio/aidl/android/hardware/radio/messaging/UssdModeType.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/UssdModeType.aidl
rename to radio/aidl/android/hardware/radio/messaging/UssdModeType.aidl
index 187130c..c3c111e 100644
--- a/radio/aidl/android/hardware/radio/UssdModeType.aidl
+++ b/radio/aidl/android/hardware/radio/messaging/UssdModeType.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.messaging;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/ActivityStatsInfo.aidl b/radio/aidl/android/hardware/radio/modem/ActivityStatsInfo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/ActivityStatsInfo.aidl
rename to radio/aidl/android/hardware/radio/modem/ActivityStatsInfo.aidl
index f1a6e0e..764a86d 100644
--- a/radio/aidl/android/hardware/radio/ActivityStatsInfo.aidl
+++ b/radio/aidl/android/hardware/radio/modem/ActivityStatsInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
parcelable ActivityStatsInfo {
diff --git a/radio/aidl/android/hardware/radio/DeviceStateType.aidl b/radio/aidl/android/hardware/radio/modem/DeviceStateType.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/DeviceStateType.aidl
rename to radio/aidl/android/hardware/radio/modem/DeviceStateType.aidl
index e622486..0dae351 100644
--- a/radio/aidl/android/hardware/radio/DeviceStateType.aidl
+++ b/radio/aidl/android/hardware/radio/modem/DeviceStateType.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/HardwareConfig.aidl b/radio/aidl/android/hardware/radio/modem/HardwareConfig.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/HardwareConfig.aidl
rename to radio/aidl/android/hardware/radio/modem/HardwareConfig.aidl
index 59850ad..c38df5e 100644
--- a/radio/aidl/android/hardware/radio/HardwareConfig.aidl
+++ b/radio/aidl/android/hardware/radio/modem/HardwareConfig.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
-import android.hardware.radio.HardwareConfigModem;
-import android.hardware.radio.HardwareConfigSim;
+import android.hardware.radio.modem.HardwareConfigModem;
+import android.hardware.radio.modem.HardwareConfigSim;
@VintfStability
parcelable HardwareConfig {
diff --git a/radio/aidl/android/hardware/radio/HardwareConfigModem.aidl b/radio/aidl/android/hardware/radio/modem/HardwareConfigModem.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/HardwareConfigModem.aidl
rename to radio/aidl/android/hardware/radio/modem/HardwareConfigModem.aidl
index 8e3bc47..0b7343b 100644
--- a/radio/aidl/android/hardware/radio/HardwareConfigModem.aidl
+++ b/radio/aidl/android/hardware/radio/modem/HardwareConfigModem.aidl
@@ -14,7 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
+
+import android.hardware.radio.RadioTechnology;
@VintfStability
parcelable HardwareConfigModem {
@@ -30,15 +32,15 @@
/**
* Bitset value, based on RadioTechnology.
*/
- int rat;
+ RadioTechnology rat;
/**
* Maximum number of concurrent active voice calls.
*/
- int maxVoice;
+ int maxVoiceCalls;
/**
* Maximum number of concurrent active data calls.
*/
- int maxData;
+ int maxDataCalls;
/**
* Maximum number of concurrent standby connections. This is not necessarily an equal sum of the
* maxVoice and maxData (or a derivative of it) since it really depends on the modem capability,
diff --git a/radio/aidl/android/hardware/radio/HardwareConfigSim.aidl b/radio/aidl/android/hardware/radio/modem/HardwareConfigSim.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/HardwareConfigSim.aidl
rename to radio/aidl/android/hardware/radio/modem/HardwareConfigSim.aidl
index 85055de..0f0c05f 100644
--- a/radio/aidl/android/hardware/radio/HardwareConfigSim.aidl
+++ b/radio/aidl/android/hardware/radio/modem/HardwareConfigSim.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
parcelable HardwareConfigSim {
diff --git a/radio/aidl/android/hardware/radio/modem/IRadioModem.aidl b/radio/aidl/android/hardware/radio/modem/IRadioModem.aidl
new file mode 100644
index 0000000..ba0ddb9
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/modem/IRadioModem.aidl
@@ -0,0 +1,230 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.modem;
+
+import android.hardware.radio.modem.DeviceStateType;
+import android.hardware.radio.modem.IRadioModemIndication;
+import android.hardware.radio.modem.IRadioModemResponse;
+import android.hardware.radio.modem.NvItem;
+import android.hardware.radio.modem.NvWriteItem;
+import android.hardware.radio.modem.RadioCapability;
+import android.hardware.radio.modem.ResetNvType;
+
+/**
+ * This interface is used by telephony and telecom to talk to cellular radio for modem APIs.
+ * All the functions have minimum one parameter:
+ * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the
+ * duration of a method call. If clients provide colliding serials (including passing the same
+ * serial to different methods), multiple responses (one for each method call) must still be served.
+ * setResponseFunctions must work with IRadioModemResponse and IRadioModemIndication.
+ */
+@VintfStability
+oneway interface IRadioModem {
+ /**
+ * Toggle logical modem on/off. This is similar to IRadioModem.setRadioPower(), however that
+ * does not enforce that radio power is toggled only for the corresponding radio and certain
+ * vendor implementations do it for all radios. This new API should affect only the modem for
+ * which it is called. A modem stack must be on/active only when both setRadioPower() and
+ * enableModem() are set to on for it.
+ *
+ * SIM must be read if available even if modem is off/inactive.
+ *
+ * @param serial Serial number of request.
+ * @param on True to turn on the logical modem, otherwise turn it off.
+ *
+ * Response function is IRadioModemResponse.enableModemResponse()
+ */
+ void enableModem(in int serial, in boolean on);
+
+ /**
+ * Return string value indicating baseband version, eg response from AT+CGMR
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioModemResponse.getBasebandVersionResponse()
+ */
+ void getBasebandVersion(in int serial);
+
+ /**
+ * Request the device ESN / MEID / IMEI / IMEISV. The request is always allowed and contains
+ * GSM and CDMA device identity. When CDMA subscription is changed the ESN/MEID changes.
+ * The application layer must re-issue the request to update the device identity in this case.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioModemResponse.getDeviceIdentityResponse()
+ */
+ void getDeviceIdentity(in int serial);
+
+ /**
+ * Request all of the current hardware (modem and sim) associated with Radio.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioModemResponse.getHardwareConfigResponse()
+ */
+ void getHardwareConfig(in int serial);
+
+ /**
+ * Get modem activity information for power consumption estimation. Request clear-on-read
+ * statistics information that is used for estimating the per-millisecond power consumption
+ * of the cellular modem.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioModemResponse.getModemActivityInfoResponse()
+ */
+ void getModemActivityInfo(in int serial);
+
+ /**
+ * Request status of logical modem. It returns isEnabled=true if the logical modem is on.
+ * This method is the getter method for enableModem.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioModemResponse.getModemStackStatusResponse()
+ */
+ void getModemStackStatus(in int serial);
+
+ /**
+ * Get phone radio capability.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioModemResponse.getRadioCapabilityResponse()
+ */
+ void getRadioCapability(in int serial);
+
+ /**
+ * Read one of the radio NV items.
+ * This is used for device configuration by some CDMA operators.
+ *
+ * @param serial Serial number of request.
+ * @param itemId NvItem
+ *
+ * Response function is IRadioModemResponse.nvReadItemResponse()
+ */
+ void nvReadItem(in int serial, in NvItem itemId);
+
+ /**
+ * Reset the radio NV configuration to the factory state.
+ * This is used for device configuration by some CDMA operators.
+ *
+ * @param serial Serial number of request.
+ * @param resetType ResetNvType
+ *
+ * Response function is IRadioModemResponse.nvResetConfigResponse()
+ */
+ void nvResetConfig(in int serial, in ResetNvType resetType);
+
+ /**
+ * Update the CDMA Preferred Roaming List (PRL) in the radio NV storage.
+ * This is used for device configuration by some CDMA operators.
+ *
+ * @param serial Serial number of request.
+ * @param prl PRL as a byte array
+ *
+ * Response function is IRadioModemResponse.nvWriteCdmaPrlResponse()
+ */
+ void nvWriteCdmaPrl(in int serial, in byte[] prl);
+
+ /**
+ * Write one of the radio NV items.
+ * This is used for device configuration by some CDMA operators.
+ *
+ * @param serial Serial number of request.
+ * @param item NvWriteItem
+ *
+ * Response function is IRadioModemResponse.nvWriteItemResponse()
+ */
+ void nvWriteItem(in int serial, in NvWriteItem item);
+
+ /**
+ * Device is shutting down. All further commands are ignored and RADIO_NOT_AVAILABLE
+ * must be returned.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioModemResponse.requestShutdownResponse()
+ */
+ void requestShutdown(in int serial);
+
+ /**
+ * When response type received from a radio indication or radio response is
+ * RadioIndicationType:UNSOLICITED_ACK_EXP or RadioResponseType:SOLICITED_ACK_EXP respectively,
+ * acknowledge the receipt of those messages by sending responseAcknowledgement().
+ */
+ void responseAcknowledgement();
+
+ /**
+ * Send the updated device state. This is providing the device state information for the modem
+ * to perform power saving strategies.
+ *
+ * @param serial Serial number of request.
+ * @param deviceStateType The updated device state type.
+ * @param state The updated state. See the definition of state at DeviceStateType.
+ *
+ * Response function is IRadioModemResponse.sendDeviceStateResponse()
+ */
+ void sendDeviceState(in int serial, in DeviceStateType deviceStateType, in boolean state);
+
+ /**
+ * Used to set the phones radio capability. Be VERY careful using this request as it may cause
+ * some vendor modems to reset. Because of the possible modem reset any radio commands after
+ * this one may not be processed.
+ *
+ * @param serial Serial number of request.
+ * @param rc RadioCapability structure to be set
+ *
+ * Response function is IRadioModemResponse.setRadioCapabilityResponse()
+ */
+ void setRadioCapability(in int serial, in RadioCapability rc);
+
+ /**
+ * Toggle radio on and off (for "airplane" mode). If the radio is turned off/on the radio modem
+ * subsystem is expected return to an initialized state. For instance, any voice and data calls
+ * must be terminated and all associated lists emptied.
+ * When setting radio power on to exit from airplane mode to place an emergency call on this
+ * logical modem, powerOn, forEmergencyCall and preferredForEmergencyCall must be true. In
+ * this case, this modem is optimized to scan only emergency call bands, until:
+ * 1) Emergency call is completed; or
+ * 2) Another setRadioPower is issued with forEmergencyCall being false or
+ * preferredForEmergencyCall being false; or
+ * 3) Timeout after 30 seconds if dial or emergencyDial is not called.
+ * Once one of these conditions is reached, the modem should move into normal operation.
+ *
+ * @param serial Serial number of request.
+ * @param powerOn To turn on radio -> on = true, to turn off radio -> on = false.
+ * @param forEmergencyCall To indication to radio if this request is due to emergency call.
+ * No effect if powerOn is false.
+ * @param preferredForEmergencyCall indicate whether the following emergency call will be sent
+ * on this modem or not. No effect if forEmergencyCall is false, or powerOn is false.
+ *
+ * Response function is IRadioConfigResponse.setRadioPowerResponse()
+ */
+ void setRadioPower(in int serial, in boolean powerOn, in boolean forEmergencyCall,
+ in boolean preferredForEmergencyCall);
+
+ /**
+ * Set response functions for modem radio requests and indications.
+ *
+ * @param radioModemResponse Object containing response functions
+ * @param radioModemIndication Object containing radio indications
+ */
+ void setResponseFunctions(in IRadioModemResponse radioModemResponse,
+ in IRadioModemIndication radioModemIndication);
+}
diff --git a/radio/aidl/android/hardware/radio/modem/IRadioModemIndication.aidl b/radio/aidl/android/hardware/radio/modem/IRadioModemIndication.aidl
new file mode 100644
index 0000000..c61de99
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/modem/IRadioModemIndication.aidl
@@ -0,0 +1,78 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.modem;
+
+import android.hardware.radio.RadioIndicationType;
+import android.hardware.radio.modem.HardwareConfig;
+import android.hardware.radio.modem.RadioCapability;
+import android.hardware.radio.modem.RadioState;
+
+/**
+ * Interface declaring unsolicited radio indications for modem APIs.
+ */
+@VintfStability
+oneway interface IRadioModemIndication {
+ /**
+ * Indicates when the hardware configuration associated with the RILd changes.
+ *
+ * @param type Type of radio indication
+ * @param configs Array of hardware configs
+ */
+ void hardwareConfigChanged(in RadioIndicationType type, in HardwareConfig[] configs);
+
+ /**
+ * Indicates when there is a modem reset.
+ * When modem restarts, one of the following radio state transitions must happen
+ * 1) RadioState:ON->RadioState:UNAVAILABLE->RadioState:ON or
+ * 2) RadioState:OFF->RadioState:UNAVAILABLE->RadioState:OFF
+ * This message must be sent either just before the Radio State changes to
+ * RadioState:UNAVAILABLE or just after but must never be sent after the Radio State changes
+ * from RadioState:UNAVAILABLE to RadioState:ON/RadioState:OFF again. It must NOT be sent after
+ * the Radio state changes to RadioState:ON/RadioState:OFF after the modem restart as that may
+ * be interpreted as a second modem reset by the framework.
+ *
+ * @param type Type of radio indication
+ * @param reason the reason for the reset. It may be a crash signature if the restart was due to
+ * a crash or some string such as "user-initiated restart" or "AT command initiated
+ * restart" that explains the cause of the modem restart
+ */
+ void modemReset(in RadioIndicationType type, in String reason);
+
+ /**
+ * Sent when setRadioCapability() completes. Returns the phone radio capability exactly as
+ * getRadioCapability() and must be the same set as sent by setRadioCapability().
+ *
+ * @param type Type of radio indication
+ * @param rc Current radio capability
+ */
+ void radioCapabilityIndication(in RadioIndicationType type, in RadioCapability rc);
+
+ /**
+ * Indicates when radio state changes.
+ *
+ * @param type Type of radio indication
+ * @param radioState Current radio state
+ */
+ void radioStateChanged(in RadioIndicationType type, in RadioState radioState);
+
+ /**
+ * Indicates the ril connects and returns the version
+ *
+ * @param type Type of radio indication
+ */
+ void rilConnected(in RadioIndicationType type);
+}
diff --git a/radio/aidl/android/hardware/radio/modem/IRadioModemResponse.aidl b/radio/aidl/android/hardware/radio/modem/IRadioModemResponse.aidl
new file mode 100644
index 0000000..b17cac4
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/modem/IRadioModemResponse.aidl
@@ -0,0 +1,257 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.modem;
+
+import android.hardware.radio.RadioResponseInfo;
+import android.hardware.radio.modem.ActivityStatsInfo;
+import android.hardware.radio.modem.HardwareConfig;
+import android.hardware.radio.modem.RadioCapability;
+
+/**
+ * Interface declaring response functions to solicited radio requests for modem APIs.
+ */
+@VintfStability
+oneway interface IRadioModemResponse {
+ /**
+ * Acknowledge the receipt of radio request sent to the vendor. This must be sent only for
+ * radio request which take long time to respond. For more details, refer
+ * https://source.android.com/devices/tech/connect/ril.html
+ *
+ * @param serial Serial no. of the request whose acknowledgement is sent.
+ */
+ void acknowledgeRequest(in int serial);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_STATE: this is for the case that the API is called in a single-sim
+ * mode, or when there is only one modem available, as this API should only
+ * be called in multi sim status.
+ */
+ void enableModemResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param version string containing version string for log reporting
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:EMPTY_RECORD
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:NOT_PROVISIONED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getBasebandVersionResponse(in RadioResponseInfo info, in String version);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param imei IMEI if GSM subscription is available
+ * @param imeisv IMEISV if GSM subscription is available
+ * @param esn ESN if CDMA subscription is available
+ * @param meid MEID if CDMA subscription is available
+ *
+ * If a empty string value is returned for any of the device id, it means that there was error
+ * accessing the device.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:NOT_PROVISIONED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void getDeviceIdentityResponse(in RadioResponseInfo info, in String imei, in String imeisv,
+ in String esn, in String meid);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param config Array of HardwareConfig of the radio.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void getHardwareConfigResponse(in RadioResponseInfo info, in HardwareConfig[] config);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param activityInfo modem activity information
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:NOT_PROVISIONED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void getModemActivityInfoResponse(in RadioResponseInfo info, in ActivityStatsInfo activityInfo);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:MODEM_ERR
+ */
+ void getModemStackStatusResponse(in RadioResponseInfo info, in boolean isEnabled);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param rc Radio capability as defined by RadioCapability in types.hal
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INVALID_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getRadioCapabilityResponse(in RadioResponseInfo info, in RadioCapability rc);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param result string containing the contents of the NV item
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void nvReadItemResponse(in RadioResponseInfo info, in String result);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void nvResetConfigResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void nvWriteCdmaPrlResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void nvWriteItemResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void requestShutdownResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void sendDeviceStateResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param rc Radio capability as defined by RadioCapability in types.hal used to
+ * feedback return status
+ *
+ * Valid errors returned:
+ * RadioError:NONE means a unsol radioCapability() will be sent within 30 seconds.
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setRadioCapabilityResponse(in RadioResponseInfo info, in RadioCapability rc);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:RF_HARDWARE_ISSUE
+ * RadioError:NO_RF_CALIBRATION_INFO
+ */
+ void setRadioPowerResponse(in RadioResponseInfo info);
+}
diff --git a/radio/aidl/android/hardware/radio/NvItem.aidl b/radio/aidl/android/hardware/radio/modem/NvItem.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/NvItem.aidl
rename to radio/aidl/android/hardware/radio/modem/NvItem.aidl
index 0d4f79f..cdae1c8 100644
--- a/radio/aidl/android/hardware/radio/NvItem.aidl
+++ b/radio/aidl/android/hardware/radio/modem/NvItem.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/NvWriteItem.aidl b/radio/aidl/android/hardware/radio/modem/NvWriteItem.aidl
similarity index 89%
rename from radio/aidl/android/hardware/radio/NvWriteItem.aidl
rename to radio/aidl/android/hardware/radio/modem/NvWriteItem.aidl
index f306161..d66c2cd 100644
--- a/radio/aidl/android/hardware/radio/NvWriteItem.aidl
+++ b/radio/aidl/android/hardware/radio/modem/NvWriteItem.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
-import android.hardware.radio.NvItem;
+import android.hardware.radio.modem.NvItem;
@VintfStability
parcelable NvWriteItem {
diff --git a/radio/aidl/android/hardware/radio/RadioCapability.aidl b/radio/aidl/android/hardware/radio/modem/RadioCapability.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/RadioCapability.aidl
rename to radio/aidl/android/hardware/radio/modem/RadioCapability.aidl
index a94e96a..b7b8ef3 100644
--- a/radio/aidl/android/hardware/radio/RadioCapability.aidl
+++ b/radio/aidl/android/hardware/radio/modem/RadioCapability.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
import android.hardware.radio.RadioAccessFamily;
diff --git a/radio/aidl/android/hardware/radio/RadioState.aidl b/radio/aidl/android/hardware/radio/modem/RadioState.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/RadioState.aidl
rename to radio/aidl/android/hardware/radio/modem/RadioState.aidl
index 1915870..b9826a4 100644
--- a/radio/aidl/android/hardware/radio/RadioState.aidl
+++ b/radio/aidl/android/hardware/radio/modem/RadioState.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/ResetNvType.aidl b/radio/aidl/android/hardware/radio/modem/ResetNvType.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/ResetNvType.aidl
rename to radio/aidl/android/hardware/radio/modem/ResetNvType.aidl
index 59c74da..a1411c9 100644
--- a/radio/aidl/android/hardware/radio/ResetNvType.aidl
+++ b/radio/aidl/android/hardware/radio/modem/ResetNvType.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.modem;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/AccessTechnologySpecificInfo.aidl b/radio/aidl/android/hardware/radio/network/AccessTechnologySpecificInfo.aidl
similarity index 77%
rename from radio/aidl/android/hardware/radio/AccessTechnologySpecificInfo.aidl
rename to radio/aidl/android/hardware/radio/network/AccessTechnologySpecificInfo.aidl
index 6f0640c..dfd62a7 100644
--- a/radio/aidl/android/hardware/radio/AccessTechnologySpecificInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/AccessTechnologySpecificInfo.aidl
@@ -14,11 +14,11 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.Cdma2000RegistrationInfo;
-import android.hardware.radio.EutranRegistrationInfo;
-import android.hardware.radio.NrVopsInfo;
+import android.hardware.radio.network.Cdma2000RegistrationInfo;
+import android.hardware.radio.network.EutranRegistrationInfo;
+import android.hardware.radio.network.NrVopsInfo;
@VintfStability
union AccessTechnologySpecificInfo {
@@ -27,7 +27,7 @@
EutranRegistrationInfo eutranInfo;
/**
* Network capabilities for voice over PS services. This info is valid only on NR network and
- * must be present when the device is camped on NR. VopsInfo must be empty when the device is
+ * must be present when the device is camped on NR. NrVopsInfo must be empty when the device is
* not camped on NR.
*/
NrVopsInfo ngranNrVopsInfo;
diff --git a/radio/aidl/android/hardware/radio/BarringInfo.aidl b/radio/aidl/android/hardware/radio/network/BarringInfo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/BarringInfo.aidl
rename to radio/aidl/android/hardware/radio/network/BarringInfo.aidl
index 2bffa2e..da49ba5 100644
--- a/radio/aidl/android/hardware/radio/BarringInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/BarringInfo.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.BarringTypeSpecificInfo;
+import android.hardware.radio.network.BarringTypeSpecificInfo;
@VintfStability
parcelable BarringInfo {
diff --git a/radio/aidl/android/hardware/radio/BarringTypeSpecificInfo.aidl b/radio/aidl/android/hardware/radio/network/BarringTypeSpecificInfo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/BarringTypeSpecificInfo.aidl
rename to radio/aidl/android/hardware/radio/network/BarringTypeSpecificInfo.aidl
index c3b892b..3899711 100644
--- a/radio/aidl/android/hardware/radio/BarringTypeSpecificInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/BarringTypeSpecificInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable BarringTypeSpecificInfo {
diff --git a/radio/aidl/android/hardware/radio/Cdma2000RegistrationInfo.aidl b/radio/aidl/android/hardware/radio/network/Cdma2000RegistrationInfo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/Cdma2000RegistrationInfo.aidl
rename to radio/aidl/android/hardware/radio/network/Cdma2000RegistrationInfo.aidl
index b9f3b66..6ea6cf9 100644
--- a/radio/aidl/android/hardware/radio/Cdma2000RegistrationInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/Cdma2000RegistrationInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable Cdma2000RegistrationInfo {
diff --git a/radio/aidl/android/hardware/radio/CdmaRoamingType.aidl b/radio/aidl/android/hardware/radio/network/CdmaRoamingType.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/CdmaRoamingType.aidl
rename to radio/aidl/android/hardware/radio/network/CdmaRoamingType.aidl
index df09e03..3da8c98 100644
--- a/radio/aidl/android/hardware/radio/CdmaRoamingType.aidl
+++ b/radio/aidl/android/hardware/radio/network/CdmaRoamingType.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/CdmaSignalStrength.aidl b/radio/aidl/android/hardware/radio/network/CdmaSignalStrength.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/CdmaSignalStrength.aidl
rename to radio/aidl/android/hardware/radio/network/CdmaSignalStrength.aidl
index e6c2fb5..c7754f2 100644
--- a/radio/aidl/android/hardware/radio/CdmaSignalStrength.aidl
+++ b/radio/aidl/android/hardware/radio/network/CdmaSignalStrength.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CdmaSignalStrength {
diff --git a/radio/aidl/android/hardware/radio/CellConnectionStatus.aidl b/radio/aidl/android/hardware/radio/network/CellConnectionStatus.aidl
similarity index 87%
rename from radio/aidl/android/hardware/radio/CellConnectionStatus.aidl
rename to radio/aidl/android/hardware/radio/network/CellConnectionStatus.aidl
index faa9b28..d9f5766 100644
--- a/radio/aidl/android/hardware/radio/CellConnectionStatus.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellConnectionStatus.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
@Backing(type="int")
@@ -24,7 +24,7 @@
*/
NONE,
/**
- * UE has connection to cell for signalling and possibly data (3GPP 36.331, 25.331).
+ * UE has connection to cell for signaling and possibly data (3GPP 36.331, 25.331).
*/
PRIMARY_SERVING,
/**
diff --git a/radio/aidl/android/hardware/radio/CellIdentity.aidl b/radio/aidl/android/hardware/radio/network/CellIdentity.aidl
similarity index 70%
rename from radio/aidl/android/hardware/radio/CellIdentity.aidl
rename to radio/aidl/android/hardware/radio/network/CellIdentity.aidl
index abfcc9d..af6d38e 100644
--- a/radio/aidl/android/hardware/radio/CellIdentity.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellIdentity.aidl
@@ -14,14 +14,14 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityCdma;
-import android.hardware.radio.CellIdentityGsm;
-import android.hardware.radio.CellIdentityLte;
-import android.hardware.radio.CellIdentityNr;
-import android.hardware.radio.CellIdentityTdscdma;
-import android.hardware.radio.CellIdentityWcdma;
+import android.hardware.radio.network.CellIdentityCdma;
+import android.hardware.radio.network.CellIdentityGsm;
+import android.hardware.radio.network.CellIdentityLte;
+import android.hardware.radio.network.CellIdentityNr;
+import android.hardware.radio.network.CellIdentityTdscdma;
+import android.hardware.radio.network.CellIdentityWcdma;
/**
* A union representing the CellIdentity of a single cell.
diff --git a/radio/aidl/android/hardware/radio/CellIdentityCdma.aidl b/radio/aidl/android/hardware/radio/network/CellIdentityCdma.aidl
similarity index 93%
rename from radio/aidl/android/hardware/radio/CellIdentityCdma.aidl
rename to radio/aidl/android/hardware/radio/network/CellIdentityCdma.aidl
index 56867e9..e271e50 100644
--- a/radio/aidl/android/hardware/radio/CellIdentityCdma.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellIdentityCdma.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityOperatorNames;
+import android.hardware.radio.network.CellIdentityOperatorNames;
@VintfStability
parcelable CellIdentityCdma {
diff --git a/radio/aidl/android/hardware/radio/CellIdentityGsm.aidl b/radio/aidl/android/hardware/radio/network/CellIdentityGsm.aidl
similarity index 92%
rename from radio/aidl/android/hardware/radio/CellIdentityGsm.aidl
rename to radio/aidl/android/hardware/radio/network/CellIdentityGsm.aidl
index f1c5042..7b711ad 100644
--- a/radio/aidl/android/hardware/radio/CellIdentityGsm.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellIdentityGsm.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityOperatorNames;
+import android.hardware.radio.network.CellIdentityOperatorNames;
@VintfStability
parcelable CellIdentityGsm {
diff --git a/radio/aidl/android/hardware/radio/CellIdentityLte.aidl b/radio/aidl/android/hardware/radio/network/CellIdentityLte.aidl
similarity index 88%
rename from radio/aidl/android/hardware/radio/CellIdentityLte.aidl
rename to radio/aidl/android/hardware/radio/network/CellIdentityLte.aidl
index 1a261a6..d4f83a3 100644
--- a/radio/aidl/android/hardware/radio/CellIdentityLte.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellIdentityLte.aidl
@@ -14,11 +14,11 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityOperatorNames;
-import android.hardware.radio.ClosedSubscriberGroupInfo;
-import android.hardware.radio.EutranBands;
+import android.hardware.radio.network.CellIdentityOperatorNames;
+import android.hardware.radio.network.ClosedSubscriberGroupInfo;
+import android.hardware.radio.network.EutranBands;
@VintfStability
parcelable CellIdentityLte {
diff --git a/radio/aidl/android/hardware/radio/CellIdentityNr.aidl b/radio/aidl/android/hardware/radio/network/CellIdentityNr.aidl
similarity index 93%
rename from radio/aidl/android/hardware/radio/CellIdentityNr.aidl
rename to radio/aidl/android/hardware/radio/network/CellIdentityNr.aidl
index 6879c63..dfccbf7 100644
--- a/radio/aidl/android/hardware/radio/CellIdentityNr.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellIdentityNr.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityOperatorNames;
-import android.hardware.radio.NgranBands;
+import android.hardware.radio.network.CellIdentityOperatorNames;
+import android.hardware.radio.network.NgranBands;
/**
* The CellIdentity structure should be reported once for each element of the PLMN-IdentityInfoList
diff --git a/radio/aidl/android/hardware/radio/CellIdentityOperatorNames.aidl b/radio/aidl/android/hardware/radio/network/CellIdentityOperatorNames.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/CellIdentityOperatorNames.aidl
rename to radio/aidl/android/hardware/radio/network/CellIdentityOperatorNames.aidl
index dea9929..540014a 100644
--- a/radio/aidl/android/hardware/radio/CellIdentityOperatorNames.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellIdentityOperatorNames.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable CellIdentityOperatorNames {
diff --git a/radio/aidl/android/hardware/radio/CellIdentityTdscdma.aidl b/radio/aidl/android/hardware/radio/network/CellIdentityTdscdma.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/CellIdentityTdscdma.aidl
rename to radio/aidl/android/hardware/radio/network/CellIdentityTdscdma.aidl
index 8232245..99c8151 100644
--- a/radio/aidl/android/hardware/radio/CellIdentityTdscdma.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellIdentityTdscdma.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityOperatorNames;
-import android.hardware.radio.ClosedSubscriberGroupInfo;
+import android.hardware.radio.network.CellIdentityOperatorNames;
+import android.hardware.radio.network.ClosedSubscriberGroupInfo;
@VintfStability
parcelable CellIdentityTdscdma {
diff --git a/radio/aidl/android/hardware/radio/CellIdentityWcdma.aidl b/radio/aidl/android/hardware/radio/network/CellIdentityWcdma.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/CellIdentityWcdma.aidl
rename to radio/aidl/android/hardware/radio/network/CellIdentityWcdma.aidl
index 3432747..302be96 100644
--- a/radio/aidl/android/hardware/radio/CellIdentityWcdma.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellIdentityWcdma.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityOperatorNames;
-import android.hardware.radio.ClosedSubscriberGroupInfo;
+import android.hardware.radio.network.CellIdentityOperatorNames;
+import android.hardware.radio.network.ClosedSubscriberGroupInfo;
@VintfStability
parcelable CellIdentityWcdma {
diff --git a/radio/aidl/android/hardware/radio/CellInfo.aidl b/radio/aidl/android/hardware/radio/network/CellInfo.aidl
similarity index 80%
rename from radio/aidl/android/hardware/radio/CellInfo.aidl
rename to radio/aidl/android/hardware/radio/network/CellInfo.aidl
index fe4f330..58cf9f5 100644
--- a/radio/aidl/android/hardware/radio/CellInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellInfo.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellConnectionStatus;
-import android.hardware.radio.CellInfoCellInfoRatSpecificInfo;
+import android.hardware.radio.network.CellConnectionStatus;
+import android.hardware.radio.network.CellInfoRatSpecificInfo;
@VintfStability
parcelable CellInfo {
@@ -29,5 +29,5 @@
* Connection status for the cell.
*/
CellConnectionStatus connectionStatus;
- CellInfoCellInfoRatSpecificInfo ratSpecificInfo;
+ CellInfoRatSpecificInfo ratSpecificInfo;
}
diff --git a/radio/aidl/android/hardware/radio/CellInfoCdma.aidl b/radio/aidl/android/hardware/radio/network/CellInfoCdma.aidl
similarity index 78%
rename from radio/aidl/android/hardware/radio/CellInfoCdma.aidl
rename to radio/aidl/android/hardware/radio/network/CellInfoCdma.aidl
index 27a35d1..6d92918 100644
--- a/radio/aidl/android/hardware/radio/CellInfoCdma.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellInfoCdma.aidl
@@ -14,11 +14,11 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CdmaSignalStrength;
-import android.hardware.radio.CellIdentityCdma;
-import android.hardware.radio.EvdoSignalStrength;
+import android.hardware.radio.network.CdmaSignalStrength;
+import android.hardware.radio.network.CellIdentityCdma;
+import android.hardware.radio.network.EvdoSignalStrength;
@VintfStability
parcelable CellInfoCdma {
diff --git a/radio/aidl/android/hardware/radio/CellInfoGsm.aidl b/radio/aidl/android/hardware/radio/network/CellInfoGsm.aidl
similarity index 82%
rename from radio/aidl/android/hardware/radio/CellInfoGsm.aidl
rename to radio/aidl/android/hardware/radio/network/CellInfoGsm.aidl
index 16ba857..fc85248 100644
--- a/radio/aidl/android/hardware/radio/CellInfoGsm.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellInfoGsm.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityGsm;
-import android.hardware.radio.GsmSignalStrength;
+import android.hardware.radio.network.CellIdentityGsm;
+import android.hardware.radio.network.GsmSignalStrength;
@VintfStability
parcelable CellInfoGsm {
diff --git a/radio/aidl/android/hardware/radio/CellInfoLte.aidl b/radio/aidl/android/hardware/radio/network/CellInfoLte.aidl
similarity index 82%
rename from radio/aidl/android/hardware/radio/CellInfoLte.aidl
rename to radio/aidl/android/hardware/radio/network/CellInfoLte.aidl
index d3389c1..22db722 100644
--- a/radio/aidl/android/hardware/radio/CellInfoLte.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellInfoLte.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityLte;
-import android.hardware.radio.LteSignalStrength;
+import android.hardware.radio.network.CellIdentityLte;
+import android.hardware.radio.network.LteSignalStrength;
@VintfStability
parcelable CellInfoLte {
diff --git a/radio/aidl/android/hardware/radio/CellInfoNr.aidl b/radio/aidl/android/hardware/radio/network/CellInfoNr.aidl
similarity index 82%
rename from radio/aidl/android/hardware/radio/CellInfoNr.aidl
rename to radio/aidl/android/hardware/radio/network/CellInfoNr.aidl
index b1f311f..fbf026e 100644
--- a/radio/aidl/android/hardware/radio/CellInfoNr.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellInfoNr.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityNr;
-import android.hardware.radio.NrSignalStrength;
+import android.hardware.radio.network.CellIdentityNr;
+import android.hardware.radio.network.NrSignalStrength;
@VintfStability
parcelable CellInfoNr {
diff --git a/radio/aidl/android/hardware/radio/CellInfoCellInfoRatSpecificInfo.aidl b/radio/aidl/android/hardware/radio/network/CellInfoRatSpecificInfo.aidl
similarity index 69%
rename from radio/aidl/android/hardware/radio/CellInfoCellInfoRatSpecificInfo.aidl
rename to radio/aidl/android/hardware/radio/network/CellInfoRatSpecificInfo.aidl
index cdd3386..7e8a437 100644
--- a/radio/aidl/android/hardware/radio/CellInfoCellInfoRatSpecificInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellInfoRatSpecificInfo.aidl
@@ -14,17 +14,17 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellInfoCdma;
-import android.hardware.radio.CellInfoGsm;
-import android.hardware.radio.CellInfoLte;
-import android.hardware.radio.CellInfoNr;
-import android.hardware.radio.CellInfoTdscdma;
-import android.hardware.radio.CellInfoWcdma;
+import android.hardware.radio.network.CellInfoCdma;
+import android.hardware.radio.network.CellInfoGsm;
+import android.hardware.radio.network.CellInfoLte;
+import android.hardware.radio.network.CellInfoNr;
+import android.hardware.radio.network.CellInfoTdscdma;
+import android.hardware.radio.network.CellInfoWcdma;
@VintfStability
-union CellInfoCellInfoRatSpecificInfo {
+union CellInfoRatSpecificInfo {
/**
* 3gpp CellInfo types.
*/
diff --git a/radio/aidl/android/hardware/radio/CellInfoTdscdma.aidl b/radio/aidl/android/hardware/radio/network/CellInfoTdscdma.aidl
similarity index 82%
rename from radio/aidl/android/hardware/radio/CellInfoTdscdma.aidl
rename to radio/aidl/android/hardware/radio/network/CellInfoTdscdma.aidl
index b7d09bc..e07e721 100644
--- a/radio/aidl/android/hardware/radio/CellInfoTdscdma.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellInfoTdscdma.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityTdscdma;
-import android.hardware.radio.TdscdmaSignalStrength;
+import android.hardware.radio.network.CellIdentityTdscdma;
+import android.hardware.radio.network.TdscdmaSignalStrength;
@VintfStability
parcelable CellInfoTdscdma {
diff --git a/radio/aidl/android/hardware/radio/CellInfoWcdma.aidl b/radio/aidl/android/hardware/radio/network/CellInfoWcdma.aidl
similarity index 82%
rename from radio/aidl/android/hardware/radio/CellInfoWcdma.aidl
rename to radio/aidl/android/hardware/radio/network/CellInfoWcdma.aidl
index 03b0863..38b6903 100644
--- a/radio/aidl/android/hardware/radio/CellInfoWcdma.aidl
+++ b/radio/aidl/android/hardware/radio/network/CellInfoWcdma.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellIdentityWcdma;
-import android.hardware.radio.WcdmaSignalStrength;
+import android.hardware.radio.network.CellIdentityWcdma;
+import android.hardware.radio.network.WcdmaSignalStrength;
@VintfStability
parcelable CellInfoWcdma {
diff --git a/radio/aidl/android/hardware/radio/ClosedSubscriberGroupInfo.aidl b/radio/aidl/android/hardware/radio/network/ClosedSubscriberGroupInfo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/ClosedSubscriberGroupInfo.aidl
rename to radio/aidl/android/hardware/radio/network/ClosedSubscriberGroupInfo.aidl
index 7c6fb7a..b5b4add 100644
--- a/radio/aidl/android/hardware/radio/ClosedSubscriberGroupInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/ClosedSubscriberGroupInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable ClosedSubscriberGroupInfo {
diff --git a/radio/aidl/android/hardware/radio/Domain.aidl b/radio/aidl/android/hardware/radio/network/Domain.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/Domain.aidl
rename to radio/aidl/android/hardware/radio/network/Domain.aidl
index f5e5261..b62f0ee 100644
--- a/radio/aidl/android/hardware/radio/Domain.aidl
+++ b/radio/aidl/android/hardware/radio/network/Domain.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/EutranBands.aidl b/radio/aidl/android/hardware/radio/network/EutranBands.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/EutranBands.aidl
rename to radio/aidl/android/hardware/radio/network/EutranBands.aidl
index 59fe6c4..48ee26e 100644
--- a/radio/aidl/android/hardware/radio/EutranBands.aidl
+++ b/radio/aidl/android/hardware/radio/network/EutranBands.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* EUTRAN bands up to V16.4.0
diff --git a/radio/aidl/android/hardware/radio/EutranRegistrationInfo.aidl b/radio/aidl/android/hardware/radio/network/EutranRegistrationInfo.aidl
similarity index 88%
rename from radio/aidl/android/hardware/radio/EutranRegistrationInfo.aidl
rename to radio/aidl/android/hardware/radio/network/EutranRegistrationInfo.aidl
index 0f8f949..5e19c56 100644
--- a/radio/aidl/android/hardware/radio/EutranRegistrationInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/EutranRegistrationInfo.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.LteVopsInfo;
-import android.hardware.radio.NrIndicators;
+import android.hardware.radio.network.LteVopsInfo;
+import android.hardware.radio.network.NrIndicators;
@VintfStability
parcelable EutranRegistrationInfo {
diff --git a/radio/aidl/android/hardware/radio/EvdoSignalStrength.aidl b/radio/aidl/android/hardware/radio/network/EvdoSignalStrength.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/EvdoSignalStrength.aidl
rename to radio/aidl/android/hardware/radio/network/EvdoSignalStrength.aidl
index ff631f3..0ab8b59 100644
--- a/radio/aidl/android/hardware/radio/EvdoSignalStrength.aidl
+++ b/radio/aidl/android/hardware/radio/network/EvdoSignalStrength.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable EvdoSignalStrength {
diff --git a/radio/aidl/android/hardware/radio/GeranBands.aidl b/radio/aidl/android/hardware/radio/network/GeranBands.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/GeranBands.aidl
rename to radio/aidl/android/hardware/radio/network/GeranBands.aidl
index d3a7598..573d771 100644
--- a/radio/aidl/android/hardware/radio/GeranBands.aidl
+++ b/radio/aidl/android/hardware/radio/network/GeranBands.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/GsmSignalStrength.aidl b/radio/aidl/android/hardware/radio/network/GsmSignalStrength.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/GsmSignalStrength.aidl
rename to radio/aidl/android/hardware/radio/network/GsmSignalStrength.aidl
index 65f853a..539e1ce 100644
--- a/radio/aidl/android/hardware/radio/GsmSignalStrength.aidl
+++ b/radio/aidl/android/hardware/radio/network/GsmSignalStrength.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable GsmSignalStrength {
diff --git a/radio/aidl/android/hardware/radio/network/IRadioNetwork.aidl b/radio/aidl/android/hardware/radio/network/IRadioNetwork.aidl
new file mode 100644
index 0000000..0db918d
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/network/IRadioNetwork.aidl
@@ -0,0 +1,444 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.network;
+
+import android.hardware.radio.AccessNetwork;
+import android.hardware.radio.RadioAccessFamily;
+import android.hardware.radio.network.CdmaRoamingType;
+import android.hardware.radio.network.IRadioNetworkIndication;
+import android.hardware.radio.network.IRadioNetworkResponse;
+import android.hardware.radio.network.IndicationFilter;
+import android.hardware.radio.network.NetworkScanRequest;
+import android.hardware.radio.network.NrDualConnectivityState;
+import android.hardware.radio.network.RadioAccessSpecifier;
+import android.hardware.radio.network.RadioBandMode;
+import android.hardware.radio.network.SignalThresholdInfo;
+
+/**
+ * This interface is used by telephony and telecom to talk to cellular radio for network APIs.
+ * All the functions have minimum one parameter:
+ * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the
+ * duration of a method call. If clients provide colliding serials (including passing the same
+ * serial to different methods), multiple responses (one for each method call) must still be served.
+ * setResponseFunctions must work with IRadioNetworkResponse and IRadioNetworkIndication.
+ */
+@VintfStability
+oneway interface IRadioNetwork {
+ /**
+ * Requests bitmap representing the currently allowed network types.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getAllowedNetworkTypesBitmapResponse()
+ */
+ void getAllowedNetworkTypesBitmap(in int serial);
+
+ /**
+ * Get the list of band modes supported by RF.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getAvailableBandModesResponse()
+ */
+ void getAvailableBandModes(in int serial);
+
+ /**
+ * Scans for available networks
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getAvailableNetworksResponse()
+ */
+ void getAvailableNetworks(in int serial);
+
+ /**
+ * Get all the barring info for the current camped cell applicable to the current user.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getBarringInfoResponse()
+ */
+ void getBarringInfo(in int serial);
+
+ /**
+ * Request the actual setting of the roaming preferences in CDMA in the modem
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getCdmaRoamingPreferenceResponse()
+ */
+ void getCdmaRoamingPreference(in int serial);
+
+ /**
+ * Request all of the current cell information known to the radio. The radio must return a list
+ * of all current cells, including the neighboring cells. If for a particular cell information
+ * isn't known then the appropriate unknown value will be returned.
+ * This does not cause or change the rate of unsolicited cellInfoList().
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getCellInfoListResponse()
+ */
+ void getCellInfoList(in int serial);
+
+ /**
+ * Request current data registration state.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getDataRegistrationStateResponse()
+ */
+ void getDataRegistrationState(in int serial);
+
+ /**
+ * Request current IMS registration state
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getImsRegistrationStateResponse()
+ */
+ void getImsRegistrationState(in int serial);
+
+ /**
+ * Request neighboring cell id in GSM network
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getNeighboringCidsResponse()
+ */
+ void getNeighboringCids(in int serial);
+
+ /**
+ * Query current network selection mode
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getNetworkSelectionModeResponse()
+ */
+ void getNetworkSelectionMode(in int serial);
+
+ /**
+ * Request current operator ONS or EONS
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getOperatorResponse()
+ */
+ void getOperator(in int serial);
+
+ /**
+ * Requests current signal strength and associated information. Must succeed if radio is on.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getSignalStrengthResponse()
+ */
+ void getSignalStrength(in int serial);
+
+ /**
+ * Get which bands the modem's background scan is acting on.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getSystemSelectionChannelsResponse()
+ */
+ void getSystemSelectionChannels(in int serial);
+
+ /**
+ * Query the radio technology type (3GPP/3GPP2) used for voice. Query is valid only
+ * when radio state is not RADIO_STATE_UNAVAILABLE
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getVoiceRadioTechnologyResponse()
+ */
+ void getVoiceRadioTechnology(in int serial);
+
+ /**
+ * Request current voice registration state.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.getVoiceRegistrationStateResponse()
+ */
+ void getVoiceRegistrationState(in int serial);
+
+ /**
+ * Is E-UTRA-NR Dual Connectivity enabled
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.isNrDualConnectivityEnabledResponse()
+ */
+ void isNrDualConnectivityEnabled(in int serial);
+
+ /**
+ * Pull LCE service for capacity information.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.pullLceDataResponse()
+ */
+ void pullLceData(in int serial);
+
+ /**
+ * When response type received from a radio indication or radio response is
+ * RadioIndicationType:UNSOLICITED_ACK_EXP or RadioResponseType:SOLICITED_ACK_EXP respectively,
+ * acknowledge the receipt of those messages by sending responseAcknowledgement().
+ */
+ void responseAcknowledgement();
+
+ /**
+ * Requests to set the network type for searching and registering. Instruct the radio to
+ * *only* accept the types of network provided. In case of an emergency call, the modem is
+ * authorized to bypass this restriction.
+ *
+ * @param serial Serial number of request.
+ * @param networkTypeBitmap a 32-bit bearer bitmap of RadioAccessFamily
+ *
+ * Response function is IRadioNetworkResponse.setAllowedNetworkTypesBitmapResponse()
+ */
+ void setAllowedNetworkTypesBitmap(in int serial, in RadioAccessFamily networkTypeBitmap);
+
+ /**
+ * Assign a specified band for RF configuration.
+ *
+ * @param serial Serial number of request.
+ * @param mode RadioBandMode
+ *
+ * Response function is IRadioNetworkResponse.setBandModeResponse()
+ */
+ void setBandMode(in int serial, in RadioBandMode mode);
+
+ /**
+ * Change call barring facility password
+ *
+ * @param serial Serial number of request.
+ * @param facility facility string code from TS 27.007 7.4 (eg "AO" for BAOC)
+ * @param oldPassword old password
+ * @param newPassword new password
+ *
+ * Response function is IRadioNetworkResponse.setBarringPasswordResponse()
+ */
+ void setBarringPassword(
+ in int serial, in String facility, in String oldPassword, in String newPassword);
+
+ /**
+ * Request to set the roaming preferences in CDMA
+ *
+ * @param serial Serial number of request.
+ * @param type CdmaRoamingType defined in types.hal
+ *
+ * Response function is IRadioNetworkResponse.setCdmaRoamingPreferenceResponse()
+ */
+ void setCdmaRoamingPreference(in int serial, in CdmaRoamingType type);
+
+ /**
+ * Sets the minimum time between when unsolicited cellInfoList() must be invoked.
+ * A value of 0, means invoke cellInfoList() when any of the reported information changes.
+ * Setting the value to INT_MAX(0x7fffffff) means never issue a unsolicited cellInfoList().
+ *
+ * @param serial Serial number of request.
+ * @param rate minimum time in milliseconds to indicate time between unsolicited cellInfoList()
+ *
+ * Response function is IRadioNetworkResponse.setCellInfoListRateResponse()
+ */
+ void setCellInfoListRate(in int serial, in int rate);
+
+ /**
+ * Sets the indication filter. Prevents the reporting of specified unsolicited indications from
+ * the radio. This is used for power saving in instances when those indications are not needed.
+ * If unset, defaults to IndicationFilter:ALL.
+ *
+ * @param serial Serial number of request.
+ * @param indicationFilter 32-bit bitmap of IndicationFilter. Bits set to 1 indicate the
+ * indications are enabled. See IndicationFilter for the definition of each bit.
+ *
+ * Response function is IRadioNetworkResponse.setIndicationFilterResponse()
+ */
+ void setIndicationFilter(in int serial, in IndicationFilter indicationFilter);
+
+ /**
+ * Sets the link capacity reporting criteria. The resulting reporting criteria are the AND of
+ * all the supplied criteria. Note that reporting criteria must be individually set for each
+ * RAN. If unset, reporting criteria for that RAN are implementation-defined.
+ *
+ * @param serial Serial number of request.
+ * @param hysteresisMs A hysteresis time in milliseconds to prevent flapping. A value of 0
+ * disables hysteresis.
+ * @param hysteresisDlKbps An interval in kbps defining the required magnitude change between DL
+ * reports. hysteresisDlKbps must be smaller than the smallest threshold delta. A value
+ * of 0 disables hysteresis.
+ * @param hysteresisUlKbps An interval in kbps defining the required magnitude change between UL
+ * reports. hysteresisUlKbps must be smaller than the smallest threshold delta. A value
+ * of 0 disables hysteresis.
+ * @param thresholdsDownlinkKbps A vector of trigger thresholds in kbps for downlink reports. A
+ * vector size of 0 disables the use of DL thresholds for reporting.
+ * @param thresholdsUplinkKbps A vector of trigger thresholds in kbps for uplink reports. A
+ * vector size of 0 disables the use of UL thresholds for reporting.
+ * @param accessNetwork The type of network for which to apply these thresholds.
+ *
+ * Response function is IRadioNetworkResponse.setLinkCapacityReportingCriteriaResponse().
+ */
+ void setLinkCapacityReportingCriteria(in int serial, in int hysteresisMs,
+ in int hysteresisDlKbps, in int hysteresisUlKbps, in int[] thresholdsDownlinkKbps,
+ in int[] thresholdsUplinkKbps, in AccessNetwork accessNetwork);
+
+ /**
+ * Enables/disables network state change notifications due to changes in LAC and/or CID (for
+ * GSM) or BID/SID/NID/latitude/longitude (for CDMA). Basically +CREG=2 vs. +CREG=1 (TS 27.007).
+ * The Radio implementation must default to "updates enabled" when the screen is on and
+ * "updates disabled" when the screen is off.
+ *
+ * @param serial Serial number of request.
+ * @param enable true=updates enabled (+CREG=2), false=updates disabled (+CREG=1)
+ *
+ * Response function is IRadioNetworkResponse.setLocationUpdatesResponse()
+ */
+ void setLocationUpdates(in int serial, in boolean enable);
+
+ /**
+ * Specify that the network must be selected automatically.
+ * This request must not respond until the new operator is selected and registered.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.setNetworkSelectionModeAutomaticResponse()
+ */
+ void setNetworkSelectionModeAutomatic(in int serial);
+
+ /**
+ * Manually select a specified network. This request must not respond until the new operator is
+ * selected and registered. Per TS 23.122, the RAN is just the initial suggested value.
+ * If registration fails, the RAN is not available afterwards, or the RAN is not within the
+ * network types specified by IRadioNetwork::setAllowedNetworkTypeBitmap, then the modem will
+ * need to select the next best RAN for network registration.
+ *
+ * @param serial Serial number of request.
+ * @param operatorNumeric String specifying MCCMNC of network to select (eg "310170").
+ * @param ran Initial suggested access network type. If value is UNKNOWN, the modem will select
+ * the next best RAN for network registration.
+ *
+ * Response function is IRadioNetworkResponse.setNetworkSelectionModeManualResponse()
+ */
+ void setNetworkSelectionModeManual(
+ in int serial, in String operatorNumeric, in AccessNetwork ran);
+
+ /**
+ * Enable or disable E-UTRA-NR dual connectivity. If disabled then UE will not connect
+ * to secondary carrier.
+ *
+ * @param serial Serial number of request.
+ * @param nrDualConnectivityState expected NR dual connectivity state.
+ * 1: Enable NR dual connectivity {NrDualConnectivityState:ENABLE}
+ * 2: Disable NR dual connectivity {NrDualConnectivityState:DISABLE}
+ * 3: Disable NR dual connectivity and force secondary cell to be released
+ * {NrDualConnectivityState:DISABLE_IMMEDIATE}
+ *
+ * Response function is IRadioNetworkResponse.setNrDualConnectivityStateResponse()
+ */
+ void setNrDualConnectivityState(
+ in int serial, in NrDualConnectivityState nrDualConnectivityState);
+
+ /**
+ * Set response functions for network radio requests and indications.
+ *
+ * @param radioNetworkResponse Object containing response functions
+ * @param radioNetworkIndication Object containing radio indications
+ */
+ void setResponseFunctions(in IRadioNetworkResponse radioNetworkResponse,
+ in IRadioNetworkIndication radioNetworkIndication);
+
+ /**
+ * Sets the signal strength reporting criteria. The resulting reporting rules are the AND of all
+ * the supplied criteria. For each RAN the hysteresisDb and thresholds apply to only the
+ * following measured quantities:
+ * -GERAN - RSSI
+ * -CDMA2000 - RSSI
+ * -UTRAN - RSCP
+ * -EUTRAN - RSRP/RSRQ/RSSNR
+ * -NGRAN - SSRSRP/SSRSRQ/SSSINR
+ * Note that reporting criteria must be individually set for each RAN. For each RAN, if none of
+ * reporting criteria of any measurement is set enabled (see SignalThresholdInfo.isEnabled),
+ * the reporting criteria for this RAN is implementation-defined. For each RAN, if any reporting
+ * criteria of any measure is set enabled, the reporting criteria of the other measures in this
+ * RAN are set disabled (see SignalThresholdInfo.isEnabled) until they are set enabled.
+ *
+ * @param serial Serial number of request.
+ * @param signalThresholdInfo Signal threshold info including the threshold values,
+ * hysteresisDb, hysteresisMs and isEnabled. See SignalThresholdInfo for details.
+ * @param accessNetwork The type of network for which to apply these thresholds.
+ *
+ * Response function is IRadioNetworkResponse.setSignalStrengthReportingCriteriaResponse()
+ */
+ void setSignalStrengthReportingCriteria(in int serial,
+ in SignalThresholdInfo signalThresholdInfo, in AccessNetwork accessNetwork);
+
+ /**
+ * Enables/disables supplementary service related notifications from the network.
+ * Notifications are reported via unsolSuppSvcNotification().
+ *
+ * @param serial Serial number of request.
+ * @param enable true = notifications enabled, false = notifications disabled.
+ *
+ * Response function is IRadioNetworkResponse.setSuppServiceNotificationsResponse()
+ */
+ void setSuppServiceNotifications(in int serial, in boolean enable);
+
+ /**
+ * Specify which bands modem's background scan must act on. If specifyChannels is true, it only
+ * scans bands specified in specifiers. If specifyChannels is false, it scans all bands. For
+ * example, CBRS is only on LTE band 48. By specifying this band, modem saves more power.
+ *
+ * @param serial Serial number of request.
+ * @param specifyChannels whether to scan bands defined in specifiers.
+ * @param specifiers which bands to scan. Only used if specifyChannels is true.
+ *
+ * Response function is IRadioNetworkResponse.setSystemSelectionChannelsResponse()
+ */
+ void setSystemSelectionChannels(
+ in int serial, in boolean specifyChannels, in RadioAccessSpecifier[] specifiers);
+
+ /**
+ * Starts a network scan.
+ *
+ * @param serial Serial number of request.
+ * @param request Defines the radio networks/bands/channels which need to be scanned.
+ *
+ * Response function is IRadioNetworkResponse.startNetworkScanResponse()
+ */
+ void startNetworkScan(in int serial, in NetworkScanRequest request);
+
+ /**
+ * Stops ongoing network scan
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioNetworkResponse.stopNetworkScanResponse()
+ */
+ void stopNetworkScan(in int serial);
+
+ /**
+ * Requests that network personalization be deactivated
+ *
+ * @param serial Serial number of request.
+ * @param netPin Network depersonlization code
+ *
+ * Response function is IRadioNetworkResponse.supplyNetworkDepersonalizationResponse()
+ */
+ void supplyNetworkDepersonalization(in int serial, in String netPin);
+}
diff --git a/radio/aidl/android/hardware/radio/network/IRadioNetworkIndication.aidl b/radio/aidl/android/hardware/radio/network/IRadioNetworkIndication.aidl
new file mode 100644
index 0000000..a2fac20
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/network/IRadioNetworkIndication.aidl
@@ -0,0 +1,188 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.network;
+
+import android.hardware.radio.RadioIndicationType;
+import android.hardware.radio.RadioTechnology;
+import android.hardware.radio.network.BarringInfo;
+import android.hardware.radio.network.CellIdentity;
+import android.hardware.radio.network.CellInfo;
+import android.hardware.radio.network.Domain;
+import android.hardware.radio.network.LinkCapacityEstimate;
+import android.hardware.radio.network.NetworkScanResult;
+import android.hardware.radio.network.PhoneRestrictedState;
+import android.hardware.radio.network.PhysicalChannelConfig;
+import android.hardware.radio.network.SignalStrength;
+import android.hardware.radio.network.SuppSvcNotification;
+
+/**
+ * Interface declaring unsolicited radio indications for network APIs.
+ */
+@VintfStability
+oneway interface IRadioNetworkIndication {
+ /**
+ * Indicate barring information for the user’s access category / access class and PLMN.
+ *
+ * <p>Provide information about the barring status of the cell for the user. The information
+ * provided should describe all barring configurations that are applicable to the current user,
+ * even if the user is not currently barred (due to conditional barring). This informs Android
+ * of likely future (statistical) barring for specific services.
+ *
+ * <p>This indication should be sent whenever the cell’s barring config changes for the current
+ * user, or if the user’s conditional barring status changes due to re-evaluation of the
+ * barring conditions. Barring status will likely change when the device camps for service,
+ * when PLMN selection is completed, when the device attempts to access a conditionally barred
+ * service, and when the System Information including barring info for a camped cell is updated.
+ *
+ * @param type Type of radio indication
+ * @param cellIdentity cellIdentity for the barring infos
+ * @param barringInfos a vector of BarringInfos for all barring service types
+ */
+ void barringInfoChanged(in RadioIndicationType type, in CellIdentity cellIdentity,
+ in BarringInfo[] barringInfos);
+
+ /**
+ * Indicates when PRL (preferred roaming list) changes.
+ *
+ * @param type Type of radio indication
+ * @param version PRL version after PRL changes
+ */
+ void cdmaPrlChanged(in RadioIndicationType type, in int version);
+
+ /**
+ * Report all of the current cell information known to the radio.
+ *
+ * @param type Type of radio indication
+ * @param records Current cell information
+ */
+ void cellInfoList(in RadioIndicationType type, in CellInfo[] records);
+
+ /**
+ * Indicates current link capacity estimate. This indication is sent whenever the reporting
+ * criteria, as set by IRadioNetwork.setLinkCapacityReportingCriteria(), are met and the
+ * indication is not suppressed by IRadioNetwork.setIndicationFilter().
+ *
+ * @param type Type of radio indication
+ * @param lce LinkCapacityEstimate
+ */
+ void currentLinkCapacityEstimate(in RadioIndicationType type, in LinkCapacityEstimate lce);
+
+ /**
+ * Indicates physical channel configurations. An empty configs list shall be returned when the
+ * radio is in idle mode (i.e. RRC idle).
+ *
+ * @param type Type of radio indication
+ * @param configs Vector of PhysicalChannelConfigs
+ */
+ void currentPhysicalChannelConfigs(
+ in RadioIndicationType type, in PhysicalChannelConfig[] configs);
+
+ /**
+ * Indicates current signal strength of the radio.
+ *
+ * @param type Type of radio indication
+ * @param signalStrength SignalStrength information
+ */
+ void currentSignalStrength(in RadioIndicationType type, in SignalStrength signalStrength);
+
+ /**
+ * Indicates when IMS registration state has changed. To get IMS registration state and IMS SMS
+ * format, callee needs to invoke getImsRegistrationState().
+ *
+ * @param type Type of radio indication
+ */
+ void imsNetworkStateChanged(in RadioIndicationType type);
+
+ /**
+ * Incremental network scan results.
+ *
+ * @param type Type of radio indication
+ * @param result the result of the network scan
+ */
+ void networkScanResult(in RadioIndicationType type, in NetworkScanResult result);
+
+ /**
+ * Indicates when voice or data network state changed. Callee must invoke
+ * IRadioNetwork.getVoiceRegistrationState(), IRadioNetwork.getDataRegistrationState(), and
+ * IRadioNetwork.getOperator()
+ *
+ * @param type Type of radio indication
+ */
+ void networkStateChanged(in RadioIndicationType type);
+
+ /**
+ * Indicates when radio has received a NITZ time message.
+ *
+ * @param type Type of radio indication
+ * @param nitzTime NITZ time string in the form "yy/mm/dd,hh:mm:ss(+/-)tz,dt"
+ * @param receivedTime milliseconds since boot that the NITZ time was received
+ */
+ void nitzTimeReceived(in RadioIndicationType type, in String nitzTime, in long receivedTime);
+
+ /**
+ * Report that Registration or a Location/Routing/Tracking Area update has failed.
+ *
+ * <p>Indicate whenever a registration procedure, including a location, routing, or tracking
+ * area update fails. This includes procedures that do not necessarily result in a change of
+ * the modem's registration status. If the modem's registration status changes, that is
+ * reflected in the onNetworkStateChanged() and subsequent get{Voice/Data}RegistrationState().
+ *
+ * @param cellIdentity the CellIdentity, which must include the globally unique identifier for
+ * the cell (for example, all components of the CGI or ECGI).
+ * @param chosenPlmn a 5 or 6 digit alphanumeric PLMN (MCC|MNC) among those broadcast by the
+ * cell that was chosen for the failed registration attempt.
+ * @param domain Domain::CS, Domain::PS, or both in case of a combined procedure.
+ * @param causeCode the primary failure cause code of the procedure.
+ * For GSM/UMTS (MM), values are in TS 24.008 Sec 10.5.95
+ * For GSM/UMTS (GMM), values are in TS 24.008 Sec 10.5.147
+ * For LTE (EMM), cause codes are TS 24.301 Sec 9.9.3.9
+ * For NR (5GMM), cause codes are TS 24.501 Sec 9.11.3.2
+ * MAX_INT if this value is unused.
+ * @param additionalCauseCode the cause code of any secondary/combined procedure if appropriate.
+ * For UMTS, if a combined attach succeeds for PS only, then the GMM cause code shall be
+ * included as an additionalCauseCode.
+ * For LTE (ESM), cause codes are in TS 24.301 9.9.4.4
+ * MAX_INT if this value is unused.
+ */
+ void registrationFailed(in RadioIndicationType type, in CellIdentity cellIdentity,
+ in String chosenPlmn, in Domain domain, in int causeCode, in int additionalCauseCode);
+
+ /**
+ * Indicates a restricted state change (eg, for Domain Specific Access Control).
+ * Radio must send this msg after radio off/on cycle no matter it is changed or not.
+ *
+ * @param type Type of radio indication
+ * @param state Bitmask of restricted state as defined by PhoneRestrictedState
+ */
+ void restrictedStateChanged(in RadioIndicationType type, in PhoneRestrictedState state);
+
+ /**
+ * Reports supplementary service related notification from the network.
+ *
+ * @param type Type of radio indication
+ * @param suppSvc SuppSvcNotification
+ */
+ void suppSvcNotify(in RadioIndicationType type, in SuppSvcNotification suppSvc);
+
+ /**
+ * Indicates that voice technology has changed. Responds with new rat.
+ *
+ * @param type Type of radio indication
+ * @param rat Current new voice rat
+ */
+ void voiceRadioTechChanged(in RadioIndicationType type, in RadioTechnology rat);
+}
diff --git a/radio/aidl/android/hardware/radio/network/IRadioNetworkResponse.aidl b/radio/aidl/android/hardware/radio/network/IRadioNetworkResponse.aidl
new file mode 100644
index 0000000..ae2646d
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/network/IRadioNetworkResponse.aidl
@@ -0,0 +1,588 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.network;
+
+import android.hardware.radio.RadioAccessFamily;
+import android.hardware.radio.RadioResponseInfo;
+import android.hardware.radio.RadioTechnology;
+import android.hardware.radio.RadioTechnologyFamily;
+import android.hardware.radio.network.BarringInfo;
+import android.hardware.radio.network.CdmaRoamingType;
+import android.hardware.radio.network.CellIdentity;
+import android.hardware.radio.network.CellInfo;
+import android.hardware.radio.network.LceDataInfo;
+import android.hardware.radio.network.NeighboringCell;
+import android.hardware.radio.network.OperatorInfo;
+import android.hardware.radio.network.RadioAccessSpecifier;
+import android.hardware.radio.network.RadioBandMode;
+import android.hardware.radio.network.RegStateResult;
+import android.hardware.radio.network.SignalStrength;
+
+/**
+ * Interface declaring response functions to solicited radio requests for network APIs.
+ */
+@VintfStability
+oneway interface IRadioNetworkResponse {
+ /**
+ * Acknowledge the receipt of radio request sent to the vendor. This must be sent only for
+ * radio request which take long time to respond. For more details, refer
+ * https://source.android.com/devices/tech/connect/ril.html
+ *
+ * @param serial Serial no. of the request whose acknowledgement is sent.
+ */
+ void acknowledgeRequest(in int serial);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param networkTypeBitmap a 32-bit bitmap of RadioAccessFamily.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:MODE_NOT_SUPPORTED
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ */
+ void getAllowedNetworkTypesBitmapResponse(
+ in RadioResponseInfo info, in RadioAccessFamily networkTypeBitmap);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param bandModes List of RadioBandMode listing supported modes
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getAvailableBandModesResponse(in RadioResponseInfo info, in RadioBandMode[] bandModes);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param networkInfos List of network operator information as OperatorInfos
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:ABORTED
+ * RadioError:DEVICE_IN_USE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:CANCELLED
+ * RadioError:NO_RESOURCES
+ * RadioError:INTERNAL_ERR
+ */
+ void getAvailableNetworksResponse(in RadioResponseInfo info, in OperatorInfo[] networkInfos);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param cellIdentity CellIdentity for the barring infos.
+ * @param barringInfos a vector of barring info for all barring service types
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:MODEM_ERR
+ */
+ void getBarringInfoResponse(
+ in RadioResponseInfo info, in CellIdentity cellIdentity, in BarringInfo[] barringInfos);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param type CdmaRoamingType
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void getCdmaRoamingPreferenceResponse(in RadioResponseInfo info, in CdmaRoamingType type);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param cellInfo List of current cell information known to radio
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ */
+ void getCellInfoListResponse(in RadioResponseInfo info, in CellInfo[] cellInfo);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param dataRegResponse Current data registration response as defined by RegStateResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NOT_PROVISIONED
+ */
+ void getDataRegistrationStateResponse(
+ in RadioResponseInfo info, in RegStateResult dataRegResponse);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param isRegistered false = not registered, true = registered
+ * @param ratFamily RadioTechnologyFamily. This value is valid only if isRegistered is true.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void getImsRegistrationStateResponse(
+ in RadioResponseInfo info, in boolean isRegistered, in RadioTechnologyFamily ratFamily);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param cells Vector of neighboring radio cell
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:NO_NETWORK_FOUND
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getNeighboringCidsResponse(in RadioResponseInfo info, in NeighboringCell[] cells);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param selection false for automatic selection, true for manual selection
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getNetworkSelectionModeResponse(in RadioResponseInfo info, in boolean manual);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param longName is long alpha ONS or EONS or empty string if unregistered
+ * @param shortName is short alpha ONS or EONS or empty string if unregistered
+ * @param numeric is 5 or 6 digit numeric code (MCC + MNC) or empty string if unregistered
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getOperatorResponse(
+ in RadioResponseInfo info, in String longName, in String shortName, in String numeric);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param signalStrength Current signal strength
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ */
+ void getSignalStrengthResponse(in RadioResponseInfo info, in SignalStrength signalStrength);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param specifiers List of RadioAccessSpecifiers that are scanned.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_ARGUMENTS
+ */
+ void getSystemSelectionChannelsResponse(
+ in RadioResponseInfo info, in RadioAccessSpecifier[] specifiers);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param rat Current voice RAT
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void getVoiceRadioTechnologyResponse(in RadioResponseInfo info, in RadioTechnology rat);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param voiceRegResponse Current Voice registration response as defined by RegStateResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ */
+ void getVoiceRegistrationStateResponse(
+ in RadioResponseInfo info, in RegStateResult voiceRegResponse);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param isEnabled Indicates whether NR dual connectivity is enabled or not, True if enabled
+ * else false.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void isNrDualConnectivityEnabledResponse(in RadioResponseInfo info, in boolean isEnabled);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param lceInfo LceDataInfo indicating LCE data
+ *
+ * Valid errors returned:
+ * RadioError:REQUEST_NOT_SUPPORTED may be returned when HAL 1.2 or higher is supported.
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:LCE_NOT_SUPPORTED
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void pullLceDataResponse(in RadioResponseInfo info, in LceDataInfo lceInfo);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:MODE_NOT_SUPPORTED
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ */
+ void setAllowedNetworkTypesBitmapResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setBandModeResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setBarringPasswordResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void setCdmaRoamingPreferenceResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void setCellInfoListRateResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ */
+ void setIndicationFilterResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ */
+ void setLinkCapacityReportingCriteriaResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void setLocationUpdatesResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:ILLEGAL_SIM_OR_ME
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ *
+ * Returns RadioError:ILLEGAL_SIM_OR_ME when the failure is permanent and
+ * no retries needed, such as illegal SIM or ME.
+ */
+ void setNetworkSelectionModeAutomaticResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:ILLEGAL_SIM_OR_ME
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ *
+ * Returns RadioError:ILLEGAL_SIM_OR_ME when the failure is permanent and
+ * no retries needed, such as illegal SIM or ME.
+ */
+ void setNetworkSelectionModeManualResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_STATE
+ */
+ void setNrDualConnectivityStateResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:RADIO_NOT_AVAILABLE
+ */
+ void setSignalStrengthReportingCriteriaResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SIM_BUSY
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void setSuppServiceNotificationsResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_ARGUMENTS
+ */
+ void setSystemSelectionChannelsResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:DEVICE_IN_USE
+ * RadioError:INTERNAL_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ */
+ void startNetworkScanResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:INTERNAL_ERR
+ * RadioError:MODEM_ERR
+ */
+ void stopNetworkScanResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:PASSWORD_INCORRECT (code is invalid)
+ * RadioError:NO_MEMORY
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_ABSENT
+ */
+ void supplyNetworkDepersonalizationResponse(in RadioResponseInfo info, in int remainingRetries);
+}
diff --git a/radio/aidl/android/hardware/radio/network/IndicationFilter.aidl b/radio/aidl/android/hardware/radio/network/IndicationFilter.aidl
new file mode 100644
index 0000000..ac48227
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/network/IndicationFilter.aidl
@@ -0,0 +1,69 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.network;
+
+@VintfStability
+@Backing(type="int")
+enum IndicationFilter {
+ NONE = 0,
+ ALL = ~0,
+ /**
+ * When this bit is set, modem must send the signal strength update through
+ * IRadioNetworkIndication.currentSignalStrength() when all criteria specified by
+ * IRadioNetwork.setSignalStrengthReportingCriteria() are met.
+ */
+ SIGNAL_STRENGTH = 1 << 0,
+ /**
+ * When this bit is set, modem must invoke IRadioNetworkIndication.networkStateChanged() when
+ * any field in the voice or data RegStateResult changes. When this bit is not set, modem must
+ * suppress IRadioNetworkIndication.networkStateChanged() when there are only changes from
+ * insignificant fields. Modem must invoke IRadioNetworkIndication.networkStateChanged() when
+ * significant fields are updated regardless of whether this bit is set.
+ *
+ * The following fields in RegStateResult are considered significant: regState, rat.
+ */
+ FULL_NETWORK_STATE = 1 << 1,
+ /**
+ * When this bit is set, modem must send IRadioNetworkIndication.dataCallListChanged() whenever
+ * any field in SetupDataCallResult changes. When this bit is not set, modem must suppress the
+ * indication when the only changed field is 'active' (for data dormancy). For all other field
+ * changes, the modem must send IRadioNetworkIndication.dataCallListChanged() regardless of
+ * whether this bit is set.
+ */
+ DATA_CALL_DORMANCY_CHANGED = 1 << 2,
+ /**
+ * When this bit is set, modem must send the link capacity update through
+ * IRadioNetworkIndication.currentLinkCapacityEstimate() when all criteria specified by
+ * IRadioNetwork.setLinkCapacityReportingCriteria() are met.
+ */
+ LINK_CAPACITY_ESTIMATE = 1 << 3,
+ /**
+ * When this bit is set, the modem must send the physical channel configuration update through
+ * IRadioNetworkIndication.currentPhysicalChannelConfigs() when the configuration has changed.
+ * It is recommended that this be reported whenever link capacity or signal strength is
+ * reported.
+ */
+ PHYSICAL_CHANNEL_CONFIG = 1 << 4,
+ /**
+ * Control the unsolicited sending of registration failure reports via onRegistrationFailed
+ */
+ REGISTRATION_FAILURE = 1 << 5,
+ /**
+ * Control the unsolicited sending of barring info updates via onBarringInfo
+ */
+ BARRING_INFO = 1 << 6,
+}
diff --git a/radio/aidl/android/hardware/radio/LceDataInfo.aidl b/radio/aidl/android/hardware/radio/network/LceDataInfo.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/LceDataInfo.aidl
rename to radio/aidl/android/hardware/radio/network/LceDataInfo.aidl
index 68521b5..344227e 100644
--- a/radio/aidl/android/hardware/radio/LceDataInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/LceDataInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable LceDataInfo {
diff --git a/radio/aidl/android/hardware/radio/LinkCapacityEstimate.aidl b/radio/aidl/android/hardware/radio/network/LinkCapacityEstimate.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/LinkCapacityEstimate.aidl
rename to radio/aidl/android/hardware/radio/network/LinkCapacityEstimate.aidl
index 78ddee2..8d31bbc 100644
--- a/radio/aidl/android/hardware/radio/LinkCapacityEstimate.aidl
+++ b/radio/aidl/android/hardware/radio/network/LinkCapacityEstimate.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable LinkCapacityEstimate {
diff --git a/radio/aidl/android/hardware/radio/LteSignalStrength.aidl b/radio/aidl/android/hardware/radio/network/LteSignalStrength.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/LteSignalStrength.aidl
rename to radio/aidl/android/hardware/radio/network/LteSignalStrength.aidl
index 699925d..a727aa5 100644
--- a/radio/aidl/android/hardware/radio/LteSignalStrength.aidl
+++ b/radio/aidl/android/hardware/radio/network/LteSignalStrength.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable LteSignalStrength {
diff --git a/radio/aidl/android/hardware/radio/LteVopsInfo.aidl b/radio/aidl/android/hardware/radio/network/LteVopsInfo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/LteVopsInfo.aidl
rename to radio/aidl/android/hardware/radio/network/LteVopsInfo.aidl
index b487a8f..1cda8db 100644
--- a/radio/aidl/android/hardware/radio/LteVopsInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/LteVopsInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* Type to define the LTE specific network capabilities for voice over PS including emergency and
diff --git a/radio/aidl/android/hardware/radio/NeighboringCell.aidl b/radio/aidl/android/hardware/radio/network/NeighboringCell.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/NeighboringCell.aidl
rename to radio/aidl/android/hardware/radio/network/NeighboringCell.aidl
index b48a2d4..270bdee 100644
--- a/radio/aidl/android/hardware/radio/NeighboringCell.aidl
+++ b/radio/aidl/android/hardware/radio/network/NeighboringCell.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable NeighboringCell {
diff --git a/radio/aidl/android/hardware/radio/NetworkScanRequest.aidl b/radio/aidl/android/hardware/radio/network/NetworkScanRequest.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/NetworkScanRequest.aidl
rename to radio/aidl/android/hardware/radio/network/NetworkScanRequest.aidl
index d495a9d..ec8aa95 100644
--- a/radio/aidl/android/hardware/radio/NetworkScanRequest.aidl
+++ b/radio/aidl/android/hardware/radio/network/NetworkScanRequest.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.RadioAccessSpecifier;
+import android.hardware.radio.network.RadioAccessSpecifier;
@VintfStability
parcelable NetworkScanRequest {
diff --git a/radio/aidl/android/hardware/radio/NetworkScanResult.aidl b/radio/aidl/android/hardware/radio/network/NetworkScanResult.aidl
similarity index 93%
rename from radio/aidl/android/hardware/radio/NetworkScanResult.aidl
rename to radio/aidl/android/hardware/radio/network/NetworkScanResult.aidl
index dd71d11..e08d63e 100644
--- a/radio/aidl/android/hardware/radio/NetworkScanResult.aidl
+++ b/radio/aidl/android/hardware/radio/network/NetworkScanResult.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellInfo;
import android.hardware.radio.RadioError;
+import android.hardware.radio.network.CellInfo;
@VintfStability
parcelable NetworkScanResult {
diff --git a/radio/aidl/android/hardware/radio/NgranBands.aidl b/radio/aidl/android/hardware/radio/network/NgranBands.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/NgranBands.aidl
rename to radio/aidl/android/hardware/radio/network/NgranBands.aidl
index 7887011..a1c2957 100644
--- a/radio/aidl/android/hardware/radio/NgranBands.aidl
+++ b/radio/aidl/android/hardware/radio/network/NgranBands.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* NGRAN bands up to V16.5.0
diff --git a/radio/aidl/android/hardware/radio/NrDualConnectivityState.aidl b/radio/aidl/android/hardware/radio/network/NrDualConnectivityState.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/NrDualConnectivityState.aidl
rename to radio/aidl/android/hardware/radio/network/NrDualConnectivityState.aidl
index 52bd048..e40d4f9 100644
--- a/radio/aidl/android/hardware/radio/NrDualConnectivityState.aidl
+++ b/radio/aidl/android/hardware/radio/network/NrDualConnectivityState.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* NR Dual connectivity state
diff --git a/radio/aidl/android/hardware/radio/NrIndicators.aidl b/radio/aidl/android/hardware/radio/network/NrIndicators.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/NrIndicators.aidl
rename to radio/aidl/android/hardware/radio/network/NrIndicators.aidl
index 2a1dfec..98fac25 100644
--- a/radio/aidl/android/hardware/radio/NrIndicators.aidl
+++ b/radio/aidl/android/hardware/radio/network/NrIndicators.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* The parameters of NR 5G Non-Standalone.
diff --git a/radio/aidl/android/hardware/radio/NrSignalStrength.aidl b/radio/aidl/android/hardware/radio/network/NrSignalStrength.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/NrSignalStrength.aidl
rename to radio/aidl/android/hardware/radio/network/NrSignalStrength.aidl
index 40c6c3e..d2ac02b 100644
--- a/radio/aidl/android/hardware/radio/NrSignalStrength.aidl
+++ b/radio/aidl/android/hardware/radio/network/NrSignalStrength.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable NrSignalStrength {
diff --git a/radio/aidl/android/hardware/radio/NrVopsInfo.aidl b/radio/aidl/android/hardware/radio/network/NrVopsInfo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/NrVopsInfo.aidl
rename to radio/aidl/android/hardware/radio/network/NrVopsInfo.aidl
index 0d01aab..bae5f40 100644
--- a/radio/aidl/android/hardware/radio/NrVopsInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/NrVopsInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* Type to define the NR specific network capabilities for voice over PS including emergency and
@@ -74,7 +74,7 @@
* it supports. This information is received from NR network during NR NAS registration
* procedure through NR REGISTRATION ACCEPT.
* Refer 3GPP 24.501 EPS 5GS network feature support -> IMS VoPS
- * Values are VOPS_INDICATOR
+ * Values are VOPS_INDICATOR_
*/
byte vopsSupported;
/**
diff --git a/radio/aidl/android/hardware/radio/OperatorInfo.aidl b/radio/aidl/android/hardware/radio/network/OperatorInfo.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/OperatorInfo.aidl
rename to radio/aidl/android/hardware/radio/network/OperatorInfo.aidl
index e0234fc..9fa126d 100644
--- a/radio/aidl/android/hardware/radio/OperatorInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/OperatorInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable OperatorInfo {
diff --git a/radio/aidl/android/hardware/radio/PhoneRestrictedState.aidl b/radio/aidl/android/hardware/radio/network/PhoneRestrictedState.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/PhoneRestrictedState.aidl
rename to radio/aidl/android/hardware/radio/network/PhoneRestrictedState.aidl
index 5f5f1b8..bf3f75a 100644
--- a/radio/aidl/android/hardware/radio/PhoneRestrictedState.aidl
+++ b/radio/aidl/android/hardware/radio/network/PhoneRestrictedState.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/PhysicalChannelConfig.aidl b/radio/aidl/android/hardware/radio/network/PhysicalChannelConfig.aidl
similarity index 92%
rename from radio/aidl/android/hardware/radio/PhysicalChannelConfig.aidl
rename to radio/aidl/android/hardware/radio/network/PhysicalChannelConfig.aidl
index 05b31e5..b6072ba 100644
--- a/radio/aidl/android/hardware/radio/PhysicalChannelConfig.aidl
+++ b/radio/aidl/android/hardware/radio/network/PhysicalChannelConfig.aidl
@@ -14,11 +14,11 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CellConnectionStatus;
-import android.hardware.radio.PhysicalChannelConfigBand;
import android.hardware.radio.RadioTechnology;
+import android.hardware.radio.network.CellConnectionStatus;
+import android.hardware.radio.network.PhysicalChannelConfigBand;
@VintfStability
parcelable PhysicalChannelConfig {
diff --git a/radio/aidl/android/hardware/radio/PhysicalChannelConfigBand.aidl b/radio/aidl/android/hardware/radio/network/PhysicalChannelConfigBand.aidl
similarity index 81%
rename from radio/aidl/android/hardware/radio/PhysicalChannelConfigBand.aidl
rename to radio/aidl/android/hardware/radio/network/PhysicalChannelConfigBand.aidl
index 953b1c4..f5b248e 100644
--- a/radio/aidl/android/hardware/radio/PhysicalChannelConfigBand.aidl
+++ b/radio/aidl/android/hardware/radio/network/PhysicalChannelConfigBand.aidl
@@ -14,12 +14,12 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.EutranBands;
-import android.hardware.radio.GeranBands;
-import android.hardware.radio.NgranBands;
-import android.hardware.radio.UtranBands;
+import android.hardware.radio.network.EutranBands;
+import android.hardware.radio.network.GeranBands;
+import android.hardware.radio.network.NgranBands;
+import android.hardware.radio.network.UtranBands;
@VintfStability
union PhysicalChannelConfigBand {
diff --git a/radio/aidl/android/hardware/radio/RadioAccessSpecifier.aidl b/radio/aidl/android/hardware/radio/network/RadioAccessSpecifier.aidl
similarity index 84%
rename from radio/aidl/android/hardware/radio/RadioAccessSpecifier.aidl
rename to radio/aidl/android/hardware/radio/network/RadioAccessSpecifier.aidl
index 889124a..dcc9d53 100644
--- a/radio/aidl/android/hardware/radio/RadioAccessSpecifier.aidl
+++ b/radio/aidl/android/hardware/radio/network/RadioAccessSpecifier.aidl
@@ -14,17 +14,17 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.RadioAccessNetworks;
-import android.hardware.radio.RadioAccessSpecifierBands;
+import android.hardware.radio.AccessNetwork;
+import android.hardware.radio.network.RadioAccessSpecifierBands;
@VintfStability
parcelable RadioAccessSpecifier {
/**
* The type of network to scan.
*/
- RadioAccessNetworks radioAccessNetwork;
+ AccessNetwork accessNetwork;
/**
* The frequency bands to scan. Maximum length of the vector is 8.
*/
diff --git a/radio/aidl/android/hardware/radio/RadioAccessSpecifierBands.aidl b/radio/aidl/android/hardware/radio/network/RadioAccessSpecifierBands.aidl
similarity index 81%
rename from radio/aidl/android/hardware/radio/RadioAccessSpecifierBands.aidl
rename to radio/aidl/android/hardware/radio/network/RadioAccessSpecifierBands.aidl
index dde4626..c72d8c9 100644
--- a/radio/aidl/android/hardware/radio/RadioAccessSpecifierBands.aidl
+++ b/radio/aidl/android/hardware/radio/network/RadioAccessSpecifierBands.aidl
@@ -14,12 +14,12 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.EutranBands;
-import android.hardware.radio.GeranBands;
-import android.hardware.radio.NgranBands;
-import android.hardware.radio.UtranBands;
+import android.hardware.radio.network.EutranBands;
+import android.hardware.radio.network.GeranBands;
+import android.hardware.radio.network.NgranBands;
+import android.hardware.radio.network.UtranBands;
@VintfStability
union RadioAccessSpecifierBands {
diff --git a/radio/aidl/android/hardware/radio/RadioBandMode.aidl b/radio/aidl/android/hardware/radio/network/RadioBandMode.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/RadioBandMode.aidl
rename to radio/aidl/android/hardware/radio/network/RadioBandMode.aidl
index e6064c4..4fdc614 100644
--- a/radio/aidl/android/hardware/radio/RadioBandMode.aidl
+++ b/radio/aidl/android/hardware/radio/network/RadioBandMode.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/RegState.aidl b/radio/aidl/android/hardware/radio/network/RegState.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/RegState.aidl
rename to radio/aidl/android/hardware/radio/network/RegState.aidl
index 91fd239..bb2c3c3 100644
--- a/radio/aidl/android/hardware/radio/RegState.aidl
+++ b/radio/aidl/android/hardware/radio/network/RegState.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* Please note that registration state UNKNOWN is treated as "out of service" in Android telephony.
diff --git a/radio/aidl/android/hardware/radio/RegStateResult.aidl b/radio/aidl/android/hardware/radio/network/RegStateResult.aidl
similarity index 86%
rename from radio/aidl/android/hardware/radio/RegStateResult.aidl
rename to radio/aidl/android/hardware/radio/network/RegStateResult.aidl
index 615392c..bd681e7 100644
--- a/radio/aidl/android/hardware/radio/RegStateResult.aidl
+++ b/radio/aidl/android/hardware/radio/network/RegStateResult.aidl
@@ -14,13 +14,13 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.AccessTechnologySpecificInfo;
-import android.hardware.radio.CellIdentity;
import android.hardware.radio.RadioTechnology;
-import android.hardware.radio.RegState;
-import android.hardware.radio.RegistrationFailCause;
+import android.hardware.radio.network.AccessTechnologySpecificInfo;
+import android.hardware.radio.network.CellIdentity;
+import android.hardware.radio.network.RegState;
+import android.hardware.radio.network.RegistrationFailCause;
@VintfStability
parcelable RegStateResult {
@@ -35,7 +35,7 @@
* Indicates the available voice radio technology, valid values as defined by RadioTechnology,
* except LTE_CA, which is no longer a valid value on 1.5 or above. When the device is on
* carrier aggregation, vendor RIL service should properly report multiple PhysicalChannelConfig
- * elements through IRadio::currentPhysicalChannelConfigs.
+ * elements through IRadioNetwork::currentPhysicalChannelConfigs.
*/
RadioTechnology rat;
/**
diff --git a/radio/aidl/android/hardware/radio/RegistrationFailCause.aidl b/radio/aidl/android/hardware/radio/network/RegistrationFailCause.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/RegistrationFailCause.aidl
rename to radio/aidl/android/hardware/radio/network/RegistrationFailCause.aidl
index d9c7f23..586436e 100644
--- a/radio/aidl/android/hardware/radio/RegistrationFailCause.aidl
+++ b/radio/aidl/android/hardware/radio/network/RegistrationFailCause.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* Call fail causes for Circuit-switched service enumerated in 3GPP TS 24.008, 10.5.3.6 and
diff --git a/radio/aidl/android/hardware/radio/SignalStrength.aidl b/radio/aidl/android/hardware/radio/network/SignalStrength.aidl
similarity index 82%
rename from radio/aidl/android/hardware/radio/SignalStrength.aidl
rename to radio/aidl/android/hardware/radio/network/SignalStrength.aidl
index 0ffdaa3..5a18b18 100644
--- a/radio/aidl/android/hardware/radio/SignalStrength.aidl
+++ b/radio/aidl/android/hardware/radio/network/SignalStrength.aidl
@@ -14,15 +14,15 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
-import android.hardware.radio.CdmaSignalStrength;
-import android.hardware.radio.EvdoSignalStrength;
-import android.hardware.radio.GsmSignalStrength;
-import android.hardware.radio.LteSignalStrength;
-import android.hardware.radio.NrSignalStrength;
-import android.hardware.radio.TdscdmaSignalStrength;
-import android.hardware.radio.WcdmaSignalStrength;
+import android.hardware.radio.network.CdmaSignalStrength;
+import android.hardware.radio.network.EvdoSignalStrength;
+import android.hardware.radio.network.GsmSignalStrength;
+import android.hardware.radio.network.LteSignalStrength;
+import android.hardware.radio.network.NrSignalStrength;
+import android.hardware.radio.network.TdscdmaSignalStrength;
+import android.hardware.radio.network.WcdmaSignalStrength;
@VintfStability
parcelable SignalStrength {
diff --git a/radio/aidl/android/hardware/radio/SignalThresholdInfo.aidl b/radio/aidl/android/hardware/radio/network/SignalThresholdInfo.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/SignalThresholdInfo.aidl
rename to radio/aidl/android/hardware/radio/network/SignalThresholdInfo.aidl
index 0d818b4..696292d 100644
--- a/radio/aidl/android/hardware/radio/SignalThresholdInfo.aidl
+++ b/radio/aidl/android/hardware/radio/network/SignalThresholdInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* Contains the threshold values of each signal measurement type.
diff --git a/radio/aidl/android/hardware/radio/SuppSvcNotification.aidl b/radio/aidl/android/hardware/radio/network/SuppSvcNotification.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/SuppSvcNotification.aidl
rename to radio/aidl/android/hardware/radio/network/SuppSvcNotification.aidl
index b41292b..dce437a 100644
--- a/radio/aidl/android/hardware/radio/SuppSvcNotification.aidl
+++ b/radio/aidl/android/hardware/radio/network/SuppSvcNotification.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable SuppSvcNotification {
diff --git a/radio/aidl/android/hardware/radio/TdscdmaSignalStrength.aidl b/radio/aidl/android/hardware/radio/network/TdscdmaSignalStrength.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/TdscdmaSignalStrength.aidl
rename to radio/aidl/android/hardware/radio/network/TdscdmaSignalStrength.aidl
index baed68a..13f394a 100644
--- a/radio/aidl/android/hardware/radio/TdscdmaSignalStrength.aidl
+++ b/radio/aidl/android/hardware/radio/network/TdscdmaSignalStrength.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable TdscdmaSignalStrength {
diff --git a/radio/aidl/android/hardware/radio/UtranBands.aidl b/radio/aidl/android/hardware/radio/network/UtranBands.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/UtranBands.aidl
rename to radio/aidl/android/hardware/radio/network/UtranBands.aidl
index 8a22ed7..da21f9b 100644
--- a/radio/aidl/android/hardware/radio/UtranBands.aidl
+++ b/radio/aidl/android/hardware/radio/network/UtranBands.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
/**
* UTRAN bands up to V15.0.0
diff --git a/radio/aidl/android/hardware/radio/WcdmaSignalStrength.aidl b/radio/aidl/android/hardware/radio/network/WcdmaSignalStrength.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/WcdmaSignalStrength.aidl
rename to radio/aidl/android/hardware/radio/network/WcdmaSignalStrength.aidl
index 95a3455..21021e5 100644
--- a/radio/aidl/android/hardware/radio/WcdmaSignalStrength.aidl
+++ b/radio/aidl/android/hardware/radio/network/WcdmaSignalStrength.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.network;
@VintfStability
parcelable WcdmaSignalStrength {
diff --git a/radio/aidl/android/hardware/radio/AppStatus.aidl b/radio/aidl/android/hardware/radio/sim/AppStatus.aidl
similarity index 92%
rename from radio/aidl/android/hardware/radio/AppStatus.aidl
rename to radio/aidl/android/hardware/radio/sim/AppStatus.aidl
index 6fd17e4..07939bb 100644
--- a/radio/aidl/android/hardware/radio/AppStatus.aidl
+++ b/radio/aidl/android/hardware/radio/sim/AppStatus.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
-import android.hardware.radio.PersoSubstate;
-import android.hardware.radio.PinState;
+import android.hardware.radio.sim.PersoSubstate;
+import android.hardware.radio.sim.PinState;
@VintfStability
parcelable AppStatus {
diff --git a/radio/aidl/android/hardware/radio/CardPowerState.aidl b/radio/aidl/android/hardware/radio/sim/CardPowerState.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/CardPowerState.aidl
rename to radio/aidl/android/hardware/radio/sim/CardPowerState.aidl
index 23088c9..b69296d 100644
--- a/radio/aidl/android/hardware/radio/CardPowerState.aidl
+++ b/radio/aidl/android/hardware/radio/sim/CardPowerState.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/CardStatus.aidl b/radio/aidl/android/hardware/radio/sim/CardStatus.aidl
similarity index 88%
rename from radio/aidl/android/hardware/radio/CardStatus.aidl
rename to radio/aidl/android/hardware/radio/sim/CardStatus.aidl
index a6a287d..629f403 100644
--- a/radio/aidl/android/hardware/radio/CardStatus.aidl
+++ b/radio/aidl/android/hardware/radio/sim/CardStatus.aidl
@@ -14,15 +14,15 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
-import android.hardware.radio.AppStatus;
-import android.hardware.radio.PinState;
+import android.hardware.radio.sim.AppStatus;
+import android.hardware.radio.sim.PinState;
@VintfStability
parcelable CardStatus {
/*
- * Card is physically absent from device. (Some old modems use CardState.ABSENT when the SIM
+ * Card is physically absent from device. (Some old modems use STATE_ABSENT when the SIM
* is powered off. This is no longer correct, however the platform will still support this
* legacy behavior.)
*/
@@ -67,7 +67,7 @@
* standards, following electrical reset of the card's chip. The ATR conveys information about
* the communication parameters proposed by the card, and the card's nature and state.
*
- * This data is applicable only when cardState is CardState:PRESENT.
+ * This data is applicable only when cardState is STATE_PRESENT.
*/
String atr;
/**
@@ -75,14 +75,14 @@
* located in the SIM card at EFiccid (0x2FE2) as per ETSI 102.221. The ICCID is defined by
* the ITU-T recommendation E.118 ISO/IEC 7816.
*
- * This data is applicable only when cardState is CardState:PRESENT.
+ * This data is applicable only when cardState is STATE_PRESENT.
*/
String iccid;
/**
* The EID is the eUICC identifier. The EID shall be stored within the ECASD and can be
* retrieved by the Device at any time using the standard GlobalPlatform GET DATA command.
*
- * This data is mandatory and applicable only when cardState is CardState:PRESENT and SIM card
+ * This data is mandatory and applicable only when cardState is STATE_PRESENT and SIM card
* supports eUICC.
*/
String eid;
diff --git a/radio/aidl/android/hardware/radio/Carrier.aidl b/radio/aidl/android/hardware/radio/sim/Carrier.aidl
similarity index 86%
rename from radio/aidl/android/hardware/radio/Carrier.aidl
rename to radio/aidl/android/hardware/radio/sim/Carrier.aidl
index cde9b5f..c870c00 100644
--- a/radio/aidl/android/hardware/radio/Carrier.aidl
+++ b/radio/aidl/android/hardware/radio/sim/Carrier.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable Carrier {
@@ -42,8 +42,8 @@
String mcc;
String mnc;
/**
- * Specify match type for the carrier. If it’s ALL, matchData is empty string; otherwise,
- * matchData is the value for the match type.
+ * Specify match type for the carrier. If it’s MATCH_TYPE_ALL, matchData is empty string;
+ * otherwise, matchData is the value for the match type.
* Values are MATCH_TYPE_
*/
int matchType;
diff --git a/radio/aidl/android/hardware/radio/CarrierRestrictions.aidl b/radio/aidl/android/hardware/radio/sim/CarrierRestrictions.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/CarrierRestrictions.aidl
rename to radio/aidl/android/hardware/radio/sim/CarrierRestrictions.aidl
index 5e1f815..12df138 100644
--- a/radio/aidl/android/hardware/radio/CarrierRestrictions.aidl
+++ b/radio/aidl/android/hardware/radio/sim/CarrierRestrictions.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
-import android.hardware.radio.Carrier;
+import android.hardware.radio.sim.Carrier;
@VintfStability
parcelable CarrierRestrictions {
diff --git a/radio/aidl/android/hardware/radio/CdmaSubscriptionSource.aidl b/radio/aidl/android/hardware/radio/sim/CdmaSubscriptionSource.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/CdmaSubscriptionSource.aidl
rename to radio/aidl/android/hardware/radio/sim/CdmaSubscriptionSource.aidl
index b83e81a..bdd7e07 100644
--- a/radio/aidl/android/hardware/radio/CdmaSubscriptionSource.aidl
+++ b/radio/aidl/android/hardware/radio/sim/CdmaSubscriptionSource.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/sim/IRadioSim.aidl b/radio/aidl/android/hardware/radio/sim/IRadioSim.aidl
new file mode 100644
index 0000000..902c90c
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/sim/IRadioSim.aidl
@@ -0,0 +1,502 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.sim;
+
+import android.hardware.radio.sim.CardPowerState;
+import android.hardware.radio.sim.CarrierRestrictions;
+import android.hardware.radio.sim.CdmaSubscriptionSource;
+import android.hardware.radio.sim.IRadioSimIndication;
+import android.hardware.radio.sim.IRadioSimResponse;
+import android.hardware.radio.sim.IccIo;
+import android.hardware.radio.sim.ImsiEncryptionInfo;
+import android.hardware.radio.sim.PersoSubstate;
+import android.hardware.radio.sim.PhonebookRecordInfo;
+import android.hardware.radio.sim.SelectUiccSub;
+import android.hardware.radio.sim.SimApdu;
+import android.hardware.radio.sim.SimLockMultiSimPolicy;
+
+/**
+ * This interface is used by telephony and telecom to talk to cellular radio for SIM APIs.
+ * All the functions have minimum one parameter:
+ * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the
+ * duration of a method call. If clients provide colliding serials (including passing the same
+ * serial to different methods), multiple responses (one for each method call) must still be served.
+ * setResponseFunctions must work with IRadioSimResponse and IRadioSimIndication.
+ */
+@VintfStability
+oneway interface IRadioSim {
+ /**
+ * Whether uiccApplications are enabled or disabled.
+ * By default uiccApplications must be enabled, unless enableUiccApplications() with enable
+ * being false is called.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioSimResponse.areUiccApplicationsEnabledResponse()
+ */
+ void areUiccApplicationsEnabled(in int serial);
+
+ /**
+ * Supplies old ICC PIN2 and new PIN2.
+ *
+ * @param serial Serial number of request.
+ * @param oldPin2 Old pin2 value
+ * @param newPin2 New pin2 value
+ * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
+ *
+ * Response function is IRadioSimResponse.changeIccPin2ForAppResponse()
+ */
+ void changeIccPin2ForApp(in int serial, in String oldPin2, in String newPin2, in String aid);
+
+ /**
+ * Supplies old ICC PIN and new PIN.
+ *
+ * @param serial Serial number of request.
+ * @param oldPin Old pin value
+ * @param newPin New pin value
+ * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
+ *
+ * Response function is IRadioSimResponse.changeIccPinForAppResponse()
+ */
+ void changeIccPinForApp(in int serial, in String oldPin, in String newPin, in String aid);
+
+ /**
+ * Enable or disable UiccApplications on the SIM. If disabled:
+ * - Modem will not register on any network.
+ * - SIM must be PRESENT, and the IccId of the SIM must still be accessible.
+ * - The corresponding modem stack is still functional, e.g. able to make emergency calls or
+ * do network scan.
+ * By default if this API is not called, the uiccApplications must be enabled automatically.
+ * It must work for both single SIM and DSDS cases for UX consistency.
+ * The preference is per SIM, and must be remembered over power cycle, modem reboot, or SIM
+ * insertion / unplug.
+ *
+ * @param serial Serial number of request.
+ * @param enable true if to enable uiccApplications, false to disable.
+ *
+ * Response function is IRadioSimResponse.enableUiccApplicationsResponse()
+ */
+ void enableUiccApplications(in int serial, in boolean enable);
+
+ /**
+ * Get carrier restrictions.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioSimResponse.getAllowedCarriersResponse()
+ */
+ void getAllowedCarriers(in int serial);
+
+ /**
+ * Request the device MDN / H_SID / H_NID. The request is only allowed when CDMA subscription
+ * is available. When CDMA subscription is changed, application layer must re-issue the request
+ * to update the subscription information.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioSimResponse.getCdmaSubscriptionResponse()
+ */
+ void getCdmaSubscription(in int serial);
+
+ /**
+ * Request to query the location where the CDMA subscription shall be retrieved.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioSimResponse.getCdmaSubscriptionSourceResponse()
+ */
+ void getCdmaSubscriptionSource(in int serial);
+
+ /**
+ * Query the status of a facility lock state
+ *
+ * @param serial Serial number of request.
+ * @param facility is the facility string code from TS 27.007 7.4
+ * (eg "AO" for BAOC, "SC" for SIM lock)
+ * @param password is the password, or "" if not required
+ * @param serviceClass is the TS 27.007 service class bit vector of services to query
+ * @param appId is AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
+ * This is only applicable in the case of Fixed Dialing Numbers (FDN) requests.
+ *
+ * Response function is IRadioSimResponse.getFacilityLockForAppResponse()
+ */
+ void getFacilityLockForApp(in int serial, in String facility, in String password,
+ in int serviceClass, in String appId);
+
+ /**
+ * Requests status of the ICC card
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioSimResponse.getIccCardStatusResponse()
+ */
+ void getIccCardStatus(in int serial);
+
+ /**
+ * Get the SIM IMSI. Only valid when radio state is "RADIO_STATE_ON"
+ *
+ * @param serial Serial number of request.
+ * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
+ *
+ * Response function is IRadioSimResponse.getImsiForAppResponse()
+ */
+ void getImsiForApp(in int serial, in String aid);
+
+ /**
+ * Get the phonebook capacity.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioSimResponse.getSimPhonebookCapacityResponse()
+ */
+ void getSimPhonebookCapacity(in int serial);
+
+ /**
+ * Get the local and global phonebook records from the SIM card.
+ * This should be called again after a simPhonebookChanged notification is received.
+ * The phonebook records are received via IRadioSimIndication.simPhonebookRecordsReceived()
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioSimResponse.getSimPhonebookRecordsResponse()
+ */
+ void getSimPhonebookRecords(in int serial);
+
+ /**
+ * Close a previously opened logical channel. This command reflects TS 27.007
+ * "close logical channel" operation (+CCHC).
+ *
+ * @param serial Serial number of request.
+ * @param channelId session id of the logical channel (+CCHC).
+ *
+ * Response function is IRadioSimResponse.iccCloseLogicalChannelResponse()
+ */
+ void iccCloseLogicalChannel(in int serial, in int channelId);
+
+ /**
+ * Request ICC I/O operation. This is similar to the TS 27.007 "restricted SIM" operation where
+ * it assumes all of the EF selection must be done by the callee. Arguments and responses that
+ * are unused for certain values of "command" must be ignored or set to empty string.
+ * Note that IccIo has a "PIN2" field which may be empty string, or may specify a PIN2 for
+ * operations that require a PIN2 (eg updating FDN records).
+ *
+ * @param serial Serial number of request.
+ * @param iccIo IccIo
+ *
+ * Response function is IRadioSimResponse.iccIoForAppResponse()
+ */
+ void iccIoForApp(in int serial, in IccIo iccIo);
+
+ /**
+ * Open a new logical channel and select the given application. This command
+ * reflects TS 27.007 "open logical channel" operation (+CCHO).
+ *
+ * @param serial Serial number of request.
+ * @param aid AID value, See ETSI 102.221 and 101.220.
+ * @param p2 P2 value, described in ISO 7816-4. Ignore if equal to RadioConst:P2_CONSTANT_NO_P2
+ *
+ * Response function is IRadioSimResponse.iccOpenLogicalChannelResponse()
+ */
+ void iccOpenLogicalChannel(in int serial, in String aid, in int p2);
+
+ /**
+ * Request APDU exchange on the basic channel. This command reflects TS 27.007
+ * "generic SIM access" operation (+CSIM). The modem must ensure proper function of GSM/CDMA,
+ * and filter commands appropriately. It must filter channel management and SELECT by DF
+ * name commands. "sessionid" field must be ignored.
+ *
+ * @param serial Serial number of request.
+ * @param message SimApdu to be sent
+ *
+ * Response function is IRadioSimResponse.iccTransmitApduBasicChannelResponse()
+ */
+ void iccTransmitApduBasicChannel(in int serial, in SimApdu message);
+
+ /**
+ * Exchange APDUs with a UICC over a previously opened logical channel. This command reflects
+ * TS 27.007 "generic logical channel access" operation (+CGLA). The modem must filter channel
+ * management and SELECT by DF name commands.
+ *
+ * @param serial Serial number of request.
+ * @param message SimApdu to be sent
+ *
+ * Response function is IRadioSimResponse.iccTransmitApduLogicalChannelResponse()
+ */
+ void iccTransmitApduLogicalChannel(in int serial, in SimApdu message);
+
+ /**
+ * Indicates that the StkService is running and is ready to receive unsolicited stk commands.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioSimResponse.reportStkServiceIsRunningResponse()
+ */
+ void reportStkServiceIsRunning(in int serial);
+
+ /**
+ * Returns the response of SIM Authentication through Radio challenge request.
+ *
+ * @param serial Serial number of request.
+ * @param authContext P2 value of authentication command, see P2 parameter in
+ * 3GPP TS 31.102 7.1.2
+ * @param authData the challenge string in Base64 format, see 3GPP TS 31.102 7.1.2
+ * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value
+ *
+ * Response function is IRadioSimResponse.requestIccSimAuthenticationResponse()
+ */
+ void requestIccSimAuthentication(
+ in int serial, in int authContext, in String authData, in String aid);
+
+ /**
+ * Request the ISIM application on the UICC to perform AKA challenge/response algorithm
+ * for IMS authentication
+ *
+ * @param serial Serial number of request.
+ * @param challenge challenge string in Base64 format
+ *
+ * Response function is IRadioSimResponse.requestIsimAuthenticationResponse()
+ */
+ void requestIsimAuthentication(in int serial, in String challenge);
+
+ /**
+ * When response type received from a radio indication or radio response is
+ * RadioIndicationType:UNSOLICITED_ACK_EXP or RadioResponseType:SOLICITED_ACK_EXP respectively,
+ * acknowledge the receipt of those messages by sending responseAcknowledgement().
+ */
+ void responseAcknowledgement();
+
+ /**
+ * Requests to send a SAT/USAT envelope command to SIM.
+ * The SAT/USAT envelope command refers to 3GPP TS 11.14 and 3GPP TS 31.111
+ *
+ * @param serial Serial number of request.
+ * @param command SAT/USAT command in hexadecimal format string starting with command tag
+ *
+ * Response function is IRadioSimResponse.sendEnvelopeResponse()
+ */
+ void sendEnvelope(in int serial, in String command);
+
+ /**
+ * Requests to send a SAT/USAT envelope command to SIM. The SAT/USAT envelope command refers to
+ * 3GPP TS 11.14 and 3GPP TS 31.111. This request has one difference from sendEnvelope():
+ * The SW1 and SW2 status bytes from the UICC response are returned along with the response
+ * data, using the same structure as iccIOForApp(). The implementation must perform normal
+ * processing of a '91XX' response in SW1/SW2 to retrieve the pending proactive command and
+ * send it as an unsolicited response, as sendEnvelope() does.
+ *
+ * @param serial Serial number of request.
+ * @param contents SAT/USAT command in hexadecimal format starting with command tag
+ *
+ * Response function is IRadioSimResponse.sendEnvelopeWithStatusResponse()
+ */
+ void sendEnvelopeWithStatus(in int serial, in String contents);
+
+ /**
+ * Requests to send a terminal response to SIM for a received proactive command
+ *
+ * @param serial Serial number of request.
+ * @param commandResponse SAT/USAT response in hexadecimal format string starting with
+ * first byte of response data
+ *
+ * Response function is IRadioSimResponse.sendTerminalResponseResponseToSim()
+ */
+ void sendTerminalResponseToSim(in int serial, in String commandResponse);
+
+ /**
+ * Set carrier restrictions. Expected modem behavior:
+ * If never receives this command:
+ * - Must allow all carriers
+ * Receives this command:
+ * - Only allow carriers specified in carriers. The restriction persists across power cycles
+ * and FDR. If a present SIM is allowed, modem must not reload the SIM. If a present SIM is
+ * *not* allowed, modem must detach from the registered network and only keep emergency
+ * service, and notify Android SIM refresh reset with new SIM state being
+ * CardState:RESTRICTED. Emergency service must be enabled.
+ *
+ * @param serial Serial number of request.
+ * @param carriers CarrierRestrictions consisting allowed and excluded carriers
+ * @param multiSimPolicy Policy to be used for devices with multiple SIMs.
+ *
+ * Response function is IRadioSimResponse.setAllowedCarriersResponse()
+ */
+ void setAllowedCarriers(in int serial, in CarrierRestrictions carriers,
+ in SimLockMultiSimPolicy multiSimPolicy);
+
+ /**
+ * Provide Carrier specific information to the modem that must be used to encrypt the IMSI and
+ * IMPI. Sent by the framework during boot, carrier switch and everytime the framework receives
+ * a new certificate.
+ *
+ * @param serial Serial number of request.
+ * @param imsiEncryptionInfo ImsiEncryptionInfo
+ *
+ * Response function is IRadioSimResponse.setCarrierInfoForImsiEncryptionResponse()
+ */
+ void setCarrierInfoForImsiEncryption(in int serial, in ImsiEncryptionInfo imsiEncryptionInfo);
+
+ /**
+ * Request to set the location where the CDMA subscription shall be retrieved
+ *
+ * @param serial Serial number of request.
+ * @param cdmaSub CdmaSubscriptionSource
+ *
+ * Response function is IRadioSimResponse.setCdmaSubscriptionSourceResponse()
+ */
+ void setCdmaSubscriptionSource(in int serial, in CdmaSubscriptionSource cdmaSub);
+
+ /**
+ * Enable/disable one facility lock
+ *
+ * @param serial Serial number of request.
+ * @param facility is the facility string code from TS 27.007 7.4 (eg "AO" for BAOC)
+ * @param lockState false for "unlock" and true for "lock"
+ * @param password is the password
+ * @param serviceClass is string representation of decimal TS 27.007 service class bit vector.
+ * Eg, the string "1" means "set this facility for voice services"
+ * @param appId is AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
+ * This is only applicable in the case of Fixed Dialing Numbers (FDN) requests.
+ *
+ * Response function is IRadioSimResponse.setFacilityLockForAppResponse()
+ */
+ void setFacilityLockForApp(in int serial, in String facility, in boolean lockState,
+ in String password, in int serviceClass, in String appId);
+
+ /**
+ * Set response functions for SIM radio requests and indications.
+ *
+ * @param radioSimResponse Object containing response functions
+ * @param radioSimIndication Object containing radio indications
+ */
+ void setResponseFunctions(
+ in IRadioSimResponse radioSimResponse, in IRadioSimIndication radioSimIndication);
+
+ /**
+ * Set SIM card power state. Request is used to power off or power on the card. It should not
+ * generate a CardState.CARDSTATE_ABSENT indication, since the SIM is still physically inserted.
+ * When SIM card is in POWER_UP_PASS_THROUGH, the modem does not send any command to it (for
+ * example SELECT of MF, or TERMINAL CAPABILITY), and the SIM card is controlled completely by
+ * Telephony sending APDUs directly. The SIM card state must be RIL_CARDSTATE_PRESENT and the
+ * number of card apps will be 0. No new error code is generated. Emergency calls are supported
+ * in the same way as if the SIM card is absent. Pass-through mode is valid only for the
+ * specific card session where it is activated, and normal behavior occurs at the next SIM
+ * initialization, unless POWER_UP_PASS_THROUGH is requested again.
+ * The device is required to power down the SIM card before it can switch the mode between
+ * POWER_UP and POWER_UP_PASS_THROUGH. At device power up, the SIM interface is powered up
+ * automatically. Each subsequent request to this method is processed only after the completion
+ * of the previous one.
+ * When the SIM is in POWER_DOWN, the modem should send an empty vector of AppStatus in
+ * CardStatus.applications. If a SIM in the POWER_DOWN state is removed and a new SIM is
+ * inserted, the new SIM should be in POWER_UP mode by default. If the device is turned off or
+ * restarted while the SIM is in POWER_DOWN, then the SIM should turn on normally in POWER_UP
+ * mode when the device turns back on.
+ *
+ * @param serial Serial number of request
+ * @param powerUp POWER_DOWN if powering down the SIM card
+ * POWER_UP if powering up the SIM card
+ * POWER_UP_PASS_THROUGH if powering up the SIM card in pass through mode
+ *
+ * Response function is IRadioSimResponse.setSimCardPowerResponse()
+ */
+ void setSimCardPower(in int serial, in CardPowerState powerUp);
+
+ /**
+ * Selection/de-selection of a subscription from a SIM card
+ *
+ * @param serial Serial number of request.
+ * @param uiccSub SelectUiccSub
+ *
+ * Response function is IRadioSimResponse.setUiccSubscriptionResponse()
+ */
+ void setUiccSubscription(in int serial, in SelectUiccSub uiccSub);
+
+ /**
+ * Supplies ICC PIN2. Only called following operation where SIM_PIN2 was returned as a failure
+ * from a previous operation.
+ *
+ * @param serial Serial number of request.
+ * @param pin2 PIN2 value
+ * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
+ *
+ * Response function is IRadioSimResponse.supplyIccPin2ForAppResponse()
+ */
+ void supplyIccPin2ForApp(in int serial, in String pin2, in String aid);
+
+ /**
+ * Supplies ICC PIN. Only called if CardStatus has AppState.PIN state
+ *
+ * @param serial Serial number of request.
+ * @param pin PIN value
+ * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
+ *
+ * Response function is IRadioSimResponse.supplyIccPinForAppResponse()
+ */
+ void supplyIccPinForApp(in int serial, in String pin, in String aid);
+
+ /**
+ * Supplies ICC PUK2 and new PIN2.
+ *
+ * @param serial Serial number of request.
+ * @param puk2 PUK2 value
+ * @param pin2 New PIN2 value
+ * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
+ *
+ * Response function is IRadioSimResponse.supplyIccPuk2ForAppResponse()
+ */
+ void supplyIccPuk2ForApp(in int serial, in String puk2, in String pin2, in String aid);
+
+ /**
+ * Supplies ICC PUK and new PIN.
+ *
+ * @param serial Serial number of request.
+ * @param puk PUK value
+ * @param pin New PIN value
+ * @param aid AID value, See ETSI 102.221 8.1 and 101.220 4, empty string if no value.
+ *
+ * Response function is IRadioSimResponse.supplyIccPukForAppResponse()
+ */
+ void supplyIccPukForApp(in int serial, in String puk, in String pin, in String aid);
+
+ /**
+ * Request that deactivates one category of device personalization. Device personalization
+ * generally binds the device so it can only be used on one carrier or even one carrier subnet
+ * (See TS 22.022). When the user has gained the rights to unbind the device (at the end of a
+ * contract period or other event), the controlKey will be delivered to either the user for
+ * manual entry or to a carrier app on the device for automatic entry.
+ *
+ * @param serial Serial number of request.
+ * @param persoType SIM personalization type.
+ * @param controlKey the unlock code for removing persoType personalization from this device
+ *
+ * Response function is IRadioSimResponse.supplySimDepersonalizationResponse()
+ */
+ void supplySimDepersonalization(
+ in int serial, in PersoSubstate persoType, in String controlKey);
+
+ /**
+ * Insert, delete or update a phonebook record on the SIM card. If the index of recordInfo is 0,
+ * the phonebook record will be added to global or local phonebook, and global phonebook has
+ * higher priority than local phonebook. If the fields in the recordInfo are all empty except
+ * for the index, the phonebook record specified by the index will be deleted. The indication
+ * simPhonebookChanged will be called after every successful call of updateSimPhonebookRecords.
+ *
+ * @param serial Serial number of request.
+ * @param recordInfo Details of the record to insert, delete or update.
+ *
+ * Response function is IRadioSimResponse.updateSimPhonebookRecordsResponse()
+ */
+ void updateSimPhonebookRecords(in int serial, in PhonebookRecordInfo recordInfo);
+}
diff --git a/radio/aidl/android/hardware/radio/sim/IRadioSimIndication.aidl b/radio/aidl/android/hardware/radio/sim/IRadioSimIndication.aidl
new file mode 100644
index 0000000..a139040
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/sim/IRadioSimIndication.aidl
@@ -0,0 +1,130 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.sim;
+
+import android.hardware.radio.RadioIndicationType;
+import android.hardware.radio.sim.CdmaSubscriptionSource;
+import android.hardware.radio.sim.PbReceivedStatus;
+import android.hardware.radio.sim.PhonebookRecordInfo;
+import android.hardware.radio.sim.SimRefreshResult;
+
+/**
+ * Interface declaring unsolicited radio indications for SIM APIs.
+ */
+@VintfStability
+oneway interface IRadioSimIndication {
+ /**
+ * Indicates that the modem requires the Carrier info for IMSI/IMPI encryption. This might
+ * happen when the modem restarts or for some reason it's cache has been invalidated.
+ *
+ * @param type Type of radio indication
+ */
+ void carrierInfoForImsiEncryption(in RadioIndicationType info);
+
+ /**
+ * Indicates when CDMA subscription source changed.
+ *
+ * @param type Type of radio indication
+ * @param cdmaSource New CdmaSubscriptionSource
+ */
+ void cdmaSubscriptionSourceChanged(
+ in RadioIndicationType type, in CdmaSubscriptionSource cdmaSource);
+
+ /**
+ * Indicates whether SIM phonebook is changed. This indication is sent whenever the SIM
+ * phonebook is changed, including SIM is inserted or removed and updated by
+ * IRadioSim.updateSimPhonebookRecords.
+ *
+ * @param type Type of radio indication
+ */
+ void simPhonebookChanged(in RadioIndicationType type);
+
+ /**
+ * Indicates the content of all the used records in the SIM phonebook. This indication is
+ * associated with the API getSimPhonebookRecords and might be received more than once that is
+ * replying on the record count.
+ *
+ * @param type Type of radio indication
+ * @param status Status of PbReceivedStatus
+ * @param records Vector of PhonebookRecordInfo
+ */
+ void simPhonebookRecordsReceived(in RadioIndicationType type, in PbReceivedStatus status,
+ in PhonebookRecordInfo[] records);
+
+ /**
+ * Indicates that file(s) on the SIM have been updated, or the SIM has been reinitialized.
+ * If the SIM state changes as a result of the SIM refresh (eg, SIM_READY ->
+ * SIM_LOCKED_OR_ABSENT), simStatusChanged() must be sent.
+ *
+ * @param type Type of radio indication
+ * @param refreshResult Result of sim refresh
+ */
+ void simRefresh(in RadioIndicationType type, in SimRefreshResult refreshResult);
+
+ /**
+ * Indicates that SIM state changes. Callee must invoke getIccCardStatus().
+ *
+ * @param type Type of radio indication
+ */
+ void simStatusChanged(in RadioIndicationType type);
+
+ /**
+ * Indicates when SIM notifies applcations some event happens.
+ *
+ * @param type Type of radio indication
+ * @param cmd SAT/USAT commands or responses sent by ME to SIM or commands handled by ME,
+ * represented as byte array starting with first byte of response data for command tag.
+ * Refer to TS 102.223 section 9.4 for command types
+ */
+ void stkEventNotify(in RadioIndicationType type, in String cmd);
+
+ /**
+ * Indicates when SIM issue a STK proactive command to applications.
+ *
+ * @param type Type of radio indication
+ * @param cmd SAT/USAT proactive represented as byte array starting with command tag.
+ * Refer to TS 102.223 section 9.4 for command types
+ */
+ void stkProactiveCommand(in RadioIndicationType type, in String cmd);
+
+ /**
+ * Indicates when STK session is terminated by SIM.
+ *
+ * @param type Type of radio indication
+ */
+ void stkSessionEnd(in RadioIndicationType type);
+
+ /**
+ * Indicated when there is a change in subscription status.
+ * This event must be sent in the following scenarios
+ * - subscription readiness at modem, which was selected by telephony layer
+ * - when subscription is deactivated by modem due to UICC card removal
+ * - when network invalidates the subscription i.e. attach reject due to authentication reject
+ *
+ * @param type Type of radio indication
+ * @param activate false for subscription deactivated, true for subscription activated
+ */
+ void subscriptionStatusChanged(in RadioIndicationType type, in boolean activate);
+
+ /**
+ * Report change of whether uiccApplications are enabled, or disabled.
+ *
+ * @param type Type of radio indication
+ * @param enabled whether uiccApplications are enabled or disabled
+ */
+ void uiccApplicationsEnablementChanged(in RadioIndicationType type, in boolean enabled);
+}
diff --git a/radio/aidl/android/hardware/radio/sim/IRadioSimResponse.aidl b/radio/aidl/android/hardware/radio/sim/IRadioSimResponse.aidl
new file mode 100644
index 0000000..dcc7029
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/sim/IRadioSimResponse.aidl
@@ -0,0 +1,649 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.sim;
+
+import android.hardware.radio.RadioResponseInfo;
+import android.hardware.radio.sim.CardStatus;
+import android.hardware.radio.sim.CarrierRestrictions;
+import android.hardware.radio.sim.CdmaSubscriptionSource;
+import android.hardware.radio.sim.IccIoResult;
+import android.hardware.radio.sim.PersoSubstate;
+import android.hardware.radio.sim.PhonebookCapacity;
+import android.hardware.radio.sim.SimLockMultiSimPolicy;
+
+/**
+ * Interface declaring response functions to solicited radio requests for SIM APIs.
+ */
+@VintfStability
+oneway interface IRadioSimResponse {
+ /**
+ * Acknowledge the receipt of radio request sent to the vendor. This must be sent only for
+ * radio request which take long time to respond. For more details, refer
+ * https://source.android.com/devices/tech/connect/ril.html
+ *
+ * @param serial Serial no. of the request whose acknowledgement is sent.
+ */
+ void acknowledgeRequest(in int serial);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param enabled whether Uicc applications are enabled.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:SIM_ABSENT
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ */
+ void areUiccApplicationsEnabledResponse(in RadioResponseInfo info, in boolean enabled);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:PASSWORD_INCORRECT (old PIN2 is invalid)
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_PUK2
+ */
+ void changeIccPin2ForAppResponse(in RadioResponseInfo info, in int remainingRetries);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:PASSWORD_INCORRECT
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void changeIccPinForAppResponse(in RadioResponseInfo info, in int remainingRetries);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:SIM_ABSENT
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:BUSY
+ */
+ void enableUiccApplicationsResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param carriers Carrier restriction information.
+ * @param multiSimPolicy Policy used for devices with multiple SIM cards.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void getAllowedCarriersResponse(in RadioResponseInfo info, in CarrierRestrictions carriers,
+ in SimLockMultiSimPolicy multiSimPolicy);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param mdn MDN if CDMA subscription is available
+ * @param hSid is a comma separated list of H_SID (Home SID) if CDMA subscription is available,
+ * in decimal format
+ * @param hNid is a comma separated list of H_NID (Home NID) if CDMA subscription is available,
+ * in decimal format
+ * @param min MIN (10 digits, MIN2+MIN1) if CDMA subscription is available
+ * @param prl PRL version if CDMA subscription is available
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SUBSCRIPTION_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:NOT_PROVISIONED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void getCdmaSubscriptionResponse(in RadioResponseInfo info, in String mdn, in String hSid,
+ in String hNid, in String min, in String prl);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param source CDMA subscription source
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SUBSCRIPTION_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_ABSENT
+ */
+ void getCdmaSubscriptionSourceResponse(
+ in RadioResponseInfo info, in CdmaSubscriptionSource source);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param response 0 is the TS 27.007 service class bit vector of services for which the
+ * specified barring facility is active. "0" means "disabled for all"
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getFacilityLockForAppResponse(in RadioResponseInfo info, in int response);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param cardStatus ICC card status as defined by CardStatus
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_RESOURCES
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void getIccCardStatusResponse(in RadioResponseInfo info, in CardStatus cardStatus);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param imsi String containing the IMSI
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:SIM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void getImsiForAppResponse(in RadioResponseInfo info, in String imsi);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param capacity Response capacity enum indicating response processing status
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * REQUEST_NOT_SUPPORTED may only be returned on devices that don't support this API,
+ * indicated by the HAL capability CAPABILITY_SIM_PHONEBOOK_IN_MODEM.
+ */
+ void getSimPhonebookCapacityResponse(in RadioResponseInfo info, in PhonebookCapacity capacity);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * REQUEST_NOT_SUPPORTED may only be returned on devices that don't support this API,
+ * indicated by the HAL capability CAPABILITY_SIM_PHONEBOOK_IN_MODEM.
+ */
+ void getSimPhonebookRecordsResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void iccCloseLogicalChannelResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param iccIo ICC IO operation response
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SIM_PIN2
+ * RadioError:SIM_PUK2
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:SIM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void iccIoForAppResponse(in RadioResponseInfo info, in IccIoResult iccIo);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param channelId session id of the logical channel.
+ * @param selectResponse Contains the select response for the open channel command with one
+ * byte per integer
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:MISSING_RESOURCE
+ * RadioError:NO_SUCH_ELEMENT
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ERR
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:MISSING_RESOURCE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void iccOpenLogicalChannelResponse(
+ in RadioResponseInfo info, in int channelId, in byte[] selectResponse);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param result IccIoResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void iccTransmitApduBasicChannelResponse(in RadioResponseInfo info, in IccIoResult result);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param result IccIoResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void iccTransmitApduLogicalChannelResponse(in RadioResponseInfo info, in IccIoResult result);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void reportStkServiceIsRunningResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param result IccIoResult
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:SIM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void requestIccSimAuthenticationResponse(in RadioResponseInfo info, in IccIoResult result);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param response response string of the challenge/response algo for ISIM auth in base64 format
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_ABSENT
+ */
+ void requestIsimAuthenticationResponse(in RadioResponseInfo info, in String response);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param commandResponse SAT/USAT response in hexadecimal format string starting with first
+ * byte of response
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SIM_BUSY
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_ABSENT
+ */
+ void sendEnvelopeResponse(in RadioResponseInfo info, in String commandResponse);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param iccIo IccIoResult corresponding to ICC IO response
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SIM_BUSY
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_ABSENT
+ */
+ void sendEnvelopeWithStatusResponse(in RadioResponseInfo info, in IccIoResult iccIo);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_ABSENT
+ */
+ void sendTerminalResponseToSimResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void setAllowedCarriersResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:RIL_E_SUCCESS
+ * RadioError:RIL_E_RADIO_NOT_AVAILABLE
+ * RadioError:SIM_ABSENT
+ * RadioError:RIL_E_REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_INTERNAL_FAILURE
+ */
+ void setCarrierInfoForImsiEncryptionResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SIM_ABSENT
+ * RadioError:SUBSCRIPTION_NOT_AVAILABLE
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void setCdmaSubscriptionSourceResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param retry 0 is the number of retries remaining, or -1 if unknown
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_STATE
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setFacilityLockForAppResponse(in RadioResponseInfo info, in int retry);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SIM_ERR (indicates a timeout or other issue making the SIM unresponsive)
+ */
+ void setSimCardPowerResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SUBSCRIPTION_NOT_SUPPORTED
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setUiccSubscriptionResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:PASSWORD_INCORRECT
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_PUK2
+ */
+ void supplyIccPin2ForAppResponse(in RadioResponseInfo info, in int remainingRetries);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:PASSWORD_INCORRECT
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void supplyIccPinForAppResponse(in RadioResponseInfo info, in int remainingRetries);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:PASSWORD_INCORRECT (PUK is invalid)
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void supplyIccPuk2ForAppResponse(in RadioResponseInfo info, in int remainingRetries);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param remainingRetries Number of retries remaining, must be equal to -1 if unknown.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:PASSWORD_INCORRECT (PUK is invalid)
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void supplyIccPukForAppResponse(in RadioResponseInfo info, in int remainingRetries);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param persoType SIM Personalization type
+ * @param remainingRetries postiive values indicates number of retries remaining, must be equal
+ * to -1 if number of retries is infinite.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:PASSWORD_INCORRECT (code is invalid)
+ * RadioError:NO_MEMORY
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_RESOURCES
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void supplySimDepersonalizationResponse(
+ in RadioResponseInfo info, in PersoSubstate persoType, in int remainingRetries);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param updatedRecordIndex The index of the updated or inserted record in the phonebook and
+ * the minimum value is 1
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_SIM_STATE
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:SIM_ERR
+ * RadioError:NO_SUCH_ENTRY
+ * RadioError:NO_RESOURCES
+ * REQUEST_NOT_SUPPORTED may only be returned on devices that don't support this API,
+ * indicated by the HAL capability CAPABILITY_SIM_PHONEBOOK_IN_MODEM.
+ */
+ void updateSimPhonebookRecordsResponse(in RadioResponseInfo info, in int updatedRecordIndex);
+}
diff --git a/radio/aidl/android/hardware/radio/IccIo.aidl b/radio/aidl/android/hardware/radio/sim/IccIo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/IccIo.aidl
rename to radio/aidl/android/hardware/radio/sim/IccIo.aidl
index 7441758..be5e832 100644
--- a/radio/aidl/android/hardware/radio/IccIo.aidl
+++ b/radio/aidl/android/hardware/radio/sim/IccIo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable IccIo {
diff --git a/radio/aidl/android/hardware/radio/IccIoResult.aidl b/radio/aidl/android/hardware/radio/sim/IccIoResult.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/IccIoResult.aidl
rename to radio/aidl/android/hardware/radio/sim/IccIoResult.aidl
index 94377b4..8aa9e8f 100644
--- a/radio/aidl/android/hardware/radio/IccIoResult.aidl
+++ b/radio/aidl/android/hardware/radio/sim/IccIoResult.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable IccIoResult {
diff --git a/radio/aidl/android/hardware/radio/ImsiEncryptionInfo.aidl b/radio/aidl/android/hardware/radio/sim/ImsiEncryptionInfo.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/ImsiEncryptionInfo.aidl
rename to radio/aidl/android/hardware/radio/sim/ImsiEncryptionInfo.aidl
index 3429beb..e8b3807 100644
--- a/radio/aidl/android/hardware/radio/ImsiEncryptionInfo.aidl
+++ b/radio/aidl/android/hardware/radio/sim/ImsiEncryptionInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
/**
* Carrier specific Information sent by the carrier, which will be used to encrypt IMSI and IMPI.
diff --git a/radio/aidl/android/hardware/radio/PbReceivedStatus.aidl b/radio/aidl/android/hardware/radio/sim/PbReceivedStatus.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/PbReceivedStatus.aidl
rename to radio/aidl/android/hardware/radio/sim/PbReceivedStatus.aidl
index 44ed4d9..953335b 100644
--- a/radio/aidl/android/hardware/radio/PbReceivedStatus.aidl
+++ b/radio/aidl/android/hardware/radio/sim/PbReceivedStatus.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
/**
* Enum representing the status of the received PB indication.
diff --git a/radio/aidl/android/hardware/radio/PersoSubstate.aidl b/radio/aidl/android/hardware/radio/sim/PersoSubstate.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/PersoSubstate.aidl
rename to radio/aidl/android/hardware/radio/sim/PersoSubstate.aidl
index 93b2af5..f01ff61 100644
--- a/radio/aidl/android/hardware/radio/PersoSubstate.aidl
+++ b/radio/aidl/android/hardware/radio/sim/PersoSubstate.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
/**
* Additional personalization categories in addition to those specified in 3GPP TS 22.022 and
diff --git a/radio/aidl/android/hardware/radio/PhonebookCapacity.aidl b/radio/aidl/android/hardware/radio/sim/PhonebookCapacity.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/PhonebookCapacity.aidl
rename to radio/aidl/android/hardware/radio/sim/PhonebookCapacity.aidl
index c141411..23a0208 100644
--- a/radio/aidl/android/hardware/radio/PhonebookCapacity.aidl
+++ b/radio/aidl/android/hardware/radio/sim/PhonebookCapacity.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable PhonebookCapacity {
diff --git a/radio/aidl/android/hardware/radio/PhonebookRecordInfo.aidl b/radio/aidl/android/hardware/radio/sim/PhonebookRecordInfo.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/PhonebookRecordInfo.aidl
rename to radio/aidl/android/hardware/radio/sim/PhonebookRecordInfo.aidl
index eb0c880..03326b8 100644
--- a/radio/aidl/android/hardware/radio/PhonebookRecordInfo.aidl
+++ b/radio/aidl/android/hardware/radio/sim/PhonebookRecordInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
/**
* Phonebook-record-information specified by EF_ADN (Abbreviated dialing numbers) record of SIM
diff --git a/radio/aidl/android/hardware/radio/PinState.aidl b/radio/aidl/android/hardware/radio/sim/PinState.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/PinState.aidl
rename to radio/aidl/android/hardware/radio/sim/PinState.aidl
index cb42ff2..03b8e4e 100644
--- a/radio/aidl/android/hardware/radio/PinState.aidl
+++ b/radio/aidl/android/hardware/radio/sim/PinState.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/SelectUiccSub.aidl b/radio/aidl/android/hardware/radio/sim/SelectUiccSub.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/SelectUiccSub.aidl
rename to radio/aidl/android/hardware/radio/sim/SelectUiccSub.aidl
index f762e9f..3c152d6 100644
--- a/radio/aidl/android/hardware/radio/SelectUiccSub.aidl
+++ b/radio/aidl/android/hardware/radio/sim/SelectUiccSub.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable SelectUiccSub {
diff --git a/radio/aidl/android/hardware/radio/SimApdu.aidl b/radio/aidl/android/hardware/radio/sim/SimApdu.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/SimApdu.aidl
rename to radio/aidl/android/hardware/radio/sim/SimApdu.aidl
index 65dae4c..1dc707e 100644
--- a/radio/aidl/android/hardware/radio/SimApdu.aidl
+++ b/radio/aidl/android/hardware/radio/sim/SimApdu.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable SimApdu {
diff --git a/radio/aidl/android/hardware/radio/SimLockMultiSimPolicy.aidl b/radio/aidl/android/hardware/radio/sim/SimLockMultiSimPolicy.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/SimLockMultiSimPolicy.aidl
rename to radio/aidl/android/hardware/radio/sim/SimLockMultiSimPolicy.aidl
index 89e13fd..6c03122 100644
--- a/radio/aidl/android/hardware/radio/SimLockMultiSimPolicy.aidl
+++ b/radio/aidl/android/hardware/radio/sim/SimLockMultiSimPolicy.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/SimRefreshResult.aidl b/radio/aidl/android/hardware/radio/sim/SimRefreshResult.aidl
similarity index 73%
rename from radio/aidl/android/hardware/radio/SimRefreshResult.aidl
rename to radio/aidl/android/hardware/radio/sim/SimRefreshResult.aidl
index 9e38fff..483a54c 100644
--- a/radio/aidl/android/hardware/radio/SimRefreshResult.aidl
+++ b/radio/aidl/android/hardware/radio/sim/SimRefreshResult.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.sim;
@VintfStability
parcelable SimRefreshResult {
@@ -40,10 +40,11 @@
*/
int efId;
/**
- * AID(application ID) of the card application. See ETSI 102.221 8.1 and 101.220 4.
- * For SIM_FILE_UPDATE result it must be set to AID of application in which updated EF resides
- * or it must be empty string if EF is outside of an application. For SIM_INIT result this field
- * is set to AID of application that caused REFRESH. For SIM_RESET result it is empty string.
+ * AID (application ID) of the card application. See ETSI 102.221 8.1 and 101.220 4.
+ * For TYPE_SIM_FILE_UPDATE result, it must be set to AID of application in which updated EF
+ * resides or it must be empty string if EF is outside of an application. For TYPE_SIM_INIT
+ * result, this field is set to AID of application that caused REFRESH. For TYPE_SIM_RESET
+ * result, it is empty string.
*/
String aid;
}
diff --git a/radio/aidl/android/hardware/radio/AudioQuality.aidl b/radio/aidl/android/hardware/radio/voice/AudioQuality.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/AudioQuality.aidl
rename to radio/aidl/android/hardware/radio/voice/AudioQuality.aidl
index bc4c2f1..94d5f88 100644
--- a/radio/aidl/android/hardware/radio/AudioQuality.aidl
+++ b/radio/aidl/android/hardware/radio/voice/AudioQuality.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* Audio codec which is used on GSM, UMTS, and CDMA. These values must be opaque to the Android
diff --git a/radio/aidl/android/hardware/radio/Call.aidl b/radio/aidl/android/hardware/radio/voice/Call.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/Call.aidl
rename to radio/aidl/android/hardware/radio/voice/Call.aidl
index 467a5b9..beb079b 100644
--- a/radio/aidl/android/hardware/radio/Call.aidl
+++ b/radio/aidl/android/hardware/radio/voice/Call.aidl
@@ -14,10 +14,10 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.AudioQuality;
-import android.hardware.radio.UusInfo;
+import android.hardware.radio.voice.AudioQuality;
+import android.hardware.radio.voice.UusInfo;
@VintfStability
parcelable Call {
diff --git a/radio/aidl/android/hardware/radio/CallForwardInfo.aidl b/radio/aidl/android/hardware/radio/voice/CallForwardInfo.aidl
similarity index 83%
rename from radio/aidl/android/hardware/radio/CallForwardInfo.aidl
rename to radio/aidl/android/hardware/radio/voice/CallForwardInfo.aidl
index 1835631..b7ddcd9 100644
--- a/radio/aidl/android/hardware/radio/CallForwardInfo.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CallForwardInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* See also com.android.internal.telephony.gsm.CallForwardInfo
@@ -28,8 +28,9 @@
const int STATUS_ERASURE = 4;
/**
- * For queryCallForwardStatus() status is DISABLE (Not used by vendor code currently)
- * For setCallForward() status must be DISABLE, ENABLE, INTERROGATE, REGISTRATION, ERASURE
+ * For queryCallForwardStatus() status is STATUS_DISABLE (Not used by vendor code currently)
+ * For setCallForward() status must be STATUS_DISABLE, STATUS_ENABLE, STATUS_INTERROGATE,
+ * STATUS_REGISTRATION, STATUS_ERASURE
* Values are STATUS_
*/
int status;
diff --git a/radio/aidl/android/hardware/radio/CdmaCallWaiting.aidl b/radio/aidl/android/hardware/radio/voice/CdmaCallWaiting.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/CdmaCallWaiting.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaCallWaiting.aidl
index b08ba7f..7ba6a72 100644
--- a/radio/aidl/android/hardware/radio/CdmaCallWaiting.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaCallWaiting.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.CdmaSignalInfoRecord;
+import android.hardware.radio.voice.CdmaSignalInfoRecord;
@VintfStability
parcelable CdmaCallWaiting {
diff --git a/radio/aidl/android/hardware/radio/CdmaDisplayInfoRecord.aidl b/radio/aidl/android/hardware/radio/voice/CdmaDisplayInfoRecord.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/CdmaDisplayInfoRecord.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaDisplayInfoRecord.aidl
index 9b11f37..18a1ce4 100644
--- a/radio/aidl/android/hardware/radio/CdmaDisplayInfoRecord.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaDisplayInfoRecord.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* Display Info Rec as defined in C.S0005 section 3.7.5.1. Extended Display Info Rec as defined in
diff --git a/radio/aidl/android/hardware/radio/CdmaInformationRecord.aidl b/radio/aidl/android/hardware/radio/voice/CdmaInformationRecord.aidl
similarity index 80%
rename from radio/aidl/android/hardware/radio/CdmaInformationRecord.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaInformationRecord.aidl
index 20eabff..af37dac 100644
--- a/radio/aidl/android/hardware/radio/CdmaInformationRecord.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaInformationRecord.aidl
@@ -14,15 +14,15 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.CdmaDisplayInfoRecord;
-import android.hardware.radio.CdmaLineControlInfoRecord;
-import android.hardware.radio.CdmaNumberInfoRecord;
-import android.hardware.radio.CdmaRedirectingNumberInfoRecord;
-import android.hardware.radio.CdmaSignalInfoRecord;
-import android.hardware.radio.CdmaT53AudioControlInfoRecord;
-import android.hardware.radio.CdmaT53ClirInfoRecord;
+import android.hardware.radio.voice.CdmaDisplayInfoRecord;
+import android.hardware.radio.voice.CdmaLineControlInfoRecord;
+import android.hardware.radio.voice.CdmaNumberInfoRecord;
+import android.hardware.radio.voice.CdmaRedirectingNumberInfoRecord;
+import android.hardware.radio.voice.CdmaSignalInfoRecord;
+import android.hardware.radio.voice.CdmaT53AudioControlInfoRecord;
+import android.hardware.radio.voice.CdmaT53ClirInfoRecord;
@VintfStability
parcelable CdmaInformationRecord {
diff --git a/radio/aidl/android/hardware/radio/CdmaInformationRecords.aidl b/radio/aidl/android/hardware/radio/voice/CdmaInformationRecords.aidl
similarity index 88%
rename from radio/aidl/android/hardware/radio/CdmaInformationRecords.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaInformationRecords.aidl
index dcf0ed2..46a9b1a 100644
--- a/radio/aidl/android/hardware/radio/CdmaInformationRecords.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaInformationRecords.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.CdmaInformationRecord;
+import android.hardware.radio.voice.CdmaInformationRecord;
@VintfStability
parcelable CdmaInformationRecords {
diff --git a/radio/aidl/android/hardware/radio/CdmaLineControlInfoRecord.aidl b/radio/aidl/android/hardware/radio/voice/CdmaLineControlInfoRecord.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/CdmaLineControlInfoRecord.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaLineControlInfoRecord.aidl
index a6178af..c3bda23 100644
--- a/radio/aidl/android/hardware/radio/CdmaLineControlInfoRecord.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaLineControlInfoRecord.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* Line Control Information Record as defined in C.S0005 section 3.7.5.15
diff --git a/radio/aidl/android/hardware/radio/CdmaNumberInfoRecord.aidl b/radio/aidl/android/hardware/radio/voice/CdmaNumberInfoRecord.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/CdmaNumberInfoRecord.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaNumberInfoRecord.aidl
index 06e8317..41ce08f 100644
--- a/radio/aidl/android/hardware/radio/CdmaNumberInfoRecord.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaNumberInfoRecord.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* Called Party Number Info Rec as defined in C.S0005 section 3.7.5.2
@@ -24,7 +24,7 @@
@VintfStability
parcelable CdmaNumberInfoRecord {
/**
- * Max length = RADIO_CDMA_NUMBER_INFO_BUFFER_LENGTH
+ * Max length = RadioConst::CDMA_NUMBER_INFO_BUFFER_LENGTH
*/
String number;
byte numberType;
diff --git a/radio/aidl/android/hardware/radio/CdmaOtaProvisionStatus.aidl b/radio/aidl/android/hardware/radio/voice/CdmaOtaProvisionStatus.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/CdmaOtaProvisionStatus.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaOtaProvisionStatus.aidl
index 0cb4314..7b4205a 100644
--- a/radio/aidl/android/hardware/radio/CdmaOtaProvisionStatus.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaOtaProvisionStatus.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/CdmaRedirectingNumberInfoRecord.aidl b/radio/aidl/android/hardware/radio/voice/CdmaRedirectingNumberInfoRecord.aidl
similarity index 93%
rename from radio/aidl/android/hardware/radio/CdmaRedirectingNumberInfoRecord.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaRedirectingNumberInfoRecord.aidl
index 7ba272b..f3bcc0f 100644
--- a/radio/aidl/android/hardware/radio/CdmaRedirectingNumberInfoRecord.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaRedirectingNumberInfoRecord.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.CdmaNumberInfoRecord;
+import android.hardware.radio.voice.CdmaNumberInfoRecord;
@VintfStability
parcelable CdmaRedirectingNumberInfoRecord {
diff --git a/radio/aidl/android/hardware/radio/CdmaSignalInfoRecord.aidl b/radio/aidl/android/hardware/radio/voice/CdmaSignalInfoRecord.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/CdmaSignalInfoRecord.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaSignalInfoRecord.aidl
index 36ecb18..5fc8776 100644
--- a/radio/aidl/android/hardware/radio/CdmaSignalInfoRecord.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaSignalInfoRecord.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* CDMA Signal Information Record as defined in C.S0005 section 3.7.5.5
diff --git a/radio/aidl/android/hardware/radio/CdmaT53AudioControlInfoRecord.aidl b/radio/aidl/android/hardware/radio/voice/CdmaT53AudioControlInfoRecord.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/CdmaT53AudioControlInfoRecord.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaT53AudioControlInfoRecord.aidl
index 715a2f7..c41f8e3 100644
--- a/radio/aidl/android/hardware/radio/CdmaT53AudioControlInfoRecord.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaT53AudioControlInfoRecord.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* T53 Audio Control Information Record
diff --git a/radio/aidl/android/hardware/radio/CdmaT53ClirInfoRecord.aidl b/radio/aidl/android/hardware/radio/voice/CdmaT53ClirInfoRecord.aidl
similarity index 94%
rename from radio/aidl/android/hardware/radio/CdmaT53ClirInfoRecord.aidl
rename to radio/aidl/android/hardware/radio/voice/CdmaT53ClirInfoRecord.aidl
index 636d40c..e37a072 100644
--- a/radio/aidl/android/hardware/radio/CdmaT53ClirInfoRecord.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CdmaT53ClirInfoRecord.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* T53 CLIR Information Record
diff --git a/radio/aidl/android/hardware/radio/CfData.aidl b/radio/aidl/android/hardware/radio/voice/CfData.aidl
similarity index 90%
rename from radio/aidl/android/hardware/radio/CfData.aidl
rename to radio/aidl/android/hardware/radio/voice/CfData.aidl
index c6a91b9..8d7c4bd 100644
--- a/radio/aidl/android/hardware/radio/CfData.aidl
+++ b/radio/aidl/android/hardware/radio/voice/CfData.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.CallForwardInfo;
+import android.hardware.radio.voice.CallForwardInfo;
@VintfStability
parcelable CfData {
diff --git a/radio/aidl/android/hardware/radio/ClipStatus.aidl b/radio/aidl/android/hardware/radio/voice/ClipStatus.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/ClipStatus.aidl
rename to radio/aidl/android/hardware/radio/voice/ClipStatus.aidl
index c75c609..4b10ecc 100644
--- a/radio/aidl/android/hardware/radio/ClipStatus.aidl
+++ b/radio/aidl/android/hardware/radio/voice/ClipStatus.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/Dial.aidl b/radio/aidl/android/hardware/radio/voice/Dial.aidl
similarity index 92%
rename from radio/aidl/android/hardware/radio/Dial.aidl
rename to radio/aidl/android/hardware/radio/voice/Dial.aidl
index f4097ff..7d61fe5 100644
--- a/radio/aidl/android/hardware/radio/Dial.aidl
+++ b/radio/aidl/android/hardware/radio/voice/Dial.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.UusInfo;
+import android.hardware.radio.voice.UusInfo;
@VintfStability
parcelable Dial {
diff --git a/radio/aidl/android/hardware/radio/EmergencyCallRouting.aidl b/radio/aidl/android/hardware/radio/voice/EmergencyCallRouting.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/EmergencyCallRouting.aidl
rename to radio/aidl/android/hardware/radio/voice/EmergencyCallRouting.aidl
index a915ee6..75a41c9 100644
--- a/radio/aidl/android/hardware/radio/EmergencyCallRouting.aidl
+++ b/radio/aidl/android/hardware/radio/voice/EmergencyCallRouting.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* Indicates how the implementation should handle the emergency call if it is required by Android.
diff --git a/radio/aidl/android/hardware/radio/EmergencyNumber.aidl b/radio/aidl/android/hardware/radio/voice/EmergencyNumber.aidl
similarity index 96%
rename from radio/aidl/android/hardware/radio/EmergencyNumber.aidl
rename to radio/aidl/android/hardware/radio/voice/EmergencyNumber.aidl
index 152be90..aa4dde2 100644
--- a/radio/aidl/android/hardware/radio/EmergencyNumber.aidl
+++ b/radio/aidl/android/hardware/radio/voice/EmergencyNumber.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.EmergencyServiceCategory;
+import android.hardware.radio.voice.EmergencyServiceCategory;
/**
* Emergency number contains information of number, one or more service category(s), zero or more
diff --git a/radio/aidl/android/hardware/radio/EmergencyServiceCategory.aidl b/radio/aidl/android/hardware/radio/voice/EmergencyServiceCategory.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/EmergencyServiceCategory.aidl
rename to radio/aidl/android/hardware/radio/voice/EmergencyServiceCategory.aidl
index 30d34ab..cfebc47 100644
--- a/radio/aidl/android/hardware/radio/EmergencyServiceCategory.aidl
+++ b/radio/aidl/android/hardware/radio/voice/EmergencyServiceCategory.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* Defining Emergency Service Category as follows:
diff --git a/radio/aidl/android/hardware/radio/voice/IRadioVoice.aidl b/radio/aidl/android/hardware/radio/voice/IRadioVoice.aidl
new file mode 100644
index 0000000..1e60de5
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/voice/IRadioVoice.aidl
@@ -0,0 +1,443 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.voice;
+
+import android.hardware.radio.voice.CallForwardInfo;
+import android.hardware.radio.voice.Dial;
+import android.hardware.radio.voice.EmergencyCallRouting;
+import android.hardware.radio.voice.EmergencyServiceCategory;
+import android.hardware.radio.voice.IRadioVoiceIndication;
+import android.hardware.radio.voice.IRadioVoiceResponse;
+import android.hardware.radio.voice.TtyMode;
+
+/**
+ * This interface is used by telephony and telecom to talk to cellular radio for voice APIs.
+ * All the functions have minimum one parameter:
+ * serial: which corresponds to serial no. of request. Serial numbers must only be memorized for the
+ * duration of a method call. If clients provide colliding serials (including passing the same
+ * serial to different methods), multiple responses (one for each method call) must still be served.
+ * setResponseFunctions must work with IRadioVoiceResponse and IRadioVoiceIndication.
+ */
+@VintfStability
+oneway interface IRadioVoice {
+ /**
+ * Answer incoming call. Must not be called for WAITING calls.
+ * switchWaitingOrHoldingAndActive() must be used in this case instead
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.acceptCallResponse()
+ */
+ void acceptCall(in int serial);
+
+ /**
+ * Conference holding and active (like AT+CHLD=3)
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.conferenceResponse()
+ */
+ void conference(in int serial);
+
+ /**
+ * Initiate voice call. This method is never used for supplementary service codes.
+ *
+ * @param serial Serial number of request.
+ * @param dialInfo Dial struct
+ *
+ * Response function is IRadioVoiceResponse.dialResponse()
+ */
+ void dial(in int serial, in Dial dialInfo);
+
+ /**
+ * Initiate emergency voice call, with zero or more emergency service category(s), zero or
+ * more emergency Uniform Resource Names (URN), and routing information for handling the call.
+ * Android uses this request to make its emergency call instead of using IRadio.dial if the
+ * 'address' in the 'dialInfo' field is identified as an emergency number by Android.
+ *
+ * In multi-sim scenario, if the emergency number is from a specific subscription, this radio
+ * request can still be sent out on the other subscription as long as routing is set to
+ * EmergencyNumberRouting#EMERGENCY. This radio request will not be sent on an inactive
+ * (PIN/PUK locked) subscription unless both subscriptions are PIN/PUK locked. In this case,
+ * the request will be sent on the primary subscription.
+ *
+ * Some countries or carriers require some emergency numbers that must be handled with normal
+ * call routing if possible or emergency routing. 1) if the 'routing' field is specified as
+ * EmergencyNumberRouting#NORMAL, the implementation must try the full radio service to use
+ * normal call routing to handle the call; if service cannot support normal routing, the
+ * implementation must use emergency routing to handle the call. 2) if 'routing' is specified
+ * as EmergencyNumberRouting#EMERGENCY, the implementation must use emergency routing to handle
+ * the call. 3) if 'routing' is specified as EmergencyNumberRouting#UNKNOWN, Android does not
+ * know how to handle the call.
+ *
+ * If the dialed emergency number does not have a specified emergency service category, the
+ * 'categories' field is set to EmergencyServiceCategory#UNSPECIFIED; if the dialed emergency
+ * number does not have specified emergency Uniform Resource Names, the 'urns' field is set to
+ * an empty list. If the underlying technology used to request emergency services does not
+ * support the emergency service category or emergency uniform resource names, the field
+ * 'categories' or 'urns' may be ignored.
+ *
+ * In the scenarios that the 'address' in the 'dialInfo' field has other functions besides the
+ * emergency number function, if the 'hasKnownUserIntentEmergency' field is true, the user's
+ * intent for this dial request is emergency call, and the modem must treat this as an actual
+ * emergency dial; if the 'hasKnownUserIntentEmergency' field is false, Android does not know
+ * user's intent for this call.
+ *
+ * If 'isTesting' is true, this request is for testing purpose, and must not be sent to a real
+ * emergency service; otherwise it's for a real emergency call request.
+ *
+ * Reference: 3gpp 22.101, Section 10 - Emergency Calls;
+ * 3gpp 23.167, Section 6 - Functional description;
+ * 3gpp 24.503, Section 5.1.6.8.1 - General;
+ * RFC 5031
+ *
+ * @param serial Serial number of request.
+ * @param dialInfo the same Dial information used by IRadioVoice.dial.
+ * @param categories bitfield<EmergencyServiceCategory> the Emergency Service Category(s)
+ * of the call.
+ * @param urns the emergency Uniform Resource Names (URN)
+ * @param routing EmergencyCallRouting the emergency call routing information.
+ * @param hasKnownUserIntentEmergency Flag indicating if user's intent for the emergency call
+ * is known.
+ * @param isTesting Flag indicating if this request is for testing purpose.
+ *
+ * Response function is IRadioVoiceResponse.emergencyDialResponse()
+ */
+ void emergencyDial(in int serial, in Dial dialInfo, in EmergencyServiceCategory categories,
+ in String[] urns, in EmergencyCallRouting routing,
+ in boolean hasKnownUserIntentEmergency, in boolean isTesting);
+
+ /**
+ * Request the radio's system selection module to exit emergency callback mode. Radio must not
+ * respond with SUCCESS until the modem has completely exited from Emergency Callback Mode.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.exitEmergencyCallbackModeResponse()
+ */
+ void exitEmergencyCallbackMode(in int serial);
+
+ /**
+ * Connects the two calls and disconnects the subscriber from both calls.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.explicitCallTransferResponse()
+ */
+ void explicitCallTransfer(in int serial);
+
+ /**
+ * Request call forward status.
+ *
+ * @param serial Serial number of request.
+ * @param callInfo CallForwardInfo
+ *
+ * Response function is IRadioVoiceResponse.getCallForwardStatusResponse()
+ */
+ void getCallForwardStatus(in int serial, in CallForwardInfo callInfo);
+
+ /**
+ * Query current call waiting state
+ *
+ * @param serial Serial number of request.
+ * @param serviceClass Service class is the TS 27.007 service class to query
+ *
+ * Response function is IRadioVoiceResponse.getCallWaitingResponse()
+ */
+ void getCallWaiting(in int serial, in int serviceClass);
+
+ /**
+ * Queries the status of the CLIP supplementary service (for MMI code "*#30#")
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.getClipResponse()
+ */
+ void getClip(in int serial);
+
+ /**
+ * Gets current CLIR status
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.getClirResponse()
+ */
+ void getClir(in int serial);
+
+ /**
+ * Requests current call list
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.getCurrentCallsResponse()
+ */
+ void getCurrentCalls(in int serial);
+
+ /**
+ * Requests the failure cause code for the most recently terminated call.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.getLastCallFailCauseResponse()
+ */
+ void getLastCallFailCause(in int serial);
+
+ /**
+ * Queries the current state of the uplink mute setting
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.getMuteResponse()
+ */
+ void getMute(in int serial);
+
+ /**
+ * Request the setting of preferred voice privacy mode.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.getPreferredVoicePrivacyResponse()
+ */
+ void getPreferredVoicePrivacy(in int serial);
+
+ /**
+ * Request the setting of TTY mode
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.getTtyModeResponse()
+ */
+ void getTtyMode(in int serial);
+
+ /**
+ * When STK application gets stkCallSetup(), the call actually has been initialized by the
+ * mobile device already. (We could see the call has been in the 'call list'). STK application
+ * needs to accept/reject the call according to user operations.
+ *
+ * @param serial Serial number of request.
+ * @param accept true = accept the call setup, false = reject the call setup
+ *
+ * Response function is IRadioVoiceResponse.handleStkCallSetupRequestFromSimResponse()
+ */
+ void handleStkCallSetupRequestFromSim(in int serial, in boolean accept);
+
+ /**
+ * Hang up a specific line (like AT+CHLD=1x). After this HANGUP request returns, Radio must
+ * show the connection is NOT active anymore in next getCurrentCalls() query.
+ *
+ * @param serial Serial number of request.
+ * @param gsmIndex Connection index (value of 'x' in CHLD above)
+ *
+ * Response function is IRadioVoiceResponse.hangupResponse()
+ */
+ void hangup(in int serial, in int gsmIndex);
+
+ /**
+ * Hang up waiting or held (like AT+CHLD=1). After this HANGUP request returns, Radio must show
+ * the connection is NOT active anymore in next getCurrentCalls() query.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.hangupForegroundResumeBackgroundResponse()
+ */
+ void hangupForegroundResumeBackground(in int serial);
+
+ /**
+ * Hang up waiting or held (like AT+CHLD=0). After this HANGUP request returns, Radio must show
+ * the connection is NOT active anymore in next getCurrentCalls() query.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.hangupWaitingOrBackgroundResponse()
+ */
+ void hangupWaitingOrBackground(in int serial);
+
+ /**
+ * Send UDUB (user determined user busy) to ringing or waiting call answer)
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.rejectCallResponse()
+ */
+ void rejectCall(in int serial);
+
+ /**
+ * When response type received from a radio indication or radio response is
+ * RadioIndicationType:UNSOLICITED_ACK_EXP or RadioResponseType:SOLICITED_ACK_EXP respectively,
+ * acknowledge the receipt of those messages by sending responseAcknowledgement().
+ */
+ void responseAcknowledgement();
+
+ /**
+ * Send DTMF string
+ *
+ * @param serial Serial number of request.
+ * @param dtmf DTMF string
+ * @param on DTMF ON length in milliseconds, or 0 to use default
+ * @param off is the DTMF OFF length in milliseconds, or 0 to use default
+ *
+ * Response function is IRadioVoiceResponse.sendBurstDtmfResponse()
+ */
+ void sendBurstDtmf(in int serial, in String dtmf, in int on, in int off);
+
+ /**
+ * Send FLASH command
+ *
+ * @param serial Serial number of request.
+ * @param featureCode String associated with Flash command
+ *
+ * Response function is IRadioVoiceResponse.sendCdmaFeatureCodeResponse()
+ */
+ void sendCdmaFeatureCode(in int serial, in String featureCode);
+
+ /**
+ * Send a DTMF tone. If the implementation is currently playing a tone requested via
+ * startDtmf(), that tone must be cancelled and the new tone must be played instead.
+ *
+ * @param serial Serial number of request.
+ * @param s string with single char having one of 12 values: 0-9, *, #
+ *
+ * Response function is IRadioVoiceResponse.sendDtmfResponse()
+ */
+ void sendDtmf(in int serial, in String s);
+
+ /**
+ * Separate a party from a multiparty call placing the multiparty call (less the specified
+ * party) on hold and leaving the specified party as the only other member of the current
+ * (active) call. Like AT+CHLD=2x.
+ *
+ * See TS 22.084 1.3.8.2 (iii)
+ * TS 22.030 6.5.5 "Entering "2X followed by send"
+ * TS 27.007 "AT+CHLD=2x"
+ *
+ * @param serial Serial number of request.
+ * @param gsmIndex contains Connection index (value of 'x' in CHLD above)
+ *
+ * Response function is IRadioVoiceResponse.separateConnectionResponse()
+ */
+ void separateConnection(in int serial, in int gsmIndex);
+
+ /**
+ * Configure call forward rule
+ *
+ * @param serial Serial number of request.
+ * @param callInfo CallForwardInfo
+ *
+ * Response function is IRadioVoiceResponse.setCallForwardResponse()
+ */
+ void setCallForward(in int serial, in CallForwardInfo callInfo);
+
+ /**
+ * Configure current call waiting state
+ *
+ * @param serial Serial number of request.
+ * @param enable is false for "disabled" and true for "enabled"
+ * @param serviceClass is the TS 27.007 service class bit vector of services to modify
+ *
+ * Response function is IRadioVoiceResponse.setCallWaitingResponse()
+ */
+ void setCallWaiting(in int serial, in boolean enable, in int serviceClass);
+
+ /**
+ * Set current CLIR status
+ *
+ * @param serial Serial number of request.
+ * @param status "n" parameter from TS 27.007 7.7
+ *
+ * Response function is IRadioVoiceResponse.setClirResponse()
+ */
+ void setClir(in int serial, in int status);
+
+ /**
+ * Turn on or off uplink (microphone) mute. Must only be sent while voice call is active.
+ * Must always be reset to "disable mute" when a new voice call is initiated
+ *
+ * @param serial Serial number of request.
+ * @param enable true for "enable mute" and false for "disable mute"
+ *
+ * Response function is IRadioVoiceResponse.setMuteResponse()
+ */
+ void setMute(in int serial, in boolean enable);
+
+ /**
+ * Request to set the preferred voice privacy mode used in voice scrambling.
+ *
+ * @param serial Serial number of request.
+ * @param enable false for Standard Privacy Mode (Public Long Code Mask)
+ * true for Enhanced Privacy Mode (Private Long Code Mask)
+ *
+ * Response function is IRadioVoiceResponse.setPreferredVoicePrivacyResponse()
+ */
+ void setPreferredVoicePrivacy(in int serial, in boolean enable);
+
+ /**
+ * Set response functions for voice radio requests and indications.
+ *
+ * @param radioVoiceResponse Object containing response functions
+ * @param radioVoiceIndication Object containing radio indications
+ */
+ void setResponseFunctions(in IRadioVoiceResponse radioVoiceResponse,
+ in IRadioVoiceIndication radioVoiceIndication);
+
+ /**
+ * Request to set the TTY mode
+ *
+ * @param serial Serial number of request.
+ * @param mode TtyMode
+ *
+ * Response function is IRadioVoiceResponse.setTtyModeResponse()
+ */
+ void setTtyMode(in int serial, in TtyMode mode);
+
+ /**
+ * Start playing a DTMF tone. Continue playing DTMF tone until stopDtmf is received. If a
+ * startDtmf() is received while a tone is currently playing, it must cancel the previous tone
+ * and play the new one.
+ *
+ * @param serial Serial number of request.
+ * @param s string having a single character with one of 12 values: 0-9,*,#
+ *
+ * Response function is IRadioVoiceResponse.startDtmfResponse()
+ */
+ void startDtmf(in int serial, in String s);
+
+ /**
+ * Stop playing a currently playing DTMF tone.
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.stopDtmfResponse()
+ */
+ void stopDtmf(in int serial);
+
+ /**
+ * Switch waiting or holding call and active call (like AT+CHLD=2).
+ * Call transitions must happen as shown below.
+ * BEFORE AFTER
+ * Call 1 Call 2 Call 1 Call 2
+ * ACTIVE HOLDING HOLDING ACTIVE
+ * ACTIVE WAITING HOLDING ACTIVE
+ * HOLDING WAITING HOLDING ACTIVE
+ * ACTIVE IDLE HOLDING IDLE
+ * IDLE IDLE IDLE IDLE
+ *
+ * @param serial Serial number of request.
+ *
+ * Response function is IRadioVoiceResponse.switchWaitingOrHoldingAndActiveResponse()
+ */
+ void switchWaitingOrHoldingAndActive(in int serial);
+}
diff --git a/radio/aidl/android/hardware/radio/voice/IRadioVoiceIndication.aidl b/radio/aidl/android/hardware/radio/voice/IRadioVoiceIndication.aidl
new file mode 100644
index 0000000..81640f3
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/voice/IRadioVoiceIndication.aidl
@@ -0,0 +1,169 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.voice;
+
+import android.hardware.radio.RadioIndicationType;
+import android.hardware.radio.voice.CdmaCallWaiting;
+import android.hardware.radio.voice.CdmaInformationRecords;
+import android.hardware.radio.voice.CdmaOtaProvisionStatus;
+import android.hardware.radio.voice.CdmaSignalInfoRecord;
+import android.hardware.radio.voice.EmergencyNumber;
+import android.hardware.radio.voice.SrvccState;
+import android.hardware.radio.voice.StkCcUnsolSsResult;
+
+/**
+ * Interface declaring unsolicited radio indications for voice APIs.
+ */
+@VintfStability
+oneway interface IRadioVoiceIndication {
+ /**
+ * Ring indication for an incoming call (eg, RING or CRING event). There must be at least one
+ * callRing() at the beginning of a call and sending multiple is optional. If the system
+ * property ro.telephony.call_ring.multiple is false then the upper layers must generate the
+ * multiple events internally. Otherwise the vendor code must generate multiple callRing() if
+ * ro.telephony.call_ring.multiple is true or if it is absent.
+ * The rate of these events is controlled by ro.telephony.call_ring.delay and has a default
+ * value of 3000 (3 seconds) if absent.
+ *
+ * @param type Type of radio indication
+ * @param isGsm true for GSM & false for CDMA
+ * @param record Cdma Signal Information
+ */
+ void callRing(in RadioIndicationType type, in boolean isGsm, in CdmaSignalInfoRecord record);
+
+ /**
+ * Indicates when call state has changed. Callee must invoke IRadioVoice.getCurrentCalls().
+ * Must be invoked on, for example, "RING", "BUSY", "NO CARRIER", and also call state
+ * transitions (DIALING->ALERTING ALERTING->ACTIVE). Redundent or extraneous invocations are
+ * tolerated.
+ *
+ * @param type Type of radio indication
+ */
+ void callStateChanged(in RadioIndicationType type);
+
+ /**
+ * Indicates when CDMA radio receives a call waiting indication.
+ *
+ * @param type Type of radio indication
+ * @param callWaitingRecord Cdma CallWaiting information
+ */
+ void cdmaCallWaiting(in RadioIndicationType type, in CdmaCallWaiting callWaitingRecord);
+
+ /**
+ * Indicates when CDMA radio receives one or more info recs.
+ *
+ * @param type Type of radio indication
+ * @param records New Cdma Information
+ */
+ void cdmaInfoRec(in RadioIndicationType type, in CdmaInformationRecords records);
+
+ /**
+ * Indicates when CDMA radio receives an update of the progress of an OTASP/OTAPA call.
+ *
+ * @param type Type of radio indication
+ * @param status Cdma OTA provision status
+ */
+ void cdmaOtaProvisionStatus(in RadioIndicationType type, in CdmaOtaProvisionStatus status);
+
+ /**
+ * Report the current list of emergency numbers. Each emergency number in the emergency number
+ * list contains a dialing number, zero or more service category(s), zero or more emergency
+ * uniform resource names, mobile country code, mobile network code, and source(s) that indicate
+ * where it comes from.
+ * Radio must report all the valid emergency numbers with known mobile country code, mobile
+ * network code, emergency service categories, and emergency uniform resource names from all
+ * available sources including network signaling, sim, modem/oem configuration, and default
+ * configuration (112 and 911 must be always available; additionally, 000, 08, 110, 999, 118
+ * and 119 must be available when sim is not present). Radio shall not report emergency numbers
+ * that are invalid in the current locale. The reported emergency number list must not have
+ * duplicate EmergencyNumber entries. Please refer the documentation of EmergencyNumber to
+ * construct each emergency number to report.
+ * Radio must report the complete list of emergency numbers whenever the emergency numbers in
+ * the list are changed or whenever the client and the radio server are connected.
+ *
+ * Reference: 3gpp 22.101, Section 10 - Emergency Calls;
+ * 3gpp 24.008, Section 9.2.13.4 - Emergency Number List
+ *
+ * @param type Type of radio indication
+ * @param emergencyNumberList Current list of emergency numbers known to radio.
+ */
+ void currentEmergencyNumberList(
+ in RadioIndicationType type, in EmergencyNumber[] emergencyNumberList);
+
+ /**
+ * Indicates that the radio system selection module has autonomously entered emergency
+ * callback mode.
+ *
+ * @param type Type of radio indication
+ */
+ void enterEmergencyCallbackMode(in RadioIndicationType type);
+
+ /**
+ * Indicates when Emergency Callback Mode ends. Indicates that the radio system selection module
+ * has proactively exited emergency callback mode.
+ *
+ * @param type Type of radio indication
+ */
+ void exitEmergencyCallbackMode(in RadioIndicationType type);
+
+ /**
+ * Indicates that nework doesn't have in-band information, need to play out-band tone.
+ *
+ * @param type Type of radio indication
+ * @param start true = start play ringback tone, false = stop playing ringback tone
+ */
+ void indicateRingbackTone(in RadioIndicationType type, in boolean start);
+
+ /**
+ * Indicates when Supplementary service(SS) response is received when DIAL/USSD/SS is changed to
+ * SS by call control.
+ *
+ * @param type Type of radio indication
+ */
+ void onSupplementaryServiceIndication(in RadioIndicationType type, in StkCcUnsolSsResult ss);
+
+ /**
+ * Indicates that framework/application must reset the uplink mute state.
+ *
+ * @param type Type of radio indication
+ */
+ void resendIncallMute(in RadioIndicationType type);
+
+ /**
+ * Indicates when Single Radio Voice Call Continuity (SRVCC) progress state has changed.
+ *
+ * @param type Type of radio indication
+ * @param state New Srvcc State
+ */
+ void srvccStateNotify(in RadioIndicationType type, in SrvccState state);
+
+ /**
+ * Indicates when there is an ALPHA from UICC during Call Control.
+ *
+ * @param type Type of radio indication
+ * @param alpha ALPHA string from UICC in UTF-8 format
+ */
+ void stkCallControlAlphaNotify(in RadioIndicationType type, in String alpha);
+
+ /**
+ * Indicates when SIM wants application to setup a voice call.
+ *
+ * @param type Type of radio indication
+ * @param timeout Timeout value in millisec for setting up voice call
+ */
+ void stkCallSetup(in RadioIndicationType type, in long timeout);
+}
diff --git a/radio/aidl/android/hardware/radio/voice/IRadioVoiceResponse.aidl b/radio/aidl/android/hardware/radio/voice/IRadioVoiceResponse.aidl
new file mode 100644
index 0000000..f3cf5fb
--- /dev/null
+++ b/radio/aidl/android/hardware/radio/voice/IRadioVoiceResponse.aidl
@@ -0,0 +1,751 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.hardware.radio.voice;
+
+import android.hardware.radio.RadioResponseInfo;
+import android.hardware.radio.voice.Call;
+import android.hardware.radio.voice.CallForwardInfo;
+import android.hardware.radio.voice.ClipStatus;
+import android.hardware.radio.voice.LastCallFailCauseInfo;
+import android.hardware.radio.voice.TtyMode;
+
+/**
+ * Interface declaring response functions to solicited radio requests for voice APIs.
+ */
+@VintfStability
+oneway interface IRadioVoiceResponse {
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void acceptCallResponse(in RadioResponseInfo info);
+
+ /**
+ * Acknowledge the receipt of radio request sent to the vendor. This must be sent only for
+ * radio request which take long time to respond. For more details, refer
+ * https://source.android.com/devices/tech/connect/ril.html
+ *
+ * @param serial Serial no. of the request whose acknowledgement is sent.
+ */
+ void acknowledgeRequest(in int serial);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_STATE
+ * RadioError:INVALID_CALL_ID
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void conferenceResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:DIAL_MODIFIED_TO_USSD
+ * RadioError:DIAL_MODIFIED_TO_SS
+ * RadioError:DIAL_MODIFIED_TO_DIAL
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:INVALID_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:INTERNAL_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:MODEM_ERR
+ * RadioError:NO_SUBSCRIPTION
+ * RadioError:NO_NETWORK_FOUND
+ * RadioError:INVALID_CALL_ID
+ * RadioError:DEVICE_IN_USE
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:ABORTED
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:CANCELLED
+ */
+ void dialResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:DIAL_MODIFIED_TO_USSD
+ * RadioError:DIAL_MODIFIED_TO_SS
+ * RadioError:DIAL_MODIFIED_TO_DIAL
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_RESOURCES
+ * RadioError:INTERNAL_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:MODEM_ERR
+ * RadioError:NO_SUBSCRIPTION
+ * RadioError:NO_NETWORK_FOUND
+ * RadioError:INVALID_CALL_ID
+ * RadioError:DEVICE_IN_USE
+ * RadioError:ABORTED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void emergencyDialResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:OPERATION_NO_ALLOWED
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:SIM_ABSENT
+ */
+ void exitEmergencyCallbackModeResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void explicitCallTransferResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param callForwardInfos points to a vector of CallForwardInfo, one for each distinct
+ * registered phone number. For example, if data is forwarded to +18005551212 and voice
+ * is forwarded to +18005559999, then two separate CallForwardInfo's must be returned.
+ * However, if both data and voice are forwarded to +18005551212, then a single
+ * CallForwardInfo must be returned with the service class set to "data + voice = 3".
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SYSTEM_ERR
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getCallForwardStatusResponse(
+ in RadioResponseInfo info, in CallForwardInfo[] callForwardInfos);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param enable If current call waiting state is disabled, enable = false else true
+ * @param serviceClass If enable, then callWaitingResp[1] must follow, with the TS 27.007
+ * service class bit vector of services for which call waiting is enabled. For example,
+ * if callWaitingResp[0] is 1 and callWaitingResp[1] is 3, then call waiting is enabled
+ * for data and voice and disabled for everything else.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getCallWaitingResponse(in RadioResponseInfo info, in boolean enable, in int serviceClass);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param status indicates CLIP status
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getClipResponse(in RadioResponseInfo info, in ClipStatus status);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param n is "n" parameter from TS 27.007 7.7
+ * @param m is "m" parameter from TS 27.007 7.7
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getClirResponse(in RadioResponseInfo info, in int n, in int m);
+
+ /**
+ * @param info Response info struct containing respontype, serial no. and error
+ * @param calls Current call list
+ *
+ * Valid errors returned:
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getCurrentCallsResponse(in RadioResponseInfo info, in Call[] calls);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param failCauseInfo Contains LastCallFailCause and vendor cause code.
+ *
+ * The vendor cause code must be used for debugging purpose only. The implementation must return
+ * one of the values of LastCallFailCause as mentioned below.
+ * GSM failure reasons codes for the cause codes defined in TS 24.008 Annex H where possible.
+ * CDMA failure reasons codes for the possible call failure scenarios described in the
+ * "CDMA IS-2000 Release A (C.S0005-A v6.0)" standard.
+ * Any of the following reason codes if the call is failed or dropped due to reason mentioned
+ * with in the braces.
+ * LastCallFailCause:RADIO_OFF (Radio is OFF)
+ * LastCallFailCause:OUT_OF_SERVICE (No cell coverage)
+ * LastCallFailCause:NO_VALID_SIM (No valid SIM)
+ * LastCallFailCause:RADIO_INTERNAL_ERROR (Modem hit unexpected error scenario)
+ * LastCallFailCause:NETWORK_RESP_TIMEOUT (No response from network)
+ * LastCallFailCause:NETWORK_REJECT (Explicit network reject)
+ * LastCallFailCause:RADIO_ACCESS_FAILURE (RRC connection failure. Eg.RACH)
+ * LastCallFailCause:RADIO_LINK_FAILURE (Radio Link Failure)
+ * LastCallFailCause:RADIO_LINK_LOST (Radio link lost due to poor coverage)
+ * LastCallFailCause:RADIO_UPLINK_FAILURE (Radio uplink failure)
+ * LastCallFailCause:RADIO_SETUP_FAILURE (RRC connection setup failure)
+ * LastCallFailCause:RADIO_RELEASE_NORMAL (RRC connection release, normal)
+ * LastCallFailCause:RADIO_RELEASE_ABNORMAL (RRC connection release, abnormal)
+ * LastCallFailCause:ACCESS_CLASS_BLOCKED (Access class barring)
+ * LastCallFailCause:NETWORK_DETACH (Explicit network detach)
+ * OEM causes (LastCallFailCause:OEM_CAUSE_XX) must be used for debug purpose only
+ *
+ * If the implementation does not have access to the exact cause codes, then it must return one
+ * of the values listed in LastCallFailCause, as the UI layer needs to distinguish these cases
+ * for tone generation or error notification.
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:NO_MEMORY
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SYSTEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INTERNAL_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_MEMORY
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getLastCallFailCauseResponse(
+ in RadioResponseInfo info, in LastCallFailCauseInfo failCauseinfo);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param enable true for "mute enabled" and false for "mute disabled"
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getMuteResponse(in RadioResponseInfo info, in boolean enable);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param enable false for Standard Privacy Mode (Public Long Code Mask)
+ * true for Enhanced Privacy Mode (Private Long Code Mask)
+ *
+ * Valid errors:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getPreferredVoicePrivacyResponse(in RadioResponseInfo info, in boolean enable);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ * @param mode TtyMode
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void getTtyModeResponse(in RadioResponseInfo info, in TtyMode mode);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:SIM_ABSENT
+ */
+ void handleStkCallSetupRequestFromSimResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:INVALID_STATE
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ */
+ void hangupConnectionResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:NO_RESOURCES
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void hangupForegroundResumeBackgroundResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:NO_RESOURCES
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:CANCELLED
+ */
+ void hangupWaitingOrBackgroundResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:INVALID_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void rejectCallResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:INVALID_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:OPERATION_NOT_ALLOWED
+ */
+ void sendBurstDtmfResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:INVALID_STATE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ * RadioError:OPERATION_NOT_ALLOWED
+ */
+ void sendCdmaFeatureCodeResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_RESOURCES
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void sendDtmfResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:INVALID_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:CANCELLED
+ */
+ void separateConnectionResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_STATE
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setCallForwardResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_STATE
+ * RadioError:FDN_CHECK_FAILURE
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setCallWaitingResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:SS_MODIFIED_TO_DIAL
+ * RadioError:SS_MODIFIED_TO_USSD
+ * RadioError:SS_MODIFIED_TO_SS
+ * RadioError:NO_MEMORY
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setClirResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_MEMORY
+ * RadioError:REQUEST_RATE_LIMITED
+ * RadioError:INTERNAL_ERR
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setMuteResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_CALL_ID
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setPreferredVoicePrivacyResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void setTtyModeResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_RESOURCES
+ * RadioError:NO_MEMORY
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void startDtmfResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:NO_RESOURCES
+ * RadioError:NO_MEMORY
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SYSTEM_ERR
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_CALL_ID
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:CANCELLED
+ * RadioError:INVALID_MODEM_STATE
+ */
+ void stopDtmfResponse(in RadioResponseInfo info);
+
+ /**
+ * @param info Response info struct containing response type, serial no. and error
+ *
+ * Valid errors returned:
+ * RadioError:NONE
+ * RadioError:RADIO_NOT_AVAILABLE (radio resetting)
+ * RadioError:INVALID_STATE
+ * RadioError:NO_MEMORY
+ * RadioError:MODEM_ERR
+ * RadioError:INTERNAL_ERR
+ * RadioError:INVALID_STATE
+ * RadioError:INVALID_CALL_ID
+ * RadioError:OPERATION_NOT_ALLOWED
+ * RadioError:INVALID_ARGUMENTS
+ * RadioError:SYSTEM_ERR
+ * RadioError:REQUEST_NOT_SUPPORTED
+ * RadioError:INVALID_MODEM_STATE
+ * RadioError:NO_RESOURCES
+ * RadioError:CANCELLED
+ */
+ void switchWaitingOrHoldingAndActiveResponse(in RadioResponseInfo info);
+}
diff --git a/radio/aidl/android/hardware/radio/LastCallFailCause.aidl b/radio/aidl/android/hardware/radio/voice/LastCallFailCause.aidl
similarity index 98%
rename from radio/aidl/android/hardware/radio/LastCallFailCause.aidl
rename to radio/aidl/android/hardware/radio/voice/LastCallFailCause.aidl
index e5a5145..5e328d4 100644
--- a/radio/aidl/android/hardware/radio/LastCallFailCause.aidl
+++ b/radio/aidl/android/hardware/radio/voice/LastCallFailCause.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/LastCallFailCauseInfo.aidl b/radio/aidl/android/hardware/radio/voice/LastCallFailCauseInfo.aidl
similarity index 88%
rename from radio/aidl/android/hardware/radio/LastCallFailCauseInfo.aidl
rename to radio/aidl/android/hardware/radio/voice/LastCallFailCauseInfo.aidl
index 6866e99..084bedd 100644
--- a/radio/aidl/android/hardware/radio/LastCallFailCauseInfo.aidl
+++ b/radio/aidl/android/hardware/radio/voice/LastCallFailCauseInfo.aidl
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.LastCallFailCause;
+import android.hardware.radio.voice.LastCallFailCause;
@VintfStability
parcelable LastCallFailCauseInfo {
diff --git a/radio/aidl/android/hardware/radio/SrvccState.aidl b/radio/aidl/android/hardware/radio/voice/SrvccState.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/SrvccState.aidl
rename to radio/aidl/android/hardware/radio/voice/SrvccState.aidl
index d428314..ddf75db 100644
--- a/radio/aidl/android/hardware/radio/SrvccState.aidl
+++ b/radio/aidl/android/hardware/radio/voice/SrvccState.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/SsInfoData.aidl b/radio/aidl/android/hardware/radio/voice/SsInfoData.aidl
similarity index 86%
rename from radio/aidl/android/hardware/radio/SsInfoData.aidl
rename to radio/aidl/android/hardware/radio/voice/SsInfoData.aidl
index 6ee3da0..40af393 100644
--- a/radio/aidl/android/hardware/radio/SsInfoData.aidl
+++ b/radio/aidl/android/hardware/radio/voice/SsInfoData.aidl
@@ -14,13 +14,13 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
parcelable SsInfoData {
/**
* This is the response data for all of the SS GET/SET Radio requests.
- * E.g. IRadio.getClir() returns two ints, so first two values of ssInfo[] will be used for
+ * E.g. IRadioVoice.getClir() returns two ints, so first two values of ssInfo[] will be used for
* response if serviceType is SS_CLIR and requestType is SS_INTERROGATION.
* Max size = RadioConst:SS_INFO_MAX
*/
diff --git a/radio/aidl/android/hardware/radio/StkCcUnsolSsResult.aidl b/radio/aidl/android/hardware/radio/voice/StkCcUnsolSsResult.aidl
similarity index 92%
rename from radio/aidl/android/hardware/radio/StkCcUnsolSsResult.aidl
rename to radio/aidl/android/hardware/radio/voice/StkCcUnsolSsResult.aidl
index d73f687..be1b611 100644
--- a/radio/aidl/android/hardware/radio/StkCcUnsolSsResult.aidl
+++ b/radio/aidl/android/hardware/radio/voice/StkCcUnsolSsResult.aidl
@@ -14,11 +14,11 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
-import android.hardware.radio.CfData;
import android.hardware.radio.RadioError;
-import android.hardware.radio.SsInfoData;
+import android.hardware.radio.voice.CfData;
+import android.hardware.radio.voice.SsInfoData;
@VintfStability
parcelable StkCcUnsolSsResult {
@@ -84,12 +84,12 @@
int serviceClass;
RadioError result;
/**
- * Valid only for all SsServiceType except SsServiceType:CF_* else empty.
+ * Valid only for all serviceType except SERVICE_TYPE_CF_* else empty.
* Only one of ssInfo and cfData may contain values and the other must be empty.
*/
SsInfoData[] ssInfo;
/**
- * Valid for SsServiceType:CF_* else empty
+ * Valid for serviceType SERVICE_TYPE_CF_* else empty
* Only one of ssInfo and cfData may contain values and the other must be empty.
*/
CfData[] cfData;
diff --git a/radio/aidl/android/hardware/radio/TtyMode.aidl b/radio/aidl/android/hardware/radio/voice/TtyMode.aidl
similarity index 95%
rename from radio/aidl/android/hardware/radio/TtyMode.aidl
rename to radio/aidl/android/hardware/radio/voice/TtyMode.aidl
index 344ba67..81a846b 100644
--- a/radio/aidl/android/hardware/radio/TtyMode.aidl
+++ b/radio/aidl/android/hardware/radio/voice/TtyMode.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
@VintfStability
@Backing(type="int")
diff --git a/radio/aidl/android/hardware/radio/UusInfo.aidl b/radio/aidl/android/hardware/radio/voice/UusInfo.aidl
similarity index 97%
rename from radio/aidl/android/hardware/radio/UusInfo.aidl
rename to radio/aidl/android/hardware/radio/voice/UusInfo.aidl
index c96c626..19e73f7 100644
--- a/radio/aidl/android/hardware/radio/UusInfo.aidl
+++ b/radio/aidl/android/hardware/radio/voice/UusInfo.aidl
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package android.hardware.radio;
+package android.hardware.radio.voice;
/**
* User-to-User Signaling Information defined in 3GPP 23.087 v8.0