Merge "Added Satellite messaging data support" into main
diff --git a/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnTypes.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnTypes.aidl
index d2d3137..782dbbf 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnTypes.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/ApnTypes.aidl
@@ -51,4 +51,5 @@
VSIM = (1 << 12) /* 4096 */,
BIP = (1 << 13) /* 8192 */,
ENTERPRISE = (1 << 14) /* 16384 */,
+ RCS = (1 << 15) /* 32768 */,
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataProfileInfo.aidl b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataProfileInfo.aidl
index bd44275..7f3fdc7 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataProfileInfo.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.data/current/android/hardware/radio/data/DataProfileInfo.aidl
@@ -55,6 +55,7 @@
boolean persistent;
boolean alwaysOn;
android.hardware.radio.data.TrafficDescriptor trafficDescriptor;
+ int infrastructureBitmap = INFRASTRUCTURE_UNKNOWN /* 0 */;
const int ID_DEFAULT = 0;
const int ID_TETHERED = 1;
const int ID_IMS = 2;
@@ -65,4 +66,7 @@
const int TYPE_COMMON = 0;
const int TYPE_3GPP = 1;
const int TYPE_3GPP2 = 2;
+ const int INFRASTRUCTURE_UNKNOWN = 0;
+ const int INFRASTRUCTURE_CELLULAR = (1 << 0) /* 1 */;
+ const int INFRASTRUCTURE_SATELLITE = (1 << 1) /* 2 */;
}
diff --git a/radio/aidl/android/hardware/radio/data/ApnTypes.aidl b/radio/aidl/android/hardware/radio/data/ApnTypes.aidl
index 366570a..f44c636 100644
--- a/radio/aidl/android/hardware/radio/data/ApnTypes.aidl
+++ b/radio/aidl/android/hardware/radio/data/ApnTypes.aidl
@@ -86,5 +86,9 @@
/**
* APN type for ENTERPRISE
*/
- ENTERPRISE = 1 << 14
+ ENTERPRISE = 1 << 14,
+ /**
+ * APN type for RCS (Rich Communication Services)
+ */
+ RCS = 1 << 15
}
diff --git a/radio/aidl/android/hardware/radio/data/DataProfileInfo.aidl b/radio/aidl/android/hardware/radio/data/DataProfileInfo.aidl
index 613387f..d01f8ff 100644
--- a/radio/aidl/android/hardware/radio/data/DataProfileInfo.aidl
+++ b/radio/aidl/android/hardware/radio/data/DataProfileInfo.aidl
@@ -40,6 +40,21 @@
const int TYPE_3GPP2 = 2;
/**
+ * Innfrastructure type unknown. This is only for initializing.
+ */
+ const int INFRASTRUCTURE_UNKNOWN = 0;
+
+ /**
+ * Indicating this APN can be used when the device is using terrestrial cellular networks.
+ */
+ const int INFRASTRUCTURE_CELLULAR = 1 << 0;
+
+ /**
+ * Indicating this APN can be used when the device is attached to satellite.
+ */
+ const int INFRASTRUCTURE_SATELLITE = 1 << 1;
+
+ /**
* ID of the data profile.
* Values are ID_
*/
@@ -131,4 +146,10 @@
* apn; apn must be used as the end point if one is not specified through URSP rules.
*/
TrafficDescriptor trafficDescriptor;
+ /**
+ * The infrastructure bitmap which the APN can be used on. For example, some APNs can only
+ * be used when the device is using cellular network, using satellite network, or can be used
+ * in either cases.
+ */
+ int infrastructureBitmap = INFRASTRUCTURE_UNKNOWN;
}