diff --git a/bluetooth/Android.bp b/bluetooth/Android.bp new file mode 100644 index 0000000..d9c3999 --- /dev/null +++ b/bluetooth/Android.bp @@ -0,0 +1,27 @@ +// +// Copyright (C) 2024 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. + +soong_namespace { +} + +package { + default_applicable_licenses: ["device_google_tegu_license"], +} + +prebuilt_etc { + name: "le_audio_codec_capabilities.xml", + vendor: true, + src: "le_audio_codec_capabilities.xml", +} diff --git a/bluetooth/bt_vendor_overlay.conf b/bluetooth/bt_vendor_overlay.conf index dd9f118..0b40854 100644 --- a/bluetooth/bt_vendor_overlay.conf +++ b/bluetooth/bt_vendor_overlay.conf @@ -3,20 +3,22 @@ # Uart port name UartPort = /dev/ttySAC18 -# Userial type -# UserialType = 2 +# Priority of uart type +# HciUartSocket = 0 +# SerialUartPort = 1 +# SerialAocUartPort = 2 +# UserialInvalid = 3 +UserialTypePriority = 1 -# Enable check whether let aoc controls power pin -AocPowerPinCtrlCheckEnable = true +# The hardware support which offload capability +BtOffloadCap = AOC + +# The BT Offload Trunk Flag Group Name +BtOffloadTrunkGroup = 25M_AOC # Sar backOff high resolution support SarBackOffHighResolution = true -# Update BQR Event Mask property value -BqrEventMaskValueUpdate = 262238 - -BtA2dpOffloadCap = sbc-aac-aptx-aptxhd-ldac-opus - -BtOpusEnabled = true - AccelBtDisable = false + +BtHalRecoveryByRestart = true diff --git a/bluetooth/bt_vendor_overlay_tegu.conf b/bluetooth/bt_vendor_overlay_tegu.conf deleted file mode 100644 index fd5d4ed..0000000 --- a/bluetooth/bt_vendor_overlay_tegu.conf +++ /dev/null @@ -1,12 +0,0 @@ -# This is BTBCM HAL overlay configuration file. - -# Uart port name -UartPort = /dev/ttySAC18 - -# Userial type -# UserialType = 2 - -# Sar backOff high resolution support -SarBackOffHighResolution = true - -AccelBtDisable = false diff --git a/device-tegu.mk b/device-tegu.mk index 78d2e25..72bdc8e 100644 --- a/device-tegu.mk +++ b/device-tegu.mk @@ -84,12 +84,16 @@ PRODUCT_COPY_FILES += \ # Bluetooth HAL PRODUCT_COPY_FILES += \ - device/google/tegu/bluetooth/bt_vendor_overlay_tegu.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf + device/google/tegu/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf PRODUCT_PROPERTY_OVERRIDES += \ ro.bluetooth.a2dp_offload.supported=true \ persist.bluetooth.a2dp_offload.disabled=false \ persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac +# POF +PRODUCT_PRODUCT_PROPERTIES += \ + ro.bluetooth.finder.supported=true + # Bluetooth hci_inject test tool PRODUCT_PACKAGES_DEBUG += \ hci_inject @@ -106,20 +110,9 @@ PRODUCT_PACKAGES_DEBUG += \ PRODUCT_PRODUCT_PROPERTIES += \ persist.bluetooth.a2dp_aac.vbr_supported=true -# Override BQR mask to enable LE Audio Choppy report, remove BTRT logging -ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) +# Bluetooth Super Wide Band PRODUCT_PRODUCT_PROPERTIES += \ - persist.bluetooth.bqr.event_mask=295006 \ - persist.bluetooth.bqr.vnd_quality_mask=29 \ - persist.bluetooth.bqr.vnd_trace_mask=0 \ - persist.bluetooth.vendor.btsnoop=true -else -PRODUCT_PRODUCT_PROPERTIES += \ - persist.bluetooth.bqr.event_mask=295006 \ - persist.bluetooth.bqr.vnd_quality_mask=16 \ - persist.bluetooth.bqr.vnd_trace_mask=0 \ - persist.bluetooth.vendor.btsnoop=false -endif + bluetooth.hfp.swb.supported=true # default BDADDR for EVB only PRODUCT_PROPERTY_OVERRIDES += \ @@ -150,9 +143,53 @@ PRODUCT_PRODUCT_PROPERTIES += \ ro.bluetooth.leaudio_offload.supported=true \ persist.bluetooth.leaudio_offload.disabled=false \ +# Include Bluetooth soong namespace +PRODUCT_SOONG_NAMESPACES += \ + device/google/tegu/bluetooth + # Bluetooth LE Auido offload capabilities setting -PRODUCT_COPY_FILES += \ - device/google/tegu/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml +PRODUCT_PACKAGES += \ + le_audio_codec_capabilities.xml + +# LE Audio Lunch Config for Phase 1 (LE audio toggle hidden by default) +PRODUCT_PRODUCT_PROPERTIES += \ + persist.bluetooth.leaudio.toggle_visible=false + +# LE Audio use classic connection by default +PRODUCT_PRODUCT_PROPERTIES += \ + ro.bluetooth.leaudio.le_audio_connection_by_default=false + +# Bluetooth LE Audio CIS handover to SCO +# Set the property only for the controller couldn't support CIS/SCO simultaneously. More detailed in b/242908683. +PRODUCT_PRODUCT_PROPERTIES += \ + persist.bluetooth.leaudio.notify.idle.during.call=true + +# Bluetooth LE Audio enable dual mic SWB call +PRODUCT_PRODUCT_PROPERTIES += \ + bluetooth.leaudio.dual_bidirection_swb.supported=true + +# LE Audio Unicast Allowlist +PRODUCT_PRODUCT_PROPERTIES += \ + persist.bluetooth.leaudio.allow_list=SM-R510 + +# Override BQR mask to enable LE Audio Choppy report, remove BTRT logging +ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) +PRODUCT_PRODUCT_PROPERTIES += \ + persist.bluetooth.bqr.event_mask=295006 \ + persist.bluetooth.bqr.vnd_quality_mask=29 \ + persist.bluetooth.bqr.vnd_trace_mask=0 \ + persist.bluetooth.vendor.btsnoop=true +else +PRODUCT_PRODUCT_PROPERTIES += \ + persist.bluetooth.bqr.event_mask=295006 \ + persist.bluetooth.bqr.vnd_quality_mask=16 \ + persist.bluetooth.bqr.vnd_trace_mask=0 \ + persist.bluetooth.vendor.btsnoop=false +endif + +# Enable Bluetooth AutoOn feature +PRODUCT_PRODUCT_PROPERTIES += \ + bluetooth.server.automatic_turn_on=true # Keymaster HAL #LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service