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 17SHIPPING_API_LEVEL := 34 18 19ifdef RELEASE_GOOGLE_COMET_RADIO_DIR 20RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_COMET_RADIO_DIR) 21endif 22ifdef RELEASE_GOOGLE_COMET_RADIOCFG_DIR 23RELEASE_GOOGLE_PRODUCT_RADIOCFG_DIR := $(RELEASE_GOOGLE_COMET_RADIOCFG_DIR) 24endif 25RELEASE_GOOGLE_BOOTLOADER_COMET_DIR ?= 24D1# Keep this for pdk TODO: b/327119000 26RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/$(RELEASE_GOOGLE_BOOTLOADER_COMET_DIR) 27$(call soong_config_set,comet_bootloader,prebuilt_dir,$(RELEASE_GOOGLE_BOOTLOADER_COMET_DIR)) 28 29ifdef RELEASE_KERNEL_COMET_VERSION 30TARGET_LINUX_KERNEL_VERSION := $(RELEASE_KERNEL_COMET_VERSION) 31else 32TARGET_LINUX_KERNEL_VERSION ?= 6.1 33endif 34 35ifdef RELEASE_KERNEL_COMET_DIR 36TARGET_KERNEL_DIR ?= $(RELEASE_KERNEL_COMET_DIR) 37TARGET_BOARD_KERNEL_HEADERS ?= $(RELEASE_KERNEL_COMET_DIR)/kernel-headers 38else 39TARGET_KERNEL_DIR ?= device/google/comet-kernels/6.1/24D1 40TARGET_BOARD_KERNEL_HEADERS ?= device/google/comet-kernels/6.1/24D1/kernel-headers 41endif 42 43TARGET_RECOVERY_DEFAULT_ROTATION := ROTATION_RIGHT 44 45LOCAL_PATH := device/google/comet 46 47ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 48 USE_UWBFIELDTESTQM := true 49endif 50ifeq ($(filter factory_comet, $(TARGET_PRODUCT)),) 51 include device/google/comet/uwb/uwb_calibration.mk 52endif 53 54$(call inherit-product-if-exists, vendor/google_devices/comet/prebuilts/device-vendor-comet.mk) 55$(call inherit-product-if-exists, vendor/google_devices/zumapro/prebuilts/device-vendor.mk) 56$(call inherit-product-if-exists, vendor/google_devices/zumapro/proprietary/device-vendor.mk) 57$(call inherit-product-if-exists, vendor/google_devices/comet/proprietary/device-vendor.mk) 58$(call inherit-product-if-exists, vendor/google_devices/comet/proprietary/comet/device-vendor-comet.mk) 59$(call inherit-product-if-exists, vendor/qorvo/uwb/qm35-hal/Device.mk) 60 61ifeq ($(filter factory_comet, $(TARGET_PRODUCT)),) 62 $(call inherit-product-if-exists, vendor/google_devices/comet/proprietary/WallpapersComet.mk) 63endif 64 65DEVICE_PACKAGE_OVERLAYS += device/google/comet/comet/overlay 66 67ifeq ($(RELEASE_PIXEL_AIDL_AUDIO_HAL),true) 68USE_AUDIO_HAL_AIDL := true 69endif 70 71include device/google/comet/audio/comet/audio-tables.mk 72include device/google/zumapro/device-shipping-common.mk 73include device/google/gs-common/bcmbt/bluetooth.mk 74include device/google/gs-common/touch/gti/predump_gti_dual.mk 75include device/google/gs-common/display/dump_second_display.mk 76include device/google/gs-common/gril/hidl/1.7/gril_hidl.mk 77 78# Increment the SVN for any official public releases 79ifdef RELEASE_SVN_COMET 80TARGET_SVN ?= $(RELEASE_SVN_COMET) 81else 82# Set this for older releases that don't use build flag 83TARGET_SVN ?= 04 84endif 85 86PRODUCT_VENDOR_PROPERTIES += \ 87 ro.vendor.build.svn=$(TARGET_SVN) 88 89# Set device family property for SMR 90PRODUCT_PROPERTY_OVERRIDES += \ 91 ro.build.device_family=CT3 92 93# Set build properties for SMR builds 94ifeq ($(RELEASE_IS_SMR), true) 95 ifneq (,$(RELEASE_BASE_OS_COMET)) 96 PRODUCT_BASE_OS := $(RELEASE_BASE_OS_COMET) 97 endif 98endif 99 100# Set build properties for EMR builds 101ifeq ($(RELEASE_IS_EMR), true) 102 ifneq (,$(RELEASE_BASE_OS_COMET)) 103 PRODUCT_PROPERTY_OVERRIDES += \ 104 ro.build.version.emergency_base_os=$(RELEASE_BASE_OS_COMET) 105 endif 106endif 107 108# go/lyric-soong-variables 109$(call soong_config_set,lyric,camera_hardware,comet) 110$(call soong_config_set,lyric,tuning_product,comet) 111$(call soong_config_set,google3a_config,target_device,comet) 112 113PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.ignore_hdr_camera_layers=true 114 115# Init files 116PRODUCT_COPY_FILES += \ 117 device/google/comet/conf/init.comet.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.comet.rc 118 119# Recovery files 120PRODUCT_COPY_FILES += \ 121 device/google/comet/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.comet.rc 122 123# Display brightness curve 124PRODUCT_COPY_FILES += \ 125 device/google/comet/comet/panel_config_google-ct3a_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/panel_config_google-ct3a_cal0.pb \ 126 device/google/comet/comet/panel_config_google-ct3b_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/panel_config_google-ct3b_cal0.pb \ 127 device/google/comet/comet/panel_config_google-ct3c_cal1.pb:$(TARGET_COPY_OUT_VENDOR)/etc/panel_config_google-ct3c_cal1.pb \ 128 device/google/comet/comet/panel_config_google-ct3d_cal1.pb:$(TARGET_COPY_OUT_VENDOR)/etc/panel_config_google-ct3d_cal1.pb \ 129 device/google/comet/comet/panel_config_google-ct3e_cal1.pb:$(TARGET_COPY_OUT_VENDOR)/etc/panel_config_google-ct3e_cal1.pb 130 131ifeq ($(filter factory_comet, $(TARGET_PRODUCT)),) 132PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.vendor.primarydisplay.xrr.version=2.1 133PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.vendor.primarydisplay.blocking_zone.min_refresh_rate_by_nits=20:120,30:60,:1 134PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.vendor.primarydisplay.vrr.expected_present.headsup_ns=30000000 135PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.vendor.primarydisplay.vrr.expected_present.timeout_ns=500000000 136endif 137 138PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.vendor.primarydisplay.powerstats.entity_name=Inner-Display 139 140PRODUCT_VENDOR_PROPERTIES += \ 141 vendor.primarydisplay.op.hs_hz=120 \ 142 vendor.primarydisplay.op.ns_hz=120 143 144PRODUCT_PROPERTY_OVERRIDES += \ 145 vendor.camera.debug.enable_software_post_sharpen_node=false 146 147# Display Config 148PRODUCT_PROPERTY_OVERRIDES += \ 149 vendor.display.png.premultiplied=true 150 151# Coex Config 152PRODUCT_SOONG_NAMESPACES += device/google/comet/radio/coex 153PRODUCT_PACKAGES += \ 154 display_secondary_mipi_coex_table \ 155 camera_front_inner_mipi_coex_table \ 156 camera_front_outer_mipi_coex_table \ 157 camera_rear_tele_mipi_coex_table \ 158 camera_rear_wide_mipi_coex_table 159 160# NFC 161PRODUCT_COPY_FILES += \ 162 frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \ 163 frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \ 164 frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \ 165 frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \ 166 frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \ 167 device/google/comet/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \ 168 device/google/comet/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf 169 170PRODUCT_PACKAGES += \ 171 $(RELEASE_PACKAGE_NFC_STACK) \ 172 Tag \ 173 android.hardware.nfc-service.st \ 174 NfcOverlayComet 175 176# SecureElement 177PRODUCT_PACKAGES += \ 178 android.hardware.secure_element-service.thales 179 180PRODUCT_COPY_FILES += \ 181 frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \ 182 frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \ 183 device/google/comet/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf 184 185#Thermal VT estimator 186PRODUCT_PACKAGES += \ 187 libthermal_tflite_wrapper 188 189# Thermal Config 190ifeq (,$(TARGET_VENDOR_THERMAL_CONFIG_PATH)) 191TARGET_VENDOR_THERMAL_CONFIG_PATH := device/google/comet/thermal 192endif 193 194PRODUCT_COPY_FILES += \ 195 $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/thermal_info_config_charge_comet.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_charge.json \ 196 $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/thermal_info_config_comet.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json \ 197 $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/thermal_info_config_backup_comet.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_backup.json \ 198 $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/vt_estimation_model_comet.tflite:$(TARGET_COPY_OUT_VENDOR)/etc/vt_estimation_model.tflite \ 199 $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/vt_speaker_estimation_model_comet.tflite:$(TARGET_COPY_OUT_VENDOR)/etc/vt_speaker_estimation_model.tflite \ 200 201ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 202 PRODUCT_COPY_FILES += \ 203 $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/thermal_info_config_comet_wingboard.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_wingboard.json 204endif 205 206PRODUCT_PACKAGES += \ 207 init_thermal_config 208 209# Power HAL config 210PRODUCT_COPY_FILES += \ 211 device/google/comet/powerhint-comet.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json 212 213# Bluetooth HAL 214PRODUCT_COPY_FILES += \ 215 device/google/comet/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf 216PRODUCT_PROPERTY_OVERRIDES += \ 217 ro.bluetooth.a2dp_offload.supported=true \ 218 persist.bluetooth.a2dp_offload.disabled=false \ 219 persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac 220 221# Bluetooth Tx power caps 222PRODUCT_COPY_FILES += \ 223 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_comet.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \ 224 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_comet_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv \ 225 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_comet_CA.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_CA.csv \ 226 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_comet_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_EU.csv \ 227 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_comet_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_US.csv 228 229# DCK properties based on target 230PRODUCT_PROPERTY_OVERRIDES += \ 231 ro.gms.dck.eligible_wcc=3 \ 232 ro.gms.dck.se_capability=1 233 234# Bluetooth hci_inject test tool 235PRODUCT_PACKAGES_DEBUG += \ 236 hci_inject 237 238# Bluetooth SAR test tool 239PRODUCT_PACKAGES_DEBUG += \ 240 sar_test 241 242# Bluetooth EWP test tool 243PRODUCT_PACKAGES_DEBUG += \ 244 ewp_tool 245 246# Bluetotoh Auto On feature 247PRODUCT_PRODUCT_PROPERTIES +=\ 248 bluetooth.server.automatic_turn_on=true 249 250# Bluetooth AAC VBR 251PRODUCT_PRODUCT_PROPERTIES += \ 252 persist.bluetooth.a2dp_aac.vbr_supported=true 253 254# Bluetooth Super Wide Band 255PRODUCT_PRODUCT_PROPERTIES += \ 256 bluetooth.hfp.swb.supported=true 257 258# Override BQR mask to enable LE Audio Choppy report, remove BTRT logging 259ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 260PRODUCT_PRODUCT_PROPERTIES += \ 261 persist.bluetooth.bqr.event_mask=295006 \ 262 persist.bluetooth.bqr.vnd_quality_mask=29 \ 263 persist.bluetooth.bqr.vnd_trace_mask=0 \ 264 persist.bluetooth.vendor.btsnoop=true 265else 266PRODUCT_PRODUCT_PROPERTIES += \ 267 persist.bluetooth.bqr.event_mask=295006 \ 268 persist.bluetooth.bqr.vnd_quality_mask=16 \ 269 persist.bluetooth.bqr.vnd_trace_mask=0 \ 270 persist.bluetooth.vendor.btsnoop=false 271endif 272 273# Support LE & Classic concurrent encryption (b/330704060) 274PRODUCT_PRODUCT_PROPERTIES += \ 275 bluetooth.ble.allow_enc_with_bredr=true 276 277# POF 278PRODUCT_PRODUCT_PROPERTIES += \ 279 ro.bluetooth.finder.supported=true 280 281# Spatial Audio 282PRODUCT_PACKAGES += \ 283 libspatialaudio \ 284 librondo 285 286# declare use of spatial audio 287PRODUCT_PROPERTY_OVERRIDES += \ 288 ro.audio.spatializer_enabled=true \ 289 ro.audio.spatializer_transaural_enabled_default=false \ 290 persist.vendor.audio.spatializer.speaker_enabled=true 291 292ifneq ($(USE_AUDIO_HAL_AIDL),true) 293# HIDL Sound Dose 294PRODUCT_PACKAGES += \ 295 android.hardware.audio.sounddose-vendor-impl \ 296 audio_sounddose_aoc 297endif 298 299# Audio CCA property 300PRODUCT_PROPERTY_OVERRIDES += \ 301 persist.vendor.audio.cca.enabled=false 302 303# HdMic Audio 304PRODUCT_SOONG_NAMESPACES += device/google/comet/audio/comet/prebuilt/libspeechenhancer 305PRODUCT_PROPERTY_OVERRIDES += \ 306 persist.vendor.app.audio.gsenet.version=1 307PRODUCT_PACKAGES += \ 308 libspeechenhancer 309 310# Keymaster HAL 311#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= [email protected] 312 313# Gatekeeper HAL 314#LOCAL_GATEKEEPER_PRODUCT_PACKAGE ?= [email protected] 315 316 317# Gatekeeper 318# PRODUCT_PACKAGES += \ 319# [email protected] 320 321# Keymint replaces Keymaster 322# PRODUCT_PACKAGES += \ 323# android.hardware.security.keymint-service 324 325# Keymaster 326#PRODUCT_PACKAGES += \ 327# [email protected] \ 328# [email protected] 329 330#PRODUCT_PACKAGES += [email protected] 331#PRODUCT_PACKAGES += [email protected] 332#LOCAL_KEYMASTER_PRODUCT_PACKAGE := [email protected] 333#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= [email protected] 334 335# PRODUCT_PROPERTY_OVERRIDES += \ 336# ro.hardware.keystore_desede=true \ 337# ro.hardware.keystore=software \ 338# ro.hardware.gatekeeper=software 339 340# PowerStats HAL 341PRODUCT_SOONG_NAMESPACES += \ 342 device/google/comet/powerstats/comet 343 344# UWB Overlay 345PRODUCT_PACKAGES += \ 346 UwbOverlayCT3 347 348# WiFi Overlay 349PRODUCT_PACKAGES += \ 350 WifiOverlay2024Mid_CT3 \ 351 PixelWifiOverlay2024 352 353# GRil Overlay 354PRODUCT_PACKAGES += \ 355 GRilServiceOverlay_CT3 356 357# Settings Overlay 358PRODUCT_PACKAGES += \ 359 SettingsCometOverlay 360 361# Graphics 362PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.set_idle_timer_ms_4619827677550801152=80 363PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.support_kernel_idle_timer_4619827677550801152=true 364PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.set_idle_timer_ms_4619827677550801153=1000 365PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.support_kernel_idle_timer_4619827677550801153=false 366 367# Trusty liboemcrypto.so 368PRODUCT_SOONG_NAMESPACES += vendor/google_devices/comet/prebuilts 369 370# UWB 371PRODUCT_SOONG_NAMESPACES += \ 372 device/google/comet/uwb 373 374# Location 375PRODUCT_SOONG_NAMESPACES += device/google/comet/location 376# For GPS property 377PRODUCT_VENDOR_PROPERTIES += ro.vendor.gps.pps.enabled=true 378$(call soong_config_set, gpssdk, buildtype, $(TARGET_BUILD_VARIANT)) 379PRODUCT_PACKAGES += gps.cfg 380 381# Display 382PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 383 vendor.display.lbe.supported=1 \ 384 vendor.display.async_off.supported=true 385 386# Install product specific framework compatibility matrix 387DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/comet/device_framework_matrix_product.xml 388 389 390PRODUCT_VENDOR_PROPERTIES += \ 391 persist.device_config.configuration.disable_rescue_party=true 392 393PRODUCT_VENDOR_PROPERTIES += \ 394 persist.vendor.udfps.als_feed_forward_supported=true \ 395 persist.vendor.udfps.lhbm_controlled_in_hal_supported=true 396 397# Allow external binning setting 398PRODUCT_VENDOR_PROPERTIES += \ 399 persist.vendor.camera.allow_external_binning_setting=true 400 401# Camera Vendor property 402PRODUCT_VENDOR_PROPERTIES += \ 403 persist.vendor.camera.front_720P_always_binning=true 404 405# Enable camera exif model/make reporting 406PRODUCT_VENDOR_PROPERTIES += \ 407 persist.vendor.camera.exif_reveal_make_model=true 408 409# Media Performance Class 14 410PRODUCT_PRODUCT_PROPERTIES += ro.odm.build.media_performance_class=34 411 412# OIS with system imu 413PRODUCT_VENDOR_PROPERTIES += \ 414 persist.vendor.camera.ois_with_system_imu=true 415 416# Haptics 417# Placeholders for updates later, need to update: 418# remove ro.vendor.vibrator.hal.dbc.enable (needed for setting pm.activetimeout) 419# remove pm.activetimeout 420# ro.vendor.vibrator.hal.loc.coeff.folded currently unused 421$(call soong_config_set,haptics,kernel_ver,v$(subst .,_,$(TARGET_LINUX_KERNEL_VERSION))) 422ACTUATOR_MODEL := luxshare_ict_081545 423ADAPTIVE_HAPTICS_FEATURE := adaptive_haptics_v1 424PRODUCT_VENDOR_PROPERTIES += \ 425 ro.vendor.vibrator.hal.chirp.enabled=1 \ 426 ro.vendor.vibrator.hal.device.mass=0.2605 \ 427 ro.vendor.vibrator.hal.loc.coeff.folded=3.15 \ 428 ro.vendor.vibrator.hal.loc.coeff=2.58 \ 429 ro.vendor.vibrator.hal.dbc.enable=1 \ 430 ro.vendor.vibrator.hal.pm.activetimeout=5 \ 431 persist.vendor.vibrator.hal.context.enable=false \ 432 persist.vendor.vibrator.hal.context.scale=60 \ 433 persist.vendor.vibrator.hal.context.fade=true \ 434 persist.vendor.vibrator.hal.context.cooldowntime=1600 \ 435 persist.vendor.vibrator.hal.context.settlingtime=5000 436 437# Override Output Distortion Gain 438PRODUCT_VENDOR_PROPERTIES += \ 439 vendor.audio.hapticgenerator.distortion.output.gain=0.45 440 441# Hinge angle sensor 442PRODUCT_COPY_FILES += \ 443 frameworks/native/data/etc/android.hardware.sensor.hinge_angle.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.hinge_angle.xml 444 445# Keyboard height ratio and bottom padding in dp for portrait mode 446PRODUCT_PRODUCT_PROPERTIES += \ 447 ro.com.google.ime.kb_pad_port_b=11.2 \ 448 ro.com.google.ime.height_ratio=1.18 449 450 451# Bluetooth LE Audio 452# Unicast 453PRODUCT_PRODUCT_PROPERTIES += \ 454 bluetooth.profile.bap.unicast.client.enabled=true \ 455 bluetooth.profile.csip.set_coordinator.enabled=true \ 456 bluetooth.profile.hap.client.enabled=true \ 457 bluetooth.profile.mcp.server.enabled=true \ 458 bluetooth.profile.ccp.server.enabled=true \ 459 bluetooth.profile.vcp.controller.enabled=true 460 461# Bluetooth LE Audio Broadcast 462PRODUCT_PRODUCT_PROPERTIES += \ 463 bluetooth.profile.bap.broadcast.assist.enabled=true \ 464 bluetooth.profile.bap.broadcast.source.enabled=true 465 466# LE Audio switcher in developer options 467PRODUCT_PRODUCT_PROPERTIES += \ 468 ro.bluetooth.leaudio_switcher.supported=true \ 469 470# Enable hardware offloading 471PRODUCT_PRODUCT_PROPERTIES += \ 472 ro.bluetooth.leaudio_offload.supported=true \ 473 persist.bluetooth.leaudio_offload.disabled=false 474 475# Bluetooth LE Audio CIS handover to SCO 476# Set the property only for the controller couldn't support CIS/SCO simultaneously. More detailed in 477# b/242908683. 478PRODUCT_PRODUCT_PROPERTIES += \ 479 persist.bluetooth.leaudio.notify.idle.during.call=true 480 481# LE Audio Offload Capabilities setting 482PRODUCT_COPY_FILES += \ 483 device/google/caimito/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml 484 485# Disable LE Audio dual mic SWB call support 486# This may depend on the BT controller capability or the launch strategy 487# For example, P22 BT chip is not able to support 32k dual mic 488# P23a disabled the 32k dual mic as it is not in the phase 2 launch plan 489PRODUCT_PRODUCT_PROPERTIES += \ 490 bluetooth.leaudio.dual_bidirection_swb.supported=true 491 492# LE Audio Unicast Allowlist 493PRODUCT_PRODUCT_PROPERTIES += \ 494 persist.bluetooth.leaudio.allow_list=SM-R510,WF-1000XM5,SM-R630 495 496SUPPORT_VENDOR_SATELLITE_SERVICE := true 497 498# Support NTN(satellite) with dual SIM 499NTN_DUAL_SIM := true 500 501# Telephony Satellite Feature 502PRODUCT_COPY_FILES += \ 503 frameworks/native/data/etc/android.hardware.telephony.satellite.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/android.hardware.telephony.satellite.xml 504 505# Battery Mitigation Config 506ifeq (,$(TARGET_VENDOR_BATTERY_MITIGATION_CONFIG_PATH)) 507TARGET_VENDOR_BATTERY_MITIGATION_CONFIG_PATH := device/google/comet/battery_mitigation 508endif 509 510PRODUCT_COPY_FILES += \ 511 $(TARGET_VENDOR_BATTERY_MITIGATION_CONFIG_PATH)/bm_config_comet.json:$(TARGET_COPY_OUT_VENDOR)/etc/bm_config.json 512 513# Exynos RIL and telephony 514# Support RIL Domain-selection 515SUPPORT_RIL_DOMAIN_SELECTION := true 516 517# ETM 518ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 519$(call inherit-product-if-exists, device/google/common/etm/device-userdebug-modules.mk) 520endif 521 522# Connectivity Resources Overlay for Thread host settings 523PRODUCT_PACKAGES += \ 524 ConnectivityResourcesOverlayCometOverride 525 526# Thread Dispatcher enablement in Bluetooth HAL 527PRODUCT_PRODUCT_PROPERTIES += \ 528 persist.bluetooth.thread_dispatcher.enabled=false 529 530# Camera concurrent foldable dual front feature support 531PRODUCT_PACKAGES += \ 532 concurrent_foldable_dual_front_xml 533 534# Bluetooth device id 535# Comet: 0x4113 536PRODUCT_PRODUCT_PROPERTIES += \ 537 bluetooth.device_id.product_id=16659 538 539# Set support for LEA multicodec 540PRODUCT_PRODUCT_PROPERTIES +=\ 541 bluetooth.core.le_audio.codec_extension_aidl.enabled=true 542 543# LE Audio configuration scenarios 544PRODUCT_COPY_FILES += \ 545 device/google/comet/bluetooth/audio_set_scenarios.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_scenarios.json 546 547PRODUCT_COPY_FILES += \ 548 device/google/comet/bluetooth/audio_set_configurations.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_configurations.json 549 550# Enable APF by default 551PRODUCT_VENDOR_PROPERTIES += \ 552 vendor.powerhal.apf_disabled=false \ 553 vendor.powerhal.apf_enabled=true 554