1# Copyright (C) 2021 The Android Open Source Project 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15module: "android.sysprop.BluetoothProperties" 16owner: Platform 17 18prop { 19 api_name: "snoop_default_mode" 20 type: Enum 21 scope: Public 22 access: ReadWrite 23 enum_values: "empty|disabled|filtered|full" 24 prop_name: "persist.bluetooth.btsnoopdefaultmode" 25} 26 27prop { 28 api_name: "snoop_log_mode" 29 type: Enum 30 scope: Public 31 access: ReadWrite 32 enum_values: "empty|disabled|filtered|full" 33 prop_name: "persist.bluetooth.btsnooplogmode" 34} 35 36prop { 37 api_name: "factory_reset" 38 type: Boolean 39 scope: Public 40 access: ReadWrite 41 prop_name: "persist.bluetooth.factoryreset" 42} 43 44######## Bluetooth configurations 45 46# Whether GAP BLE Privacy (RPA) is enabled on this device. 47# Set by vendors overlay, read at Bluetooth initialization 48prop { 49 api_name: "isGapLePrivacyEnabled" 50 type: Boolean 51 scope: Public 52 access: Readonly 53 prop_name: "bluetooth.core.gap.le.privacy.enabled" 54} 55 56# The default name of the device. 57# Set by vendors overlay, read at Bluetooth initialization 58prop { 59 api_name: "getDefaultDeviceName" 60 type: String 61 scope: Public 62 access: Readonly 63 prop_name: "bluetooth.device.default_name" 64} 65 66# The default class of device of the device, represented as a list of exactly 3 unsigned integers. 67# Set by vendors overlay, read at Bluetooth initialization 68prop { 69 api_name: "getClassOfDevice" 70 type: UIntList 71 scope: Public 72 access: Readonly 73 prop_name: "bluetooth.device.class_of_device" 74} 75 76# Bluetooth operating voltage in millivolts available for vendors overlay. 77# Used to calculate Bluetooth power consumption for a specific hardware. 78prop { 79 api_name: "getHardwareOperatingVoltageMv" 80 type: Integer 81 scope: Public 82 access: Readonly 83 prop_name: "bluetooth.hardware.power.operating_voltage_mv" 84} 85 86# Bluetooth idle current in milliamps available for vendors overlay. 87# Used to calculate Bluetooth power consumption for a specific hardware. 88prop { 89 api_name: "getHardwareIdleCurrentMa" 90 type: Integer 91 scope: Public 92 access: Readonly 93 prop_name: "bluetooth.hardware.power.idle_cur_ma" 94} 95 96# Bluetooth transmit current in milliamps available for vendors overlay. 97# Used to calculate Bluetooth power consumption for a specific hardware. 98prop { 99 api_name: "getHardwareTxCurrentMa" 100 type: Integer 101 scope: Public 102 access: Readonly 103 prop_name: "bluetooth.hardware.power.tx_cur_ma" 104} 105 106# Bluetooth receive current in milliamps available for vendors overlay. 107# Used to calculate Bluetooth power consumption for a specific hardware. 108prop { 109 api_name: "getHardwareRxCurrentMa" 110 type: Integer 111 scope: Public 112 access: Readonly 113 prop_name: "bluetooth.hardware.power.rx_cur_ma" 114} 115 116# Whether Bluetooth should keep its state after reboot. 117# Set by vendors overlay, read at Bluetooth initialization 118prop { 119 api_name: "isSupportPersistedStateEnabled" 120 type: Boolean 121 scope: Public 122 access: Readonly 123 prop_name: "bluetooth.framework.support_persisted_state" 124} 125 126# Whether Bluetooth should keep its state after reboot. 127# Set by vendors overlay, read at Bluetooth initialization 128prop { 129 api_name: "isAdapterAddressValidationEnabled" 130 type: Boolean 131 scope: Public 132 access: Readonly 133 prop_name: "bluetooth.framework.adapter_address_validation" 134} 135 136# Whether the Advanced Audio Distribution Profile (A2DP) Sink role is enabled on this device. 137# Set by vendors overlay, read at Bluetooth initialization 138prop { 139 api_name: "isProfileA2dpSinkEnabled" 140 type: Boolean 141 scope: Public 142 access: Readonly 143 prop_name: "bluetooth.profile.a2dp.sink.enabled" 144} 145 146# Whether the Advanced Audio Distribution Profile (A2DP) Source role is enabled on this device. 147# Set by vendors overlay, read at Bluetooth initialization 148prop { 149 api_name: "isProfileA2dpSourceEnabled" 150 type: Boolean 151 scope: Public 152 access: Readonly 153 prop_name: "bluetooth.profile.a2dp.source.enabled" 154} 155 156# Whether the Android defined Audio Support for Hearing Aids (ASHA) central role over is enabled on 157# this device. Set by vendors overlay, read at Bluetooth initialization. 158prop { 159 api_name: "isProfileAshaCentralEnabled" 160 type: Boolean 161 scope: Public 162 access: Readonly 163 prop_name: "bluetooth.profile.asha.central.enabled" 164} 165 166# Whether the Audio/Video Remote Control Profile (AVRCP) Controller role is enabled on this device. 167# Set by vendors overlay, read at Bluetooth initialization 168prop { 169 api_name: "isProfileAvrcpControllerEnabled" 170 type: Boolean 171 scope: Public 172 access: Readonly 173 prop_name: "bluetooth.profile.avrcp.controller.enabled" 174} 175 176# Whether the Audio/Video Remote Control Profile (AVRCP) Target role is enabled on this device. 177# Set by vendors overlay, read at Bluetooth initialization 178prop { 179 api_name: "isProfileAvrcpTargetEnabled" 180 type: Boolean 181 scope: Public 182 access: Readonly 183 prop_name: "bluetooth.profile.avrcp.target.enabled" 184} 185 186# Whether the Basic Audio Profile (BAP) broadcast assist role is enabled on this device. 187# Set by vendors overlay, read at Bluetooth initialization 188prop { 189 api_name: "isProfileBapBroadcastAssistEnabled" 190 type: Boolean 191 scope: Public 192 access: Readonly 193 prop_name: "bluetooth.profile.bap.broadcast.assist.enabled" 194} 195 196# Whether the Basic Audio Profile (BAP) broadcast source role is enabled on this device. 197# Set by vendors overlay, read at Bluetooth initialization 198prop { 199 api_name: "isProfileBapBroadcastSourceEnabled" 200 type: Boolean 201 scope: Public 202 access: Readonly 203 prop_name: "bluetooth.profile.bap.broadcast.source.enabled" 204} 205 206# Whether the Basic Audio Profile (BAP) unicast client role is enabled on this device. 207# Set by vendors overlay, read at Bluetooth initialization 208prop { 209 api_name: "isProfileBapUnicastClientEnabled" 210 type: Boolean 211 scope: Public 212 access: Readonly 213 prop_name: "bluetooth.profile.bap.unicast.client.enabled" 214} 215 216# Whether the Battery Service profile (BAS) client role is enabled on this device. 217# Set by vendors overlay, read at Bluetooth initialization 218prop { 219 api_name: "isProfileBasClientEnabled" 220 type: Boolean 221 scope: Public 222 access: Readonly 223 prop_name: "bluetooth.profile.bas.client.enabled" 224} 225 226# Whether the Broadcast Audio Scan Service profile (BASS) client role is enabled on this device. 227# Set by vendors overlay, read at Bluetooth initialization 228prop { 229 api_name: "isProfileBassClientEnabled" 230 type: Boolean 231 scope: Public 232 access: Readonly 233 prop_name: "bluetooth.profile.bass.client.enabled" 234} 235 236# Whether the Coordinated Set Indentification Profile (CSIP) set coordinator role is enabled on this 237# device. Set by vendors overlay, read at Bluetooth initialization 238prop { 239 api_name: "isProfileCsipSetCoordinatorEnabled" 240 type: Boolean 241 scope: Public 242 access: Readonly 243 prop_name: "bluetooth.profile.csip.set_coordinator.enabled" 244} 245 246# Whether the Generic Attribute Profile (GATT) is enabled on this device. 247# Set by vendors overlay, read at Bluetooth initialization 248prop { 249 api_name: "isProfileGattEnabled" 250 type: Boolean 251 scope: Public 252 access: Readonly 253 prop_name: "bluetooth.profile.gatt.enabled" 254} 255 256# Whether the Hearing Aid Profile (HAP) client role is enabled on this device. 257# Set by vendors overlay, read at Bluetooth initialization 258prop { 259 api_name: "isProfileHapClientEnabled" 260 type: Boolean 261 scope: Public 262 access: Readonly 263 prop_name: "bluetooth.profile.hap.client.enabled" 264} 265 266# Whether the Hands-Free Profile (HFP) Audio Gateway role is enabled on this device. 267# Set by vendors overlay, read at Bluetooth initialization 268prop { 269 api_name: "isProfileHfpAgEnabled" 270 type: Boolean 271 scope: Public 272 access: Readonly 273 prop_name: "bluetooth.profile.hfp.ag.enabled" 274} 275 276# Whether the Hands-Free Profile (HFP) Hands-free role is enabled on this device. 277# Set by vendors overlay, read at Bluetooth initialization 278prop { 279 api_name: "isProfileHfpHfEnabled" 280 type: Boolean 281 scope: Public 282 access: Readonly 283 prop_name: "bluetooth.profile.hfp.hf.enabled" 284} 285 286# Whether the Human Interface Device Profile (HID) device role is enabled on this device. 287# Set by vendors overlay, read at Bluetooth initialization 288prop { 289 api_name: "isProfileHidDeviceEnabled" 290 type: Boolean 291 scope: Public 292 access: Readonly 293 prop_name: "bluetooth.profile.hid.device.enabled" 294} 295 296# Whether the Human Interface Device Profile (HID) host role is enabled on this device. 297# Set by vendors overlay, read at Bluetooth initialization 298prop { 299 api_name: "isProfileHidHostEnabled" 300 type: Boolean 301 scope: Public 302 access: Readonly 303 prop_name: "bluetooth.profile.hid.host.enabled" 304} 305 306# Whether the Message Access Profile (MAP) Client role is enabled on this device. 307# Set by vendors overlay, read at Bluetooth initialization 308prop { 309 api_name: "isProfileMapClientEnabled" 310 type: Boolean 311 scope: Public 312 access: Readonly 313 prop_name: "bluetooth.profile.map.client.enabled" 314} 315 316# Whether the Message Access Profile (MAP) Server role is enabled on this device. 317# Set by vendors overlay, read at Bluetooth initialization 318prop { 319 api_name: "isProfileMapServerEnabled" 320 type: Boolean 321 scope: Public 322 access: Readonly 323 prop_name: "bluetooth.profile.map.server.enabled" 324} 325 326# Whether the Media Control Profile (MCP) server role is enabled on this device. 327# Set by vendors overlay, read at Bluetooth initialization 328prop { 329 api_name: "isProfileMcpServerEnabled" 330 type: Boolean 331 scope: Public 332 access: Readonly 333 prop_name: "bluetooth.profile.mcp.server.enabled" 334} 335 336# Whether the Object Push Profile (OPP) is enabled on this device. The implementation of OPP 337# supports both client and server roles. Set by vendors overlay, read at Bluetooth initialization 338prop { 339 api_name: "isProfileOppEnabled" 340 type: Boolean 341 scope: Public 342 access: Readonly 343 prop_name: "bluetooth.profile.opp.enabled" 344} 345 346# Whether the Personal Area Networking Profile (PAN) NAP role is enabled on this device. 347# Set by vendors overlay, read at Bluetooth initialization 348prop { 349 api_name: "isProfilePanNapEnabled" 350 type: Boolean 351 scope: Public 352 access: Readonly 353 prop_name: "bluetooth.profile.pan.nap.enabled" 354} 355 356# Whether the Personal Area Networking Profile (PAN) PANU role is enabled on this device. 357# Set by vendors overlay, read at Bluetooth initialization 358prop { 359 api_name: "isProfilePanPanuEnabled" 360 type: Boolean 361 scope: Public 362 access: Readonly 363 prop_name: "bluetooth.profile.pan.panu.enabled" 364} 365 366# Whether the Phonebook Access Profile (PBAP) client role is enabled on this device. 367# Set by vendors overlay, read at Bluetooth initialization 368prop { 369 api_name: "isProfilePbapClientEnabled" 370 type: Boolean 371 scope: Public 372 access: Readonly 373 prop_name: "bluetooth.profile.pbap.client.enabled" 374} 375 376# Whether the Phonebook Access Profile (PBAP) server role is enabled on this device. 377# Set by vendors overlay, read at Bluetooth initialization 378prop { 379 api_name: "isProfilePbapServerEnabled" 380 type: Boolean 381 scope: Public 382 access: Readonly 383 prop_name: "bluetooth.profile.pbap.server.enabled" 384} 385 386# Whether the SIM Access Profile (SAP) server is enabled on this device. 387# Set by vendors overlay, read at Bluetooth initialization 388prop { 389 api_name: "isProfileSapServerEnabled" 390 type: Boolean 391 scope: Public 392 access: Readonly 393 prop_name: "bluetooth.profile.sap.server.enabled" 394} 395 396# Whether the Call Control Profile (CCP) server role is enabled on this device. 397# Set by vendors overlay, read at Bluetooth initialization 398prop { 399 api_name: "isProfileCcpServerEnabled" 400 type: Boolean 401 scope: Public 402 access: Readonly 403 prop_name: "bluetooth.profile.ccp.server.enabled" 404} 405 406# Whether the Volume Control Profile (VCP) controller role is enabled on this device. 407# Set by vendors overlay, read at Bluetooth initialization 408prop { 409 api_name: "isProfileVcpControllerEnabled" 410 type: Boolean 411 scope: Public 412 access: Readonly 413 prop_name: "bluetooth.profile.vcp.controller.enabled" 414} 415