| # |
| # 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. |
| # |
| |
| TARGET_KERNEL_DIR ?= device/google/shusky-kernel |
| TARGET_BOARD_KERNEL_HEADERS := device/google/shusky-kernel/kernel-headers |
| |
| LOCAL_PATH := device/google/shusky |
| |
| ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) |
| USE_UWBFIELDTESTQM := true |
| endif |
| |
| $(call inherit-product-if-exists, vendor/google_devices/shusky/prebuilts/device-vendor-husky.mk) |
| $(call inherit-product-if-exists, vendor/google_devices/zuma/prebuilts/device-vendor.mk) |
| $(call inherit-product-if-exists, vendor/google_devices/zuma/proprietary/device-vendor.mk) |
| $(call inherit-product-if-exists, vendor/google_devices/shusky/proprietary/husky/device-vendor-husky.mk) |
| $(call inherit-product-if-exists, vendor/google_devices/husky/proprietary/device-vendor.mk) |
| $(call inherit-product-if-exists, vendor/qorvo/uwb/qm35-hal/Device.mk) |
| $(call inherit-product-if-exists, vendor/google_devices/shusky/proprietary/WallpapersHusky.mk) |
| |
| # display |
| DEVICE_PACKAGE_OVERLAYS += device/google/shusky/husky/overlay |
| PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.ignore_hdr_camera_layers=true |
| |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/husky/display_colordata_dev_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_colordata_dev_cal0.pb \ |
| device/google/shusky/husky/display_golden_google-hk3_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_golden_google-hk3_cal0.pb |
| |
| include device/google/shusky/audio/husky/audio-tables.mk |
| include device/google/zuma/device-shipping-common.mk |
| include hardware/google/pixel/vibrator/cs40l26/device.mk |
| include device/google/gs-common/bcmbt/bluetooth.mk |
| include device/google/gs-common/touch/stm/stm20.mk |
| include device/google/gs-common/touch/gti/gti.mk |
| include device/google/gs-common/touch/touchinspector/touchinspector.mk |
| |
| # go/lyric-soong-variables |
| $(call soong_config_set,lyric,camera_hardware,husky) |
| $(call soong_config_set,lyric,tuning_product,husky) |
| $(call soong_config_set,google3a_config,target_device,husky) |
| |
| # Init files |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/conf/init.husky.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.husky.rc |
| |
| # Recovery files |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.husky.rc |
| |
| # MIPI Coex Configs |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/husky/radio/husky_camera_front_dbr_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_front_dbr_coex_table.csv \ |
| device/google/shusky/husky/radio/husky_camera_front_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_front_mipi_coex_table.csv \ |
| device/google/shusky/husky/radio/husky_camera_rear_tele_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_rear_tele_mipi_coex_table.csv \ |
| device/google/shusky/husky/radio/husky_display_primary_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/display_primary_mipi_coex_table.csv |
| |
| # Camera |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/media_profiles_husky.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml |
| |
| # NFC |
| PRODUCT_COPY_FILES += \ |
| frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \ |
| frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \ |
| frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \ |
| frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \ |
| frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \ |
| device/google/shusky/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \ |
| device/google/shusky/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf |
| |
| PRODUCT_PACKAGES += \ |
| NfcNci \ |
| Tag \ |
| android.hardware.nfc-service.st |
| |
| # SecureElement |
| PRODUCT_PACKAGES += \ |
| android.hardware.secure_element-service.thales |
| |
| PRODUCT_COPY_FILES += \ |
| frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \ |
| frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \ |
| device/google/shusky/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf |
| |
| # Bluetooth HAL |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/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-opus |
| |
| # Bluetooth Tx power caps |
| PRODUCT_COPY_FILES += \ |
| $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \ |
| $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_CA.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_CA.csv \ |
| $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_EU.csv \ |
| $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv \ |
| $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_US.csv \ |
| $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_GC3VE_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GC3VE_EU.csv |
| |
| # POF |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| ro.bluetooth.finder.supported=true |
| |
| # Spatial Audio |
| PRODUCT_PACKAGES += \ |
| libspatialaudio |
| |
| # declare use of spatial audio |
| PRODUCT_PROPERTY_OVERRIDES += \ |
| ro.audio.spatializer_enabled=true |
| |
| # Audio CCA property |
| PRODUCT_PROPERTY_OVERRIDES += \ |
| persist.vendor.audio.cca.enabled=false |
| |
| # DCK properties based on target |
| PRODUCT_PROPERTY_OVERRIDES += \ |
| ro.gms.dck.eligible_wcc=3 \ |
| ro.gms.dck.se_capability=1 |
| |
| # Bluetooth hci_inject test tool |
| PRODUCT_PACKAGES_DEBUG += \ |
| hci_inject |
| |
| # Bluetooth OPUS codec |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| persist.bluetooth.opus.enabled=true |
| |
| # Bluetooth SAR test tool |
| PRODUCT_PACKAGES_DEBUG += \ |
| sar_test |
| |
| # Bluetooth EWP test tool |
| PRODUCT_PACKAGES_DEBUG += \ |
| ewp_tool |
| |
| # Bluetooth AAC VBR |
| 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))) |
| 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 |
| |
| # Spatial Audio |
| PRODUCT_PACKAGES += \ |
| libspatialaudio \ |
| librondo |
| |
| # Bluetooth Super Wide Band |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| bluetooth.hfp.swb.supported=true |
| |
| # Bluetooth LE Audio |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| ro.bluetooth.leaudio_switcher.supported=true \ |
| bluetooth.profile.bap.unicast.client.enabled=true \ |
| bluetooth.profile.csip.set_coordinator.enabled=true \ |
| bluetooth.profile.hap.client.enabled=true \ |
| bluetooth.profile.mcp.server.enabled=true \ |
| bluetooth.profile.ccp.server.enabled=true \ |
| bluetooth.profile.vcp.controller.enabled=true |
| |
| # Bluetooth LE Audio enable hardware offloading |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| ro.bluetooth.leaudio_offload.supported=true \ |
| persist.bluetooth.leaudio_offload.disabled=false |
| |
| # Bluetooth LE Auido offload capabilities setting |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml |
| |
| # 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 |
| |
| # Not support LE Audio dual mic SWB call based on the current launch strategy |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| bluetooth.leaudio.dual_bidirection_swb.supported=false |
| |
| # Support One-Handed mode |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| ro.support_one_handed_mode=true |
| |
| # Keymaster HAL |
| #LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= [email protected] |
| |
| # Gatekeeper HAL |
| #LOCAL_GATEKEEPER_PRODUCT_PACKAGE ?= [email protected] |
| |
| |
| # Gatekeeper |
| # PRODUCT_PACKAGES += \ |
| # [email protected] |
| |
| # Keymint replaces Keymaster |
| # PRODUCT_PACKAGES += \ |
| # android.hardware.security.keymint-service |
| |
| # Keymaster |
| #PRODUCT_PACKAGES += \ |
| # [email protected] \ |
| # [email protected] |
| |
| #PRODUCT_PACKAGES += [email protected] |
| #PRODUCT_PACKAGES += [email protected] |
| #LOCAL_KEYMASTER_PRODUCT_PACKAGE := [email protected] |
| #LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= [email protected] |
| |
| # PRODUCT_PROPERTY_OVERRIDES += \ |
| # ro.hardware.keystore_desede=true \ |
| # ro.hardware.keystore=software \ |
| # ro.hardware.gatekeeper=software |
| |
| # PowerStats HAL |
| PRODUCT_SOONG_NAMESPACES += \ |
| device/google/shusky/powerstats/husky \ |
| device/google/shusky |
| |
| # WiFi Overlay |
| PRODUCT_PACKAGES += \ |
| UwbOverlayHK3 \ |
| WifiOverlay2023 \ |
| PixelWifiOverlay2023 |
| |
| # Trusty liboemcrypto.so |
| PRODUCT_SOONG_NAMESPACES += vendor/google_devices/shusky/prebuilts |
| |
| # Location |
| # SDK build system |
| include device/google/gs-common/gps/brcm/device.mk |
| |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/location/gps.cer:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.cer |
| |
| ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/location/lhd.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \ |
| device/google/shusky/location/scd.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf \ |
| device/google/shusky/location/gps.xml.hk3:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml |
| else |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/location/lhd_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \ |
| device/google/shusky/location/scd_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf \ |
| device/google/shusky/location/gps_user.xml.hk3:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml |
| endif |
| |
| # Set zram size |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.zram.size=50p \ |
| persist.device_config.configuration.disable_rescue_party=true |
| |
| # Fingerprint HAL |
| GOODIX_CONFIG_BUILD_VERSION := g7_trusty |
| include device/google/gs101/fingerprint/udfps_common.mk |
| ifeq ($(filter factory%, $(TARGET_PRODUCT)),) |
| include device/google/gs101/fingerprint/udfps_shipping.mk |
| else |
| include device/google/gs101/fingerprint/udfps_factory.mk |
| endif |
| |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.udfps.als_feed_forward_supported=true \ |
| persist.vendor.udfps.lhbm_controlled_in_hal_supported=true |
| |
| # Fingerprint exposure compensation |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.udfps.auto_exposure_compensation_supported=true |
| |
| # Camera Vendor property |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.camera.front_720P_always_binning=true |
| |
| # Media Performance Class 14 |
| PRODUCT_PRODUCT_PROPERTIES += ro.odm.build.media_performance_class=33 |
| |
| # config of display brightness dimming |
| PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.0.brightness.dimming.usage?=1 |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.primarydisplay.op.hs_hz=120 \ |
| vendor.primarydisplay.op.ns_hz=60 \ |
| vendor.primarydisplay.op.ns_min_dbv=1172 |
| |
| # kernel idle timer for display driver |
| PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.support_kernel_idle_timer=true |
| |
| # lhbm peak brightness delay: decided by kernel |
| PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.primarydisplay.lhbm.frames_to_reach_peak_brightness=0 |
| |
| # Display LBE |
| PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.lbe.supported=1 |
| |
| # blocking zone for min idle refresh rate |
| PRODUCT_VENDOR_PROPERTIES += \ |
| vendor.primarydisplay.min_idle_refresh_rate.default=1 \ |
| vendor.primarydisplay.min_idle_refresh_rate.blocking_zone=10 \ |
| vendor.primarydisplay.min_idle_refresh_rate.blocking_zone_dbv=492 |
| |
| # Display ACL |
| PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.0.brightness.acl.default=0 |
| |
| # display color data |
| PRODUCT_COPY_FILES += \ |
| device/google/shusky/husky/panel_config_google-hk3_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/panel_config_google-hk3_cal0.pb |
| |
| # Vibrator HAL |
| ACTUATOR_MODEL := luxshare_ict_081545 |
| ADAPTIVE_HAPTICS_FEATURE := adaptive_haptics_v1 |
| PRODUCT_VENDOR_PROPERTIES += \ |
| ro.vendor.vibrator.hal.chirp.enabled=0 \ |
| ro.vendor.vibrator.hal.device.mass=0.222 \ |
| ro.vendor.vibrator.hal.loc.coeff=2.8 \ |
| persist.vendor.vibrator.hal.context.enable=false \ |
| persist.vendor.vibrator.hal.context.scale=60 \ |
| persist.vendor.vibrator.hal.context.fade=true \ |
| persist.vendor.vibrator.hal.context.cooldowntime=1600 \ |
| persist.vendor.vibrator.hal.context.settlingtime=5000 \ |
| ro.vendor.vibrator.hal.dbc.enable=true \ |
| ro.vendor.vibrator.hal.dbc.envrelcoef=8353728 \ |
| ro.vendor.vibrator.hal.dbc.riseheadroom=1909602 \ |
| ro.vendor.vibrator.hal.dbc.fallheadroom=1909602 \ |
| ro.vendor.vibrator.hal.dbc.txlvlthreshfs=2516583 \ |
| ro.vendor.vibrator.hal.dbc.txlvlholdoffms=0 \ |
| ro.vendor.vibrator.hal.pm.activetimeout=5 |
| |
| # Increment the SVN for any official public releases |
| PRODUCT_VENDOR_PROPERTIES += \ |
| ro.vendor.build.svn=11 |
| |
| # WLC userdebug specific |
| ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) |
| PRODUCT_COPY_FILES += \ |
| device/google/zuma/init.hardware.wlc.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.wlc.rc |
| endif |
| |
| # Setup Wizard device-specific settings |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| setupwizard.feature.enable_quick_start_flow=true \ |
| |
| # Quick Start device-specific settings |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| ro.quick_start.oem_id=00e0 \ |
| ro.quick_start.device_id=husky |
| |
| # PKVM Memory Reclaim |
| PRODUCT_VENDOR_PROPERTIES += \ |
| hypervisor.memory_reclaim.supported=1 |
| |
| # P23 Devices no longer need rlsservice |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.camera.rls_supported=false |
| |
| # Settings Overlay |
| PRODUCT_PACKAGES += \ |
| SettingsHuskyOverlay |
| |
| # Display RRS default Config |
| PRODUCT_DEFAULT_PROPERTY_OVERRIDES += persist.vendor.display.primary.boot_config=1008x2244@120 |
| # TODO: b/250788756 - the property will be phased out after HWC loads user-preferred mode |
| PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.preferred_mode=1008x2244@120 |
| |
| # Window Extensions |
| $(call inherit-product, $(SRC_TARGET_DIR)/product/window_extensions.mk) |
| |
| # Disable Settings large-screen optimization enabled by Window Extensions |
| PRODUCT_SYSTEM_PROPERTIES += \ |
| persist.settings.large_screen_opt.enabled=false |
| |
| # Keyboard height ratio and bottom padding in dp for portrait mode |
| PRODUCT_PRODUCT_PROPERTIES += \ |
| ro.com.google.ime.kb_pad_port_b=10.4 \ |
| ro.com.google.ime.height_ratio=1.0 |
| |
| # Enable camera exif model/make reporting |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.camera.exif_reveal_make_model=true |
| |
| # Enable DeviceAsWebcam support |
| PRODUCT_VENDOR_PROPERTIES += \ |
| ro.usb.uvc.enabled=true |
| |
| # DisplayPort should be disabled by default (b/300167292) |
| PRODUCT_VENDOR_PROPERTIES += \ |
| persist.vendor.usb.displayport.enabled=0 |