1# 2# Copyright (C) 2021 The Android Open-Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16 17# Bluetooth Services sysprop for A2DP AAC VBR and A2DP offloading 18PRODUCT_PRODUCT_PROPERTIES += \ 19 persist.bluetooth.a2dp_aac.vbr_supported=true \ 20 ro.bluetooth.a2dp_offload.supported=true \ 21 persist.bluetooth.a2dp_offload.disabled=false \ 22 persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac 23 24# Bluetooth LE Audio 25PRODUCT_PRODUCT_PROPERTIES += \ 26 ro.bluetooth.leaudio_switcher.supported=true \ 27 ro.bluetooth.leaudio_offload.supported=true \ 28 persist.bluetooth.leaudio_offload.disabled=false \ 29 ro.vendor.audio_hal.ble_use_stream_id=true \ 30 bluetooth.profile.bap.unicast.client.enabled?=true \ 31 bluetooth.profile.csip.set_coordinator.enabled?=true \ 32 bluetooth.profile.hap.client.enabled?=true \ 33 bluetooth.profile.mcp.server.enabled?=true \ 34 bluetooth.profile.ccp.server.enabled?=true \ 35 bluetooth.profile.vcp.controller.enabled?=true \ 36 37# Bluetooth LE Audio CIS handover to SCO 38# Set the property only if the controller doesn't support CIS and SCO 39# simultaneously. More details in b/242908683. 40PRODUCT_PRODUCT_PROPERTIES += \ 41 persist.bluetooth.leaudio.notify.idle.during.call=true 42 43# Not support LE Audio dual mic SWB call based on the current launch strategy 44PRODUCT_PRODUCT_PROPERTIES += \ 45 bluetooth.leaudio.dual_bidirection_swb.supported=false 46 47# LE Audio Lunch Config for Phase 1 (LE audio toggle hidden by default) 48PRODUCT_PRODUCT_PROPERTIES += \ 49 persist.bluetooth.leaudio.toggle_visible=false 50 51# LE Auido Offload Capabilities setting 52PRODUCT_COPY_FILES += \ 53 device/google/lynx/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml 54 55# LE Audio use classic connection by default 56PRODUCT_PRODUCT_PROPERTIES += \ 57 ro.bluetooth.leaudio.le_audio_connection_by_default=false 58 59# Bluetotoh Auto On feature 60PRODUCT_PRODUCT_PROPERTIES += \ 61 bluetooth.server.automatic_turn_on=true 62 63# Bluetooth HAL and Pixel extension 64DEVICE_MANIFEST_FILE += \ 65 device/google/lynx/bluetooth/manifest_bluetooth.xml 66DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/lynx/bluetooth/device_framework_matrix_product.xml 67 68BOARD_SEPOLICY_DIRS += device/google/lynx-sepolicy/bluetooth 69 70BOARD_HAVE_BLUETOOTH_QCOM = true 71BOARD_USES_COMMON_BLUETOOTH_HAL = true 72QCOM_BLUETOOTH_USING_DIAG = false 73TARGET_BLUETOOTH_HCI_V1_1 = true 74TARGET_BLUETOOTH_UART_DEVICE = "/dev/ttySAC18" 75UART_USE_TERMIOS_AFC = true 76TARGET_USE_QTI_BT_IBS = false 77TARGET_USE_QTI_BT_OBS = true 78TARGET_USE_QTI_BT_SAR_V1_1 = true 79TARGET_USE_QTI_BT_CHANNEL_AVOIDANCE = true 80TARGET_DROP_BYTES_BEFORE_SSR_DUMP = true 81 82# IBluetoothHci @1.1 / @1.0 83ifeq ($(TARGET_BLUETOOTH_HCI_V1_1),true) 84 PRODUCT_PACKAGES += android.hardware.bluetooth@1.1-impl-qti 85else 86 PRODUCT_PACKAGES += android.hardware.bluetooth@1.0-impl-qti 87endif 88# IBluetoothSar @1.1 / @1.0 89ifeq ($(TARGET_USE_QTI_BT_SAR_V1_1),true) 90 PRODUCT_PACKAGES += hardware.google.bluetooth.sar@1.1-impl 91else ifeq ($(TARGET_USE_QTI_BT_SAR),true) 92 PRODUCT_PACKAGES += hardware.google.bluetooth.sar@1.0-impl 93endif 94PRODUCT_PACKAGES += \ 95 android.hardware.bluetooth@1.0-service-qti \ 96 hardware.google.bluetooth.bt_channel_avoidance@1.0-impl \ 97 android.hardware.bluetooth.prebuilt.xml \ 98 android.hardware.bluetooth_le.prebuilt.xml 99 100# Bluetooth SAR Tx power caps 101PRODUCT_COPY_FILES += \ 102 device/google/lynx/bluetooth/bluetooth_power_limits_Lynx.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \ 103 device/google/lynx/bluetooth/bluetooth_power_limits_Lynx_G0DZQ_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G0DZQ_EU.csv \ 104 device/google/lynx/bluetooth/bluetooth_power_limits_Lynx_GHL1X_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GHL1X_EU.csv \ 105 device/google/lynx/bluetooth/bluetooth_power_limits_Lynx_G0DZQ_CA.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G0DZQ_CA.csv \ 106 device/google/lynx/bluetooth/bluetooth_power_limits_Lynx_G0DZQ_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G0DZQ_US.csv \ 107 device/google/lynx/bluetooth/bluetooth_power_limits_Lynx_GWKK3_CA.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GWKK3_cA.csv \ 108 device/google/lynx/bluetooth/bluetooth_power_limits_Lynx_GWKK3_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GWKK3_US.csv \ 109 device/google/lynx/bluetooth/bluetooth_power_limits_Lynx_G0DZQ_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G0DZQ_JP.csv \ 110 device/google/lynx/bluetooth/bluetooth_power_limits_Lynx_G82U8_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G82U8_JP.csv 111 112# Bluetooth SAR test tools 113ifneq (,$(filter true, $(TARGET_USE_QTI_BT_SAR_V1_1) $(TARGET_USE_QTI_BT_SAR))) 114 PRODUCT_PACKAGES_DEBUG += bluetooth_sar_test 115endif 116 117# Bluetooth (Vendor) SoC, BDA in device tree, and WiPower 118PRODUCT_PROPERTY_OVERRIDES += \ 119 vendor.qcom.bluetooth.soc=hastings \ 120 ro.vendor.bt.bdaddr_path=/proc/device-tree/chosen/config/bt_addr \ 121 ro.vendor.bluetooth.emb_wp_mode=false \ 122 ro.vendor.bluetooth.wipower=false 123 124ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 125PRODUCT_PROPERTY_OVERRIDES += \ 126 persist.vendor.service.bdroid.soclog=true \ 127 persist.vendor.service.bdroid.fwsnoop=true 128else 129PRODUCT_PROPERTY_OVERRIDES += \ 130 persist.vendor.service.bdroid.soclog=false \ 131 persist.vendor.service.bdroid.fwsnoop=false 132endif 133