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
17# Restrict the visibility of Android.bp files to improve build analysis time
18$(call inherit-product-if-exists, vendor/google/products/sources_pixel.mk)
19
20ifdef RELEASE_GOOGLE_HUSKY_RADIO_DIR
21RELEASE_GOOGLE_PRODUCT_RADIO_DIR := $(RELEASE_GOOGLE_HUSKY_RADIO_DIR)
22endif
23ifdef RELEASE_GOOGLE_HUSKY_RADIOCFG_DIR
24RELEASE_GOOGLE_PRODUCT_RADIOCFG_DIR := $(RELEASE_GOOGLE_HUSKY_RADIOCFG_DIR)
25endif
26RELEASE_GOOGLE_BOOTLOADER_HUSKY_DIR ?= pdk# Keep this for pdk TODO: b/327119000
27RELEASE_GOOGLE_PRODUCT_BOOTLOADER_DIR := bootloader/$(RELEASE_GOOGLE_BOOTLOADER_HUSKY_DIR)
28$(call soong_config_set,shusky_bootloader,prebuilt_dir,$(RELEASE_GOOGLE_BOOTLOADER_HUSKY_DIR))
29
30
31TARGET_LINUX_KERNEL_VERSION := $(RELEASE_KERNEL_HUSKY_VERSION)
32# Keeps flexibility for kasan and ufs builds
33TARGET_KERNEL_DIR ?= $(RELEASE_KERNEL_HUSKY_DIR)
34TARGET_BOARD_KERNEL_HEADERS ?= $(RELEASE_KERNEL_HUSKY_DIR)/kernel-headers
35
36LOCAL_PATH := device/google/shusky
37
38ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
39    USE_UWBFIELDTESTQM := true
40endif
41ifeq ($(filter factory_husky, $(TARGET_PRODUCT)),)
42    include device/google/shusky/uwb/uwb_calibration.mk
43endif
44
45ifneq ($(TARGET_BOOTS_16K),true)
46PRODUCT_16K_DEVELOPER_OPTION := $(RELEASE_GOOGLE_HUSKY_16K_DEVELOPER_OPTION)
47endif
48
49$(call inherit-product-if-exists, vendor/google_devices/shusky/prebuilts/device-vendor-husky.mk)
50$(call inherit-product-if-exists, vendor/google_devices/zuma/prebuilts/device-vendor.mk)
51$(call inherit-product-if-exists, vendor/google_devices/zuma/proprietary/device-vendor.mk)
52$(call inherit-product-if-exists, vendor/google_devices/shusky/proprietary/husky/device-vendor-husky.mk)
53$(call inherit-product-if-exists, vendor/google_devices/husky/proprietary/device-vendor.mk)
54$(call inherit-product-if-exists, vendor/qorvo/uwb/qm35-hal/Device.mk)
55$(call inherit-product-if-exists, vendor/google_devices/shusky/proprietary/WallpapersHusky.mk)
56
57# display
58DEVICE_PACKAGE_OVERLAYS += device/google/shusky/husky/overlay
59PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.ignore_hdr_camera_layers=true
60
61PRODUCT_COPY_FILES += \
62	device/google/shusky/husky/display_colordata_dev_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_colordata_dev_cal0.pb \
63    device/google/shusky/husky/display_golden_google-hk3_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_golden_google-hk3_cal0.pb \
64    device/google/shusky/display_golden_external_display_cal2.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_golden_external_display_cal2.pb
65
66CAMERA_PRODUCT ?= husky
67
68ifeq ($(RELEASE_PIXEL_AIDL_AUDIO_HAL_ZUMA),true)
69USE_AUDIO_HAL_AIDL := true
70endif
71
72include device/google/shusky/camera/camera.mk
73include device/google/shusky/audio/husky/audio-tables.mk
74include device/google/zuma/device-shipping-common.mk
75include device/google/gs-common/bcmbt/bluetooth.mk
76include device/google/gs-common/touch/stm/predump_stm20.mk
77include device/google/gs-common/touch/gti/predump_gti.mk
78include device/google/gs-common/touch/touchinspector/touchinspector.mk
79
80# Init files
81PRODUCT_COPY_FILES += \
82	device/google/shusky/conf/init.husky.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.husky.rc
83
84# Recovery files
85PRODUCT_COPY_FILES += \
86        device/google/shusky/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.husky.rc
87
88# MIPI Coex Configs
89PRODUCT_COPY_FILES += \
90        device/google/shusky/husky/radio/husky_camera_front_dbr_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_front_dbr_coex_table.csv \
91        device/google/shusky/husky/radio/husky_camera_front_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/camera_front_mipi_coex_table.csv \
92        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 \
93        device/google/shusky/husky/radio/husky_display_primary_mipi_coex_table.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/display_primary_mipi_coex_table.csv
94
95# NFC
96PRODUCT_COPY_FILES += \
97	frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
98	frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
99	frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
100	frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
101	frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \
102	device/google/shusky/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \
103	device/google/shusky/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf
104
105PRODUCT_PACKAGES += \
106	$(RELEASE_PACKAGE_NFC_STACK) \
107	Tag \
108	android.hardware.nfc-service.st
109
110# SecureElement
111PRODUCT_PACKAGES += \
112	android.hardware.secure_element-service.thales
113
114PRODUCT_COPY_FILES += \
115	frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
116	frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
117	device/google/shusky/nfc/libse-gto-hal.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libse-gto-hal.conf
118
119# Bluetooth HAL
120PRODUCT_COPY_FILES += \
121	device/google/shusky/bluetooth/bt_vendor_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_vendor_overlay.conf
122PRODUCT_PROPERTY_OVERRIDES += \
123    ro.bluetooth.a2dp_offload.supported=true \
124    persist.bluetooth.a2dp_offload.disabled=false \
125    persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac-opus
126
127# Enable Bluetooth AutoOn feature
128PRODUCT_PRODUCT_PROPERTIES += \
129    bluetooth.server.automatic_turn_on=true
130
131# Bluetooth Tx power caps
132PRODUCT_COPY_FILES += \
133    $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits.csv \
134    $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_CA.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_CA.csv \
135    $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_EU.csv \
136    $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_JP.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_JP.csv \
137    $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_US.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_US.csv \
138    $(LOCAL_PATH)/bluetooth/bluetooth_power_limits_husky_GC3VE_EU.csv:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_power_limits_GC3VE_EU.csv
139
140# POF
141PRODUCT_PRODUCT_PROPERTIES += \
142    ro.bluetooth.finder.supported=true
143
144ifeq ($(USE_AUDIO_HAL_AIDL),true)
145# AIDL
146
147else
148# HIDL
149
150# Spatial Audio
151PRODUCT_PACKAGES += \
152	libspatialaudio
153
154# Sound Dose
155PRODUCT_PACKAGES += \
156	android.hardware.audio.sounddose-vendor-impl \
157	audio_sounddose_aoc
158
159endif
160
161# declare use of spatial audio
162PRODUCT_PROPERTY_OVERRIDES += \
163	ro.audio.spatializer_enabled=true
164
165# Audio CCA property
166PRODUCT_PROPERTY_OVERRIDES += \
167	persist.vendor.audio.cca.enabled=false
168
169# DCK properties based on target
170PRODUCT_PROPERTY_OVERRIDES += \
171    ro.gms.dck.eligible_wcc=3 \
172    ro.gms.dck.se_capability=1
173
174# Bluetooth hci_inject test tool
175PRODUCT_PACKAGES_DEBUG += \
176    hci_inject
177
178# Bluetooth OPUS codec
179PRODUCT_PRODUCT_PROPERTIES += \
180    persist.bluetooth.opus.enabled=true
181
182# Bluetooth SAR test tool
183PRODUCT_PACKAGES_DEBUG += \
184    sar_test
185
186# Bluetooth EWP test tool
187PRODUCT_PACKAGES_DEBUG += \
188    ewp_tool
189
190# Bluetooth AAC VBR
191PRODUCT_PRODUCT_PROPERTIES += \
192    persist.bluetooth.a2dp_aac.vbr_supported=true
193
194# Override BQR mask to enable LE Audio Choppy report, remove BTRT logging
195ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
196PRODUCT_PRODUCT_PROPERTIES += \
197    persist.bluetooth.bqr.event_mask=295006 \
198    persist.bluetooth.bqr.vnd_quality_mask=29 \
199    persist.bluetooth.bqr.vnd_trace_mask=0 \
200    persist.bluetooth.vendor.btsnoop=true
201else
202PRODUCT_PRODUCT_PROPERTIES += \
203    persist.bluetooth.bqr.event_mask=295006 \
204    persist.bluetooth.bqr.vnd_quality_mask=16 \
205    persist.bluetooth.bqr.vnd_trace_mask=0 \
206    persist.bluetooth.vendor.btsnoop=false
207endif
208
209# Spatial Audio
210PRODUCT_PACKAGES += \
211	libspatialaudio \
212	librondo
213
214# Bluetooth Super Wide Band
215PRODUCT_PRODUCT_PROPERTIES += \
216	bluetooth.hfp.swb.supported=true
217
218# Bluetooth LE Audio
219PRODUCT_PRODUCT_PROPERTIES += \
220	ro.bluetooth.leaudio_switcher.supported?=true \
221	bluetooth.profile.bap.unicast.client.enabled?=true \
222	bluetooth.profile.csip.set_coordinator.enabled?=true \
223	bluetooth.profile.hap.client.enabled?=true \
224	bluetooth.profile.mcp.server.enabled?=true \
225	bluetooth.profile.ccp.server.enabled?=true \
226	bluetooth.profile.vcp.controller.enabled?=true
227
228# Bluetooth LE Audio Broadcast
229PRODUCT_PRODUCT_PROPERTIES += \
230	bluetooth.profile.bap.broadcast.assist.enabled=true \
231	bluetooth.profile.bap.broadcast.source.enabled=true
232
233# Bluetooth LE Audio enable hardware offloading
234PRODUCT_PRODUCT_PROPERTIES += \
235	ro.bluetooth.leaudio_offload.supported=true \
236	persist.bluetooth.leaudio_offload.disabled=false
237
238# Bluetooth LE Auido offload capabilities setting
239PRODUCT_COPY_FILES += \
240	device/google/shusky/bluetooth/le_audio_codec_capabilities.xml:$(TARGET_COPY_OUT_VENDOR)/etc/le_audio_codec_capabilities.xml
241
242# LE Audio Unicast Allowlist
243PRODUCT_PRODUCT_PROPERTIES += \
244    persist.bluetooth.leaudio.allow_list=SM-R510,WF-1000XM5,SM-R630
245
246# Bluetooth LE Audio CIS handover to SCO
247# Set the property only for the controller couldn't support CIS/SCO simultaneously. More detailed in b/242908683.
248PRODUCT_PRODUCT_PROPERTIES += \
249	persist.bluetooth.leaudio.notify.idle.during.call=true
250
251# Support LE Audio dual mic SWB call
252PRODUCT_PRODUCT_PROPERTIES += \
253    bluetooth.leaudio.dual_bidirection_swb.supported=true
254
255# Support LE & Classic concurrent encryption (b/330704060)
256PRODUCT_PRODUCT_PROPERTIES += \
257    bluetooth.ble.allow_enc_with_bredr=true
258
259# Support One-Handed mode
260PRODUCT_PRODUCT_PROPERTIES += \
261    ro.support_one_handed_mode=true
262
263# Keymaster HAL
264#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= [email protected]
265
266# Gatekeeper HAL
267#LOCAL_GATEKEEPER_PRODUCT_PACKAGE ?= [email protected]
268
269
270# Gatekeeper
271# PRODUCT_PACKAGES += \
272# 	[email protected]
273
274# Keymint replaces Keymaster
275# PRODUCT_PACKAGES += \
276# 	android.hardware.security.keymint-service
277
278# Keymaster
279#PRODUCT_PACKAGES += \
280#	[email protected] \
281#	[email protected]
282
283#PRODUCT_PACKAGES += [email protected]
284#PRODUCT_PACKAGES += [email protected]
285#LOCAL_KEYMASTER_PRODUCT_PACKAGE := [email protected]
286#LOCAL_KEYMASTER_PRODUCT_PACKAGE ?= [email protected]
287
288# PRODUCT_PROPERTY_OVERRIDES += \
289# 	ro.hardware.keystore_desede=true \
290# 	ro.hardware.keystore=software \
291# 	ro.hardware.gatekeeper=software
292
293# PowerStats HAL
294PRODUCT_SOONG_NAMESPACES += \
295    device/google/shusky/powerstats/husky \
296    device/google/shusky
297
298# WiFi Overlay
299PRODUCT_PACKAGES += \
300	UwbOverlayHK3 \
301	WifiOverlay2023 \
302	PixelWifiOverlay2023
303
304# Trusty liboemcrypto.so
305PRODUCT_SOONG_NAMESPACES += vendor/google_devices/shusky/prebuilts
306
307# UWB
308PRODUCT_SOONG_NAMESPACES += \
309    device/google/shusky/uwb
310
311# Location
312# SDK build system
313include device/google/gs-common/gps/brcm/device.mk
314
315PRODUCT_COPY_FILES += \
316       device/google/shusky/location/gps.cer:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.cer
317
318# Location
319ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
320    PRODUCT_COPY_FILES += \
321        device/google/shusky/location/lhd.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \
322        device/google/shusky/location/scd.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf
323    ifneq (,$(filter 6.1, $(TARGET_LINUX_KERNEL_VERSION)))
324        PRODUCT_COPY_FILES += \
325            device/google/shusky/location/gps.6.1.xml.hk3:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
326    else
327        PRODUCT_COPY_FILES += \
328            device/google/shusky/location/gps.xml.hk3:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
329    endif
330else
331    PRODUCT_COPY_FILES += \
332        device/google/shusky/location/lhd_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \
333        device/google/shusky/location/scd_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf
334    ifneq (,$(filter 6.1, $(TARGET_LINUX_KERNEL_VERSION)))
335        PRODUCT_COPY_FILES += \
336            device/google/shusky/location/gps_user.6.1.xml.hk3:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
337    else
338        PRODUCT_COPY_FILES += \
339            device/google/shusky/location/gps_user.xml.hk3:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.xml
340    endif
341endif
342
343# Set zram size
344PRODUCT_VENDOR_PROPERTIES += \
345	vendor.zram.size=50p \
346	persist.device_config.configuration.disable_rescue_party=true
347
348# Fingerprint HAL
349GOODIX_CONFIG_BUILD_VERSION := g7_trusty
350APEX_FPS_TA_DIR := //vendor/google_devices/shusky/prebuilts
351$(call inherit-product-if-exists, vendor/goodix/udfps/configuration/udfps_common.mk)
352ifeq ($(filter factory%, $(TARGET_PRODUCT)),)
353$(call inherit-product-if-exists, vendor/goodix/udfps/configuration/udfps_shipping.mk)
354else
355$(call inherit-product-if-exists, vendor/goodix/udfps/configuration/udfps_factory.mk)
356endif
357
358PRODUCT_VENDOR_PROPERTIES += \
359    persist.vendor.udfps.als_feed_forward_supported=true \
360    persist.vendor.udfps.lhbm_controlled_in_hal_supported=true
361
362# Fingerprint exposure compensation
363PRODUCT_VENDOR_PROPERTIES += \
364    persist.vendor.udfps.auto_exposure_compensation_supported=true
365
366# Camera Vendor property
367PRODUCT_VENDOR_PROPERTIES += \
368    persist.vendor.camera.front_720P_always_binning=true
369
370# Media Performance Class 14
371PRODUCT_PRODUCT_PROPERTIES += ro.odm.build.media_performance_class=34
372
373# config of display brightness dimming
374PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.0.brightness.dimming.usage?=1
375PRODUCT_VENDOR_PROPERTIES += \
376    vendor.primarydisplay.op.hs_hz=120 \
377    vendor.primarydisplay.op.ns_hz=60 \
378    vendor.primarydisplay.op.ns_min_dbv=1172
379
380# kernel idle timer for display driver
381PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.support_kernel_idle_timer=true
382
383# lhbm peak brightness delay: decided by kernel
384PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.primarydisplay.lhbm.frames_to_reach_peak_brightness=0
385
386# Display LBE
387PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.lbe.supported=1
388
389# blocking zone for min idle refresh rate
390PRODUCT_VENDOR_PROPERTIES += \
391    ro.vendor.primarydisplay.blocking_zone.min_refresh_rate_by_nits=15:10,:1
392
393# Display ACL
394PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.0.brightness.acl.default=0
395
396# display color data
397PRODUCT_COPY_FILES += \
398	device/google/shusky/husky/panel_config_google-hk3_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/panel_config_google-hk3_cal0.pb
399
400# Vibrator HAL
401$(call soong_config_set,haptics,kernel_ver,v$(subst .,_,$(TARGET_LINUX_KERNEL_VERSION)))
402ACTUATOR_MODEL := luxshare_ict_081545
403ADAPTIVE_HAPTICS_FEATURE := adaptive_haptics_v1
404PRODUCT_VENDOR_PROPERTIES += \
405    persist.vendor.vibrator.hal.chirp.enabled=0 \
406    ro.vendor.vibrator.hal.device.mass=0.222 \
407    ro.vendor.vibrator.hal.loc.coeff=2.8 \
408    persist.vendor.vibrator.hal.context.enable=false \
409    persist.vendor.vibrator.hal.context.scale=60 \
410    persist.vendor.vibrator.hal.context.fade=true \
411    persist.vendor.vibrator.hal.context.cooldowntime=1600 \
412    persist.vendor.vibrator.hal.context.settlingtime=5000
413
414# Override Output Distortion Gain
415PRODUCT_VENDOR_PROPERTIES += \
416    vendor.audio.hapticgenerator.distortion.output.gain=0.38
417
418# Increment the SVN for any official public releases
419ifdef RELEASE_SVN_HUSKY
420TARGET_SVN ?= $(RELEASE_SVN_HUSKY)
421else
422# Set this for older releases that don't use build flag
423TARGET_SVN ?= 38
424endif
425
426PRODUCT_VENDOR_PROPERTIES += \
427    ro.vendor.build.svn=$(TARGET_SVN)
428
429# Set device family property for SMR
430PRODUCT_PROPERTY_OVERRIDES += \
431    ro.build.device_family=HK3SB3AK3
432
433# Set build properties for SMR builds
434ifeq ($(RELEASE_IS_SMR), true)
435    ifneq (,$(RELEASE_BASE_OS_HUSKY))
436        PRODUCT_BASE_OS := $(RELEASE_BASE_OS_HUSKY)
437    endif
438endif
439
440# Set build properties for EMR builds
441ifeq ($(RELEASE_IS_EMR), true)
442    ifneq (,$(RELEASE_BASE_OS_HUSKY))
443        PRODUCT_PROPERTY_OVERRIDES += \
444        ro.build.version.emergency_base_os=$(RELEASE_BASE_OS_HUSKY)
445    endif
446endif
447# WLC userdebug specific
448ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
449    PRODUCT_COPY_FILES += \
450        device/google/zuma/init.hardware.wlc.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.wlc.rc
451endif
452
453# Setup Wizard device-specific settings
454PRODUCT_PRODUCT_PROPERTIES += \
455    setupwizard.feature.enable_quick_start_flow=true \
456
457# Quick Start device-specific settings
458PRODUCT_PRODUCT_PROPERTIES += \
459    ro.quick_start.oem_id=00e0 \
460    ro.quick_start.device_id=husky
461
462# PKVM Memory Reclaim
463PRODUCT_VENDOR_PROPERTIES += \
464    hypervisor.memory_reclaim.supported=1
465
466# P23 Devices no longer need rlsservice
467PRODUCT_VENDOR_PROPERTIES += \
468    persist.vendor.camera.rls_supported=false
469
470# Settings Overlay
471PRODUCT_PACKAGES += \
472    SettingsHuskyOverlay
473
474# Display RRS default Config
475PRODUCT_DEFAULT_PROPERTY_OVERRIDES += persist.vendor.display.primary.boot_config=1008x2244@120
476# TODO: b/250788756 - the property will be phased out after HWC loads user-preferred mode
477PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.display.preferred_mode=1008x2244@120
478
479# Window Extensions
480$(call inherit-product, $(SRC_TARGET_DIR)/product/window_extensions.mk)
481
482# Disable Settings large-screen optimization enabled by Window Extensions
483PRODUCT_SYSTEM_PROPERTIES += \
484    persist.settings.large_screen_opt.enabled=false
485
486# Keyboard height ratio and bottom padding in dp for portrait mode
487PRODUCT_PRODUCT_PROPERTIES += \
488         ro.com.google.ime.kb_pad_port_b=10.4
489
490PRODUCT_PRODUCT_PROPERTIES ?= \
491    ro.com.google.ime.height_ratio=1.0
492
493# Enable camera exif model/make reporting
494PRODUCT_VENDOR_PROPERTIES += \
495    persist.vendor.camera.exif_reveal_make_model=true
496
497# Enable DeviceAsWebcam support
498PRODUCT_VENDOR_PROPERTIES += \
499    ro.usb.uvc.enabled=true
500
501PRODUCT_PACKAGES += \
502	NfcOverlayHusky \
503
504# Set support hide display cutout feature
505PRODUCT_PRODUCT_PROPERTIES += \
506    ro.support_hide_display_cutout=true
507
508PRODUCT_PACKAGES += \
509    NoCutoutOverlay \
510    AvoidAppsInCutoutOverlay
511
512# ETM
513ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
514$(call inherit-product-if-exists, device/google/common/etm/device-userdebug-modules.mk)
515endif
516
517PRODUCT_NO_BIONIC_PAGE_SIZE_MACRO := true
518
519ifneq ($(wildcard vendor/arm/mali/valhall),)
520PRODUCT_CHECK_PREBUILT_MAX_PAGE_SIZE := true
521endif
522
523# Bluetooth device id
524# Husky: 0x410D
525PRODUCT_PRODUCT_PROPERTIES += \
526    bluetooth.device_id.product_id=16653
527
528# Set support for LEA multicodec
529PRODUCT_PRODUCT_PROPERTIES += \
530    bluetooth.core.le_audio.codec_extension_aidl.enabled=true
531
532# LE Audio configuration scenarios
533PRODUCT_COPY_FILES += \
534    device/google/shusky/bluetooth/audio_set_scenarios.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_scenarios.json
535
536PRODUCT_COPY_FILES += \
537    device/google/shusky/bluetooth/audio_set_configurations.json:$(TARGET_COPY_OUT_VENDOR)/etc/aidl/le_audio/aidl_audio_set_configurations.json
538
539# Enable APF by default
540PRODUCT_VENDOR_PROPERTIES += \
541    vendor.powerhal.apf_disabled=false \
542    vendor.powerhal.apf_enabled=true
543