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 17TARGET_KERNEL_DIR ?= device/google/pantah-kernel 18TARGET_BOARD_KERNEL_HEADERS := device/google/pantah-kernel/kernel-headers 19 20$(call inherit-product-if-exists, vendor/google_devices/pantah/prebuilts/device-vendor-panther.mk) 21$(call inherit-product-if-exists, vendor/google_devices/gs201/prebuilts/device-vendor.mk) 22$(call inherit-product-if-exists, vendor/google_devices/gs201/proprietary/device-vendor.mk) 23$(call inherit-product-if-exists, vendor/google_devices/pantah/proprietary/panther/device-vendor-panther.mk) 24$(call inherit-product-if-exists, vendor/google_devices/panther/proprietary/device-vendor.mk) 25$(call inherit-product-if-exists, vendor/google_devices/pantah/proprietary/WallpapersPanther.mk) 26 27DEVICE_PACKAGE_OVERLAYS += device/google/pantah/panther/overlay 28 29include device/google/pantah/audio/panther/audio-tables.mk 30include device/google/gs201/device-shipping-common.mk 31include hardware/google/pixel/vibrator/cs40l26/device.mk 32include device/google/gs101/bluetooth/bluetooth.mk 33 34DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/pantah/device_framework_matrix_product.xml 35# go/lyric-soong-variables 36$(call soong_config_set,lyric,camera_hardware,panther) 37$(call soong_config_set,lyric,tuning_product,panther) 38$(call soong_config_set,google3a_config,target_device,panther) 39 40# Init files 41PRODUCT_COPY_FILES += \ 42 device/google/pantah/conf/init.pantah.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.pantah.rc \ 43 device/google/pantah/conf/init.panther.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.panther.rc 44 45# Recovery files 46PRODUCT_COPY_FILES += \ 47 device/google/pantah/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.panther.rc 48 49# insmod files 50PRODUCT_COPY_FILES += \ 51 device/google/pantah/init.insmod.panther.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/init.insmod.panther.cfg 52 53# MIPI Coex Configs 54PRODUCT_COPY_FILES += \ 55 device/google/pantah/panther/radio/panther_display_primary_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/display_primary_mipi_coex_table.csv \ 56 device/google/pantah/panther/radio/panther_camera_front_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_front_mipi_coex_table.csv \ 57 device/google/pantah/panther/radio/panther_camera_rear_wide_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_rear_wide_mipi_coex_table.csv \ 58 device/google/pantah/panther/radio/panther_camera_front_dbr_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_front_dbr_coex_table.csv 59 60# Camera 61PRODUCT_COPY_FILES += \ 62 device/google/pantah/media_profiles_panther.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml 63 64# Media Performance Class 13 65PRODUCT_PROPERTY_OVERRIDES += ro.odm.build.media_performance_class=33 66 67# Display Config 68PRODUCT_COPY_FILES += \ 69 device/google/pantah/panther/display_colordata_dev_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_colordata_dev_cal0.pb \ 70 device/google/pantah/panther/display_golden_sdc-s6e3fc3-p10_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_golden_sdc-s6e3fc3-p10_cal0.pb 71 72# Display LBE 73PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.lbe.supported=1 74 75#config of primary display frames to reach LHBM peak brightness 76PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.primarydisplay.lhbm.frames_to_reach_peak_brightness=2 77 78# NFC 79PRODUCT_COPY_FILES += \ 80 frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \ 81 frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \ 82 frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \ 83 frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \ 84 frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \ 85 device/google/pantah/nfc/libnfc-hal-st-proto1.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st-proto1.conf \ 86 device/google/pantah/nfc/libnfc-nci-panther.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf 87 88ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 89PRODUCT_COPY_FILES += \ 90 device/google/pantah/nfc/libnfc-hal-st-debug.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf 91else 92PRODUCT_COPY_FILES += \ 93 device/google/pantah/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf 94endif 95 96PRODUCT_PACKAGES += \ 97 NfcNci \ 98 Tag \ 99 android.hardware.nfc-service.st 100 101# SecureElement 102PRODUCT_PACKAGES += \ 103 android.hardware.secure_element@1.2-service-gto \ 104 android.hardware.secure_element@1.2-service-gto-ese2 105 106PRODUCT_COPY_FILES += \ 107 frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \ 108 frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \ 109 device/google/pantah/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf \ 110 device/google/pantah/nfc/libse-gto-hal2.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal2.conf 111 112DEVICE_MANIFEST_FILE += \ 113 device/google/pantah/nfc/manifest_se.xml 114 115# Thermal Config 116PRODUCT_COPY_FILES += \ 117 device/google/pantah/thermal_info_config_panther.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json \ 118 device/google/pantah/thermal_info_config_charge_panther.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_charge.json \ 119 device/google/pantah/thermal_info_config_proto.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_proto.json 120 121# Power HAL config 122PRODUCT_COPY_FILES += \ 123 device/google/pantah/powerhint-panther.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json 124PRODUCT_COPY_FILES += \ 125 device/google/pantah/powerhint-panther-a0.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint-a0.json 126 127# Bluetooth HAL 128DEVICE_MANIFEST_FILE += \ 129 device/google/pantah/bluetooth/manifest_bluetooth.xml 130PRODUCT_SOONG_NAMESPACES += \ 131 vendor/broadcom/bluetooth 132PRODUCT_PACKAGES += \ 133 android.hardware.bluetooth@1.1-service.bcmbtlinux \ 134 bt_vendor.conf 135PRODUCT_COPY_FILES += \ 136 device/google/pantah/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf 137PRODUCT_PROPERTY_OVERRIDES += \ 138 ro.bluetooth.a2dp_offload.supported=true \ 139 persist.bluetooth.a2dp_offload.disabled=false \ 140 persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac-opus 141 142# Spatial Audio 143PRODUCT_PACKAGES += \ 144 libspatialaudio 145 146# Bluetooth hci_inject test tool 147PRODUCT_PACKAGES_DEBUG += \ 148 hci_inject 149 150# Bluetooth OPUS codec 151PRODUCT_PRODUCT_PROPERTIES += \ 152 persist.bluetooth.opus.enabled=true 153 154# Bluetooth Tx power caps 155PRODUCT_COPY_FILES += \ 156 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_panther.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \ 157 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_panther_G03Z5_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_G03Z5_JP.csv \ 158 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_panther_GVU6C_CA.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GVU6C_CA.csv \ 159 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_panther_GQML3_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GQML3_EU.csv \ 160 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_panther_GVU6C_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GVU6C_EU.csv \ 161 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_panther_GQML3_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GQML3_US.csv \ 162 $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_panther_GVU6C_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GVU6C_US.csv 163 164# Bluetooth SAR test tool 165PRODUCT_PACKAGES_DEBUG += \ 166 sar_test 167 168# declare use of spatial audio 169PRODUCT_PROPERTY_OVERRIDES += \ 170 ro.audio.spatializer_enabled=true 171 172# optimize spatializer effect 173PRODUCT_PROPERTY_OVERRIDES += \ 174 audio.spatializer.effect.util_clamp_min=300 175 176# Keymaster HAL 177#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service 178 179# Gatekeeper HAL 180#LOCAL_GATEKEEPER_PRODUCT_PACKAGE ?= android.hardware.gatekeeper@1.0-service.software 181 182 183# Gatekeeper 184# PRODUCT_PACKAGES += \ 185# android.hardware.gatekeeper@1.0-service.software 186 187# Keymint replaces Keymaster 188# PRODUCT_PACKAGES += \ 189# android.hardware.security.keymint-service 190 191# Keymaster 192#PRODUCT_PACKAGES += \ 193# android.hardware.keymaster@4.0-impl \ 194# android.hardware.keymaster@4.0-service 195 196#PRODUCT_PACKAGES += android.hardware.keymaster@4.0-service.remote 197#PRODUCT_PACKAGES += android.hardware.keymaster@4.1-service.remote 198#LOCAL_KEYMASTER_PRODUCT_PACKAGE := android.hardware.keymaster@4.1-service 199#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service 200 201# PRODUCT_PROPERTY_OVERRIDES += \ 202# ro.hardware.keystore_desede=true \ 203# ro.hardware.keystore=software \ 204# ro.hardware.gatekeeper=software 205 206# default BDADDR for EVB only 207PRODUCT_PROPERTY_OVERRIDES += \ 208 ro.vendor.bluetooth.evb_bdaddr="22:22:22:33:44:55" 209 210# PowerStats HAL 211PRODUCT_SOONG_NAMESPACES += \ 212 device/google/pantah/powerstats/panther \ 213 device/google/pantah 214 215# Fingerprint HAL 216GOODIX_CONFIG_BUILD_VERSION := g7_trusty 217include device/google/gs101/fingerprint/udfps_common.mk 218ifeq ($(filter factory%, $(TARGET_PRODUCT)),) 219include device/google/gs101/fingerprint/udfps_shipping.mk 220else 221include device/google/gs101/fingerprint/udfps_factory.mk 222endif 223 224# Display 225PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.set_idle_timer_ms=1500 226PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.ignore_hdr_camera_layers=true 227 228# WiFi Overlay 229PRODUCT_PACKAGES += \ 230 WifiOverlay2022_P10 231 232PRODUCT_SOONG_NAMESPACES += device/google/pantah/panther/ 233 234# Trusty liboemcrypto.so 235PRODUCT_SOONG_NAMESPACES += vendor/google_devices/pantah/prebuilts 236 237# Location 238ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 239 PRODUCT_COPY_FILES += \ 240 device/google/pantah/location/gps.xml.p10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml \ 241 device/google/pantah/location/lhd.conf.p10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \ 242 device/google/pantah/location/scd.conf.p10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf 243else 244 PRODUCT_COPY_FILES += \ 245 device/google/pantah/location/gps_user.xml.p10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml \ 246 device/google/pantah/location/lhd_user.conf.p10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \ 247 device/google/pantah/location/scd_user.conf.p10:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf 248endif 249 250# Set support one-handed mode 251PRODUCT_PRODUCT_PROPERTIES += \ 252 ro.support_one_handed_mode=true 253 254# Set zram size 255PRODUCT_VENDOR_PROPERTIES += \ 256 vendor.zram.size=3g 257 258# Increment the SVN for any official public releases 259PRODUCT_VENDOR_PROPERTIES += \ 260 ro.vendor.build.svn=25 261 262# DCK properties based on target 263PRODUCT_PROPERTY_OVERRIDES += \ 264 ro.gms.dck.eligible_wcc=2 265 266# Set support hide display cutout feature 267PRODUCT_PRODUCT_PROPERTIES += \ 268 ro.support_hide_display_cutout=true 269 270PRODUCT_PACKAGES += \ 271 NoCutoutOverlay \ 272 AvoidAppsInCutoutOverlay 273 274# SKU specific RROs 275PRODUCT_PACKAGES += \ 276 SettingsOverlayG03Z5 \ 277 SettingsOverlayGQML3 \ 278 SettingsOverlayGVU6C \ 279 SettingsOverlayGVU6C_VN 280 281# Bluetooth LE Audio 282PRODUCT_PRODUCT_PROPERTIES += \ 283 ro.bluetooth.leaudio_offload.supported=true \ 284 persist.bluetooth.leaudio_offload.disabled=false \ 285 ro.bluetooth.leaudio_switcher.supported=true 286 287# LE Auido Offload Capabilities setting 288PRODUCT_COPY_FILES += \ 289 device/google/pantah/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml 290 291# Bluetooth EWP test tool 292PRODUCT_PACKAGES_DEBUG += \ 293 ewp_tool 294 295# userdebug specific 296ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 297 PRODUCT_COPY_FILES += \ 298 device/google/gs201/init.hardware.wlc.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.wlc.rc 299endif 300 301# Fingerprint HAL 302PRODUCT_VENDOR_PROPERTIES += \ 303 persist.vendor.udfps.als_feed_forward_supported=true \ 304 persist.vendor.udfps.lhbm_controlled_in_hal_supported=true 305 306# Vibrator HAL 307PRODUCT_VENDOR_PROPERTIES += \ 308 ro.vendor.vibrator.hal.chirp.enabled=1 309 310PRODUCT_PRODUCT_PROPERTIES += \ 311 persist.bluetooth.firmware.selection=BCM.hcd 312 313# Bluetooth AAC VBR 314PRODUCT_PRODUCT_PROPERTIES += \ 315 persist.bluetooth.a2dp_aac.vbr_supported=true 316 317# Override BQR mask to enable LE Audio Choppy report, remove BTRT logging 318ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 319PRODUCT_PRODUCT_PROPERTIES += \ 320 persist.bluetooth.bqr.event_mask=262238 321else 322PRODUCT_PRODUCT_PROPERTIES += \ 323 persist.bluetooth.bqr.event_mask=94 324endif 325 326# Keyboard bottom padding in dp for portrait mode and height ratio 327PRODUCT_PRODUCT_PROPERTIES += \ 328 ro.com.google.ime.kb_pad_port_b=8 \ 329 ro.com.google.ime.height_ratio=1.075 330 331# Enable camera exif model/make reporting 332PRODUCT_VENDOR_PROPERTIES += \ 333 persist.vendor.camera.exif_reveal_make_model=true \ 334 persist.vendor.camera.front_720P_always_binning=true 335 336##Audio Vendor property 337PRODUCT_PROPERTY_OVERRIDES += \ 338 persist.vendor.audio.cca.enabled=false 339 340# The default value of this variable is false and should only be set to true when 341# the device allows users to enable the seamless transfer feature. 342PRODUCT_PRODUCT_PROPERTIES += \ 343 euicc.seamless_transfer_enabled_in_non_qs=true 344 345# Device features 346PRODUCT_COPY_FILES += \ 347 frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml 348 349# Enable adpf cpu hint session for SurfaceFlinger 350PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 351 debug.sf.enable_adpf_cpu_hint=true 352