Merge 25Q1 (ab/12770256) to aosp-main-future

Bug: 385190204
Merged-In: I583c0bfdcc98508ae24cb0d2ac374ff9e51b6203
Change-Id: I29ef03753eeb00d8da884cff440b1f3a13de8225
diff --git a/srcs/Android.bp b/srcs/Android.bp
index e584604..1ac55ab 100644
--- a/srcs/Android.bp
+++ b/srcs/Android.bp
@@ -27,7 +27,7 @@
         "//apex_available:platform",
         "com.android.art",
         "com.android.art.debug",
-        "com.android.btservices",
+        "com.android.bt",
         "com.android.compos",
         "com.android.crashrecovery",
         "com.android.nfcservices",
diff --git a/srcs/android/sysprop/BluetoothProperties.sysprop b/srcs/android/sysprop/BluetoothProperties.sysprop
index d6b8e4f..93ec6d0 100644
--- a/srcs/android/sysprop/BluetoothProperties.sysprop
+++ b/srcs/android/sysprop/BluetoothProperties.sysprop
@@ -105,6 +105,18 @@
     prop_name: "persist.bluetooth.leaudio.allow_list"
 }
 
+# LE audio modes
+# - "disabled"  - All LE audio feature off.
+# - "unicast"   - Unicast enabled only.
+# - "broadcast" - Unicast + broadcast enabled.
+prop {
+    api_name: "le_audio_dynamic_switcher_mode"
+    type: String
+    scope: Internal
+    access: ReadWrite
+    prop_name: "persist.bluetooth.leaudio_dynamic_switcher.mode"
+}
+
 ######## Bluetooth configurations
 
 # Whether GAP BLE Privacy (RPA) is enabled on this device.
@@ -707,6 +719,43 @@
     prop_name: "bluetooth.core.le.connection_supervision_timeout"
 }
 
+# LE connection intervals which replace the above (min/max)_connection_interval
+prop {
+    api_name: "getLeMinConnectionIntervalRelaxed"
+    type: UInt
+    scope: Internal
+    access: Readonly
+    prop_name: "bluetooth.core.le.min_connection_interval_relaxed"
+}
+prop {
+    api_name: "getLeMaxConnectionIntervalRelaxed"
+    type: UInt
+    scope: Internal
+    access: Readonly
+    prop_name: "bluetooth.core.le.max_connection_interval_relaxed"
+}
+prop {
+    api_name: "getLeMinConnectionIntervalAggressive"
+    type: UInt
+    scope: Internal
+    access: Readonly
+    prop_name: "bluetooth.core.le.min_connection_interval_aggressive"
+}
+prop {
+    api_name: "getLeMaxConnectionIntervalAggressive"
+    type: UInt
+    scope: Internal
+    access: Readonly
+    prop_name: "bluetooth.core.le.max_connection_interval_aggressive"
+}
+prop {
+    api_name: "getLeAggressiveConnectionThreshold"
+    type: UInt
+    scope: Internal
+    access: Readonly
+    prop_name: "bluetooth.core.le.aggressive_connection_threshold"
+}
+
 # Direct connection timeout in ms
 prop {
     api_name: "getLeDirectConnectionTimeout"
@@ -844,3 +893,12 @@
     access: Readonly
     prop_name: "bluetooth.core.le.use_msft_hci_ext"
 }
+
+# MSFT HCI ext vendor opcode
+prop {
+    api_name: "getMsftVendorOpcode"
+    type: UInt
+    scope: Internal
+    access: Readonly
+    prop_name: "bluetooth.hci.msft_vendor_opcode"
+}