# 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. module: "android.sysprop.BluetoothProperties" owner: Platform prop { api_name: "snoop_default_mode" type: Enum scope: Public access: ReadWrite enum_values: "empty|disabled|filtered|full" prop_name: "persist.bluetooth.btsnoopdefaultmode" } prop { api_name: "snoop_log_mode" type: Enum scope: Public access: ReadWrite enum_values: "empty|disabled|filtered|full" prop_name: "persist.bluetooth.btsnooplogmode" } prop { api_name: "factory_reset" type: Boolean scope: Public access: ReadWrite prop_name: "persist.bluetooth.factoryreset" } ######## Bluetooth configurations # Whether GAP BLE Privacy (RPA) is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isGapLePrivacyEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.core.gap.le.privacy.enabled" } # The default name of the device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "getDefaultDeviceName" type: String scope: Public access: Readonly prop_name: "bluetooth.device.default_name" } # The default class of device of the device, represented as a list of exactly 3 unsigned integers. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "getClassOfDevice" type: UIntList scope: Public access: Readonly prop_name: "bluetooth.device.class_of_device" } # Bluetooth operating voltage in millivolts available for vendors overlay. # Used to calculate Bluetooth power consumption for a specific hardware. prop { api_name: "getHardwareOperatingVoltageMv" type: Integer scope: Public access: Readonly prop_name: "bluetooth.hardware.power.operating_voltage_mv" } # Bluetooth idle current in milliamps available for vendors overlay. # Used to calculate Bluetooth power consumption for a specific hardware. prop { api_name: "getHardwareIdleCurrentMa" type: Integer scope: Public access: Readonly prop_name: "bluetooth.hardware.power.idle_cur_ma" } # Bluetooth transmit current in milliamps available for vendors overlay. # Used to calculate Bluetooth power consumption for a specific hardware. prop { api_name: "getHardwareTxCurrentMa" type: Integer scope: Public access: Readonly prop_name: "bluetooth.hardware.power.tx_cur_ma" } # Bluetooth receive current in milliamps available for vendors overlay. # Used to calculate Bluetooth power consumption for a specific hardware. prop { api_name: "getHardwareRxCurrentMa" type: Integer scope: Public access: Readonly prop_name: "bluetooth.hardware.power.rx_cur_ma" } # Whether Bluetooth should keep its state after reboot. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isSupportPersistedStateEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.framework.support_persisted_state" } # Whether Bluetooth should keep its state after reboot. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isAdapterAddressValidationEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.framework.adapter_address_validation" } # Whether the Advanced Audio Distribution Profile (A2DP) Sink role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileA2dpSinkEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.a2dp.sink.enabled" } # Whether the Advanced Audio Distribution Profile (A2DP) Source role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileA2dpSourceEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.a2dp.source.enabled" } # Whether the Android defined Audio Support for Hearing Aids (ASHA) central role over is enabled on # this device. Set by vendors overlay, read at Bluetooth initialization. prop { api_name: "isProfileAshaCentralEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.asha.central.enabled" } # Whether the Audio/Video Remote Control Profile (AVRCP) Controller role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileAvrcpControllerEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.avrcp.controller.enabled" } # Whether the Audio/Video Remote Control Profile (AVRCP) Target role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileAvrcpTargetEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.avrcp.target.enabled" } # Whether the Basic Audio Profile (BAP) broadcast assist role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileBapBroadcastAssistEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.bap.broadcast.assist.enabled" } # Whether the Basic Audio Profile (BAP) broadcast source role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileBapBroadcastSourceEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.bap.broadcast.source.enabled" } # Whether the Basic Audio Profile (BAP) unicast client role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileBapUnicastClientEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.bap.unicast.client.enabled" } # Whether the Battery Service profile (BAS) client role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileBasClientEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.bas.client.enabled" } # Whether the Broadcast Audio Scan Service profile (BASS) client role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileBassClientEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.bass.client.enabled" } # Whether the Coordinated Set Indentification Profile (CSIP) set coordinator role is enabled on this # device. Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileCsipSetCoordinatorEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.csip.set_coordinator.enabled" } # Whether the Generic Attribute Profile (GATT) is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileGattEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.gatt.enabled" } # Whether the Hearing Aid Profile (HAP) client role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileHapClientEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.hap.client.enabled" } # Whether the Hands-Free Profile (HFP) Audio Gateway role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileHfpAgEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.hfp.ag.enabled" } # Whether the Hands-Free Profile (HFP) Hands-free role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileHfpHfEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.hfp.hf.enabled" } # Whether the Human Interface Device Profile (HID) device role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileHidDeviceEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.hid.device.enabled" } # Whether the Human Interface Device Profile (HID) host role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileHidHostEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.hid.host.enabled" } # Whether the Message Access Profile (MAP) Client role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileMapClientEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.map.client.enabled" } # Whether the Message Access Profile (MAP) Server role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileMapServerEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.map.server.enabled" } # Whether the Media Control Profile (MCP) server role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileMcpServerEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.mcp.server.enabled" } # Whether the Object Push Profile (OPP) is enabled on this device. The implementation of OPP # supports both client and server roles. Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileOppEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.opp.enabled" } # Whether the Personal Area Networking Profile (PAN) NAP role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfilePanNapEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.pan.nap.enabled" } # Whether the Personal Area Networking Profile (PAN) PANU role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfilePanPanuEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.pan.panu.enabled" } # Whether the Phonebook Access Profile (PBAP) client role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfilePbapClientEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.pbap.client.enabled" } # Whether the Phonebook Access Profile (PBAP) server role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfilePbapServerEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.pbap.server.enabled" } # Whether the SIM Access Profile (SAP) server is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileSapServerEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.sap.server.enabled" } # Whether the Call Control Profile (CCP) server role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileCcpServerEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.ccp.server.enabled" } # Whether the Volume Control Profile (VCP) controller role is enabled on this device. # Set by vendors overlay, read at Bluetooth initialization prop { api_name: "isProfileVcpControllerEnabled" type: Boolean scope: Public access: Readonly prop_name: "bluetooth.profile.vcp.controller.enabled" }