device_google_shusky/device-husky.mk
Jayant Chowdhary 544a00a41c Enable UVC support on shuksy
Shiba and husky now support the UVC gadget function. Setting this flag
triggers the framework to surface the UVC specific functionality and UI.

Bug: 287675279

Test: Use webcam on shusky

Merged-In: I3e5d3b64f8d21cac77e519f335e046231ad4fbb1
Change-Id: I3e5d3b64f8d21cac77e519f335e046231ad4fbb1
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
2023-09-07 18:28:04 +00:00

403 lines
16 KiB
Makefile

#
# 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
# Support One-Handed mode
PRODUCT_PRODUCT_PROPERTIES += \
ro.support_one_handed_mode=true
# Keymaster HAL
#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service
# Gatekeeper HAL
#LOCAL_GATEKEEPER_PRODUCT_PACKAGE ?= android.hardware.gatekeeper@1.0-service.software
# Gatekeeper
# PRODUCT_PACKAGES += \
# android.hardware.gatekeeper@1.0-service.software
# Keymint replaces Keymaster
# PRODUCT_PACKAGES += \
# android.hardware.security.keymint-service
# Keymaster
#PRODUCT_PACKAGES += \
# android.hardware.keymaster@4.0-impl \
# android.hardware.keymaster@4.0-service
#PRODUCT_PACKAGES += android.hardware.keymaster@4.0-service.remote
#PRODUCT_PACKAGES += android.hardware.keymaster@4.1-service.remote
#LOCAL_KEYMASTER_PRODUCT_PACKAGE := android.hardware.keymaster@4.1-service
#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= android.hardware.keymaster@4.1-service
# 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=1
# 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=3
# 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