1#
2# Copyright (C) 2016 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_CHIPSET := sdm710
18
19PRODUCT_SOONG_NAMESPACES += \
20    device/google/bonito \
21    hardware/google/av \
22    hardware/google/interfaces \
23    hardware/google/pixel \
24    hardware/qcom/sdm845 \
25    vendor/google/camera \
26    vendor/qcom/sdm845 \
27    vendor/google/interfaces
28
29PRODUCT_PROPERTY_OVERRIDES += \
30    keyguard.no_require_sim=true
31
32# enable cal by default on accel sensor
33PRODUCT_PRODUCT_PROPERTIES += \
34    persist.debug.sensors.accel_cal=1
35
36# The default value of this variable is false and should only be set to true when
37# the device allows users to retain eSIM profiles after factory reset of user data.
38PRODUCT_PRODUCT_PROPERTIES += \
39    masterclear.allow_retain_esim_profiles_after_fdr=true
40
41PRODUCT_COPY_FILES += \
42    device/google/bonito/default-permissions.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default-permissions/default-permissions.xml \
43    frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \
44    frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/android.software.verified_boot.xml
45
46# Enforce privapp-permissions whitelist
47PRODUCT_PROPERTY_OVERRIDES += \
48    ro.control_privapp_permissions=enforce
49
50# Enable on-access verification of priv apps. This requires fs-verity support in kernel.
51PRODUCT_PROPERTY_OVERRIDES += \
52    ro.apk_verity.mode=1
53
54PRODUCT_PACKAGES += \
55    messaging
56
57LOCAL_PATH := device/google/bonito
58
59TARGET_PRODUCT_PROP := $(LOCAL_PATH)/product.prop
60
61$(call inherit-product, $(LOCAL_PATH)/utils.mk)
62
63# Installs gsi keys into ramdisk, to boot a GSI with verified boot.
64$(call inherit-product, $(SRC_TARGET_DIR)/product/gsi_keys.mk)
65
66# Installs gsi keys into ramdisk, to boot a developer GSI with verified boot.
67$(call inherit-product, $(SRC_TARGET_DIR)/product/developer_gsi_keys.mk)
68
69ifeq ($(wildcard vendor/google_devices/bonito/proprietary/device-vendor-bonito.mk),)
70    BUILD_WITHOUT_VENDOR := true
71endif
72
73ifeq ($(TARGET_PREBUILT_KERNEL),)
74    LOCAL_KERNEL := device/google/bonito-kernel/Image.lz4
75else
76    LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
77endif
78
79PRODUCT_CHARACTERISTICS := nosdcard
80PRODUCT_SHIPPING_API_LEVEL := 28
81
82DEVICE_PACKAGE_OVERLAYS += $(LOCAL_PATH)/overlay
83
84PRODUCT_COPY_FILES += \
85    $(LOCAL_KERNEL):kernel \
86    $(LOCAL_PATH)/init.recovery.hardware.rc:recovery/root/init.recovery.$(PRODUCT_PLATFORM).rc \
87    $(LOCAL_PATH)/init.hardware.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).rc \
88    $(LOCAL_PATH)/init.hardware.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).usb.rc \
89    $(LOCAL_PATH)/ueventd.hardware.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
90    $(LOCAL_PATH)/init.power.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).power.rc \
91    $(LOCAL_PATH)/init.radio.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.radio.sh \
92    $(LOCAL_PATH)/uinput-fpc.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/uinput-fpc.kl \
93    $(LOCAL_PATH)/uinput-fpc.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/uinput-fpc.idc \
94    $(LOCAL_PATH)/init.qcom.devstart.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.qcom.devstart.sh \
95    $(LOCAL_PATH)/init.qcom.ipastart.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.qcom.ipastart.sh \
96    $(LOCAL_PATH)/init.qcom.wlan.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.qcom.wlan.sh \
97    $(LOCAL_PATH)/init.insmod.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.insmod.sh \
98    $(LOCAL_PATH)/init.insmod.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/init.insmod.cfg \
99    $(LOCAL_PATH)/thermal-engine-$(PRODUCT_HARDWARE).conf:$(TARGET_COPY_OUT_VENDOR)/etc/thermal-engine-$(PRODUCT_HARDWARE).conf \
100    $(LOCAL_PATH)/init.firstboot.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.firstboot.sh \
101    $(LOCAL_PATH)/init.ramoops.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.ramoops.sh
102
103# Edge Sense initialization script.
104# TODO: b/67205273
105PRODUCT_COPY_FILES += \
106    $(LOCAL_PATH)/init.edge_sense.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.edge_sense.sh
107
108ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
109  PRODUCT_COPY_FILES += \
110      $(LOCAL_PATH)/init.hardware.diag.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).diag.rc
111  PRODUCT_COPY_FILES += \
112      $(LOCAL_PATH)/init.hardware.mpssrfs.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).mpssrfs.rc
113  PRODUCT_COPY_FILES += \
114      $(LOCAL_PATH)/init.hardware.chamber.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.$(PRODUCT_PLATFORM).chamber.rc
115else
116  PRODUCT_COPY_FILES += \
117      $(LOCAL_PATH)/init.hardware.diag.rc.user:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).diag.rc
118  PRODUCT_COPY_FILES += \
119      $(LOCAL_PATH)/init.hardware.mpssrfs.rc.user:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).mpssrfs.rc
120endif
121
122#per device
123PRODUCT_COPY_FILES += \
124    $(LOCAL_PATH)/bonito/init.bonito.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.bonito.rc \
125    $(LOCAL_PATH)/sargo/init.sargo.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.sargo.rc \
126    $(LOCAL_PATH)/init.recovery.hardware.device.rc:recovery/root/init.recovery.bonito.rc \
127    $(LOCAL_PATH)/init.recovery.hardware.device.rc:recovery/root/init.recovery.sargo.rc \
128
129MSM_VIDC_TARGET_LIST := sdm710 # Get the color format from kernel headers
130MASTER_SIDE_CP_TARGET_LIST := sdm710 # ION specific settings
131
132# A/B support
133PRODUCT_PACKAGES += \
134    otapreopt_script \
135    cppreopts.sh \
136    update_engine \
137    update_verifier
138
139# Use Sdcardfs
140PRODUCT_PRODUCT_PROPERTIES += \
141    ro.sys.sdcardfs=1
142
143PRODUCT_PACKAGES += \
144    bootctrl.sdm710 \
145    bootctrl.sdm710.recovery
146
147PRODUCT_PROPERTY_OVERRIDES += \
148    ro.cp_system_other_odex=1
149
150# Userdata Checkpointing OTA GC
151PRODUCT_PACKAGES += \
152    checkpoint_gc
153
154AB_OTA_POSTINSTALL_CONFIG += \
155    RUN_POSTINSTALL_system=true \
156    POSTINSTALL_PATH_system=system/bin/otapreopt_script \
157    FILESYSTEM_TYPE_system=ext4 \
158    POSTINSTALL_OPTIONAL_system=true
159
160AB_OTA_POSTINSTALL_CONFIG += \
161    RUN_POSTINSTALL_vendor=true \
162    POSTINSTALL_PATH_vendor=bin/checkpoint_gc \
163    FILESYSTEM_TYPE_vendor=ext4 \
164    POSTINSTALL_OPTIONAL_vendor=true
165
166PRODUCT_PACKAGES += \
167    update_engine_sideload \
168    sg_write_buffer \
169    f2fs_io
170
171# The following modules are included in debuggable builds only.
172PRODUCT_PACKAGES_DEBUG += \
173    bootctl \
174    update_engine_client
175
176# Write flags to the vendor space in /misc partition.
177PRODUCT_PACKAGES += \
178    misc_writer
179
180PRODUCT_COPY_FILES += \
181    frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
182    frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
183    frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml\
184    frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml\
185    frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
186    frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \
187    frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
188    frameworks/native/data/etc/android.hardware.sensor.assist.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.assist.xml \
189    frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
190    frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
191    frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
192    frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
193    frameworks/native/data/etc/android.hardware.sensor.barometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.barometer.xml \
194    frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
195    frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml \
196    frameworks/native/data/etc/android.hardware.sensor.hifi_sensors.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.hifi_sensors.xml \
197    frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \
198    frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
199    frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
200    frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
201    frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
202    frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
203    frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
204    frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \
205    frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \
206    frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \
207    frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \
208    frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
209    frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
210    frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
211    frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
212    frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
213    frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
214    frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
215    frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \
216    frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute.xml \
217    frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \
218    frameworks/native/data/etc/android.hardware.telephony.carrierlock.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.carrierlock.xml \
219    frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
220    frameworks/native/data/etc/android.hardware.strongbox_keystore.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.strongbox_keystore.xml \
221    frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \
222
223# power HAL
224PRODUCT_PACKAGES += \
225    android.hardware.power@1.3-service.pixel-libperfmgr
226
227# powerstats HAL
228PRODUCT_PACKAGES += \
229    android.hardware.power.stats@1.0-service.pixel
230
231PRODUCT_COPY_FILES += \
232    $(LOCAL_PATH)/powerhint.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
233
234# perfstatsd
235PRODUCT_PACKAGES_DEBUG += \
236    perfstatsd
237
238# Audio fluence, ns, aec property, voice and media volume steps
239PRODUCT_PROPERTY_OVERRIDES += \
240    ro.vendor.audio.sdk.fluencetype=fluencepro \
241    persist.audio.fluence.voicecall=true \
242    persist.audio.fluence.speaker=true \
243    persist.audio.fluence.voicecomm=true \
244    persist.audio.fluence.voicerec=false \
245    persist.audio.dualmic.config=endfire \
246    persist.audio.in_mmap_delay_micros=100 \
247    persist.audio.out_mmap_delay_micros=150 \
248    ro.config.vc_call_vol_steps=7 \
249    ro.config.media_vol_steps=25 \
250
251# MaxxAudio effect and add rotation monitor
252PRODUCT_PROPERTY_OVERRIDES += \
253    ro.audio.monitorRotation=true
254
255PRODUCT_PACKAGES += \
256    libmalistener
257
258# graphics
259PRODUCT_PROPERTY_OVERRIDES += \
260    ro.opengles.version=196610
261
262PRODUCT_PROPERTY_OVERRIDES += \
263    ro.vendor.display.foss=1 \
264    ro.vendor.display.paneltype=2 \
265    ro.vendor.display.sensortype=2 \
266    vendor.display.foss.config=1 \
267    vendor.display.foss.config_path=/vendor/etc/FOSSConfig.xml
268
269# Add saturation parameters
270PRODUCT_PROPERTY_OVERRIDES += \
271    vendor.display.adaptive_saturation_parameter=1.1574,-0.0426,-0.0426,-0.143,1.057,-0.143,-0.0144,-0.0144,1.1856
272
273# b/73168288
274PRODUCT_PROPERTY_OVERRIDES += \
275    vendor.display.disable_rotator_downscale=1
276
277PRODUCT_PROPERTY_OVERRIDES += \
278    vendor.display.disable_inline_rotator=1
279
280# Enable camera EIS3.0
281PRODUCT_PROPERTY_OVERRIDES += \
282    persist.camera.is_type=5 \
283    persist.camera.gzoom.at=0
284
285# camera google face detection
286PRODUCT_PROPERTY_OVERRIDES += \
287    persist.camera.googfd.enable=1
288
289# Enable logical camera as default (camera id 1)
290PRODUCT_PROPERTY_OVERRIDES += \
291    persist.camera.logical.default=1
292
293# OEM Unlock reporting
294PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
295    ro.oem_unlock_supported=1
296
297PRODUCT_PROPERTY_OVERRIDES += \
298    persist.vendor.cne.feature=1 \
299    persist.vendor.data.iwlan.enable=true \
300    persist.radio.RATE_ADAPT_ENABLE=1 \
301    persist.radio.ROTATION_ENABLE=1 \
302    persist.radio.VT_ENABLE=1 \
303    persist.radio.VT_HYBRID_ENABLE=1 \
304    persist.vendor.radio.apm_sim_not_pwdn=1 \
305    persist.vendor.radio.custom_ecc=1 \
306    persist.vendor.radio.data_ltd_sys_ind=1 \
307    persist.radio.videopause.mode=1 \
308    persist.vendor.radio.multisim_switch_support=true \
309    persist.vendor.radio.sib16_support=1 \
310    persist.vendor.radio.data_con_rprt=true \
311    persist.vendor.radio.relay_oprt_change=1 \
312    persist.vendor.radio.sap_silent_pin=1 \
313    persist.vendor.radio.no_wait_for_card=1 \
314    persist.vendor.radio.manual_nw_rej_ct=1 \
315    persist.rcs.supported=1 \
316    vendor.rild.libpath=/vendor/lib64/libril-qc-hal-qmi.so \
317    ro.hardware.keystore_desede=true \
318    ro.zram.mark_idle_delay_mins=60 \
319    ro.zram.first_wb_delay_mins=180 \
320    ro.zram.periodic_wb_delay_hours=24 \
321
322# Enable reboot free DSDS
323PRODUCT_PRODUCT_PROPERTIES += \
324    persist.radio.reboot_on_modem_change=false
325
326PRODUCT_PROPERTY_OVERRIDES += \
327    telephony.active_modems.max_count=2
328
329# Disable snapshot timer
330PRODUCT_PROPERTY_OVERRIDES += \
331    persist.vendor.radio.snapshot_enabled=0 \
332    persist.vendor.radio.snapshot_timer=0
333
334# logical camera for dual front sensors
335PRODUCT_PROPERTY_OVERRIDES += \
336  persist.vendor.camera.multicam=1
337
338# WLAN driver configuration files
339PRODUCT_COPY_FILES += \
340    $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \
341    $(LOCAL_PATH)/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \
342    $(LOCAL_PATH)/wifi_concurrency_cfg.txt:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wifi_concurrency_cfg.txt \
343    $(LOCAL_PATH)/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/firmware/wlan/qca_cld/WCNSS_qcom_cfg.ini \
344
345PRODUCT_PACKAGES += \
346    hwcomposer.$(TARGET_CHIPSET) \
347    android.hardware.graphics.composer@2.2-service \
348    gralloc.$(TARGET_CHIPSET) \
349    android.hardware.graphics.mapper@2.0-impl-qti-display \
350    vendor.qti.hardware.display.allocator@1.0-service
351
352# RenderScript HAL
353PRODUCT_PACKAGES += \
354    android.hardware.renderscript@1.0-impl
355
356# Health HAL
357PRODUCT_PACKAGES += \
358    android.hardware.health@2.0-service.bonito
359
360# Storage health HAL
361PRODUCT_PACKAGES += \
362    android.hardware.health.storage@1.0-service
363
364# Light HAL
365PRODUCT_PACKAGES += \
366    lights.qcom \
367    android.hardware.light@2.0-impl \
368    android.hardware.light@2.0-service
369PRODUCT_PROPERTY_OVERRIDES += \
370    ro.hardware.lights=qcom
371
372# Memtrack HAL
373PRODUCT_PACKAGES += \
374    memtrack.$(TARGET_CHIPSET) \
375    android.hardware.memtrack@1.0-impl \
376    android.hardware.memtrack@1.0-service
377
378# Bluetooth HAL
379PRODUCT_PACKAGES += \
380    android.hardware.bluetooth@1.0-impl-qti \
381    android.hardware.bluetooth@1.0-service-qti
382
383# Bluetooth SoC
384PRODUCT_PROPERTY_OVERRIDES += \
385    vendor.qcom.bluetooth.soc=cherokee
386
387# Property for loading BDA from device tree
388PRODUCT_PROPERTY_OVERRIDES += \
389    ro.vendor.bt.bdaddr_path=/proc/device-tree/chosen/cdt/cdb2/bt_addr
390
391# Enable Perfetto traced
392PRODUCT_PRODUCT_PROPERTIES += \
393    persist.traced.enable=1
394
395# Bluetooth WiPower
396PRODUCT_PROPERTY_OVERRIDES += \
397    ro.vendor.bluetooth.emb_wp_mode=false \
398    ro.vendor.bluetooth.wipower=false
399
400# DRM HAL
401PRODUCT_PACKAGES += \
402    android.hardware.drm@1.0-impl \
403    android.hardware.drm@1.0-service \
404    android.hardware.drm@1.2-service.clearkey \
405    android.hardware.drm@1.2-service.widevine
406
407# NFC and Secure Element packages
408PRODUCT_PACKAGES += \
409    NfcNci \
410    Tag \
411    SecureElement \
412    android.hardware.nfc@1.2-service \
413    android.hardware.secure_element@1.1-service-disabled
414
415PRODUCT_COPY_FILES += \
416    device/google/bonito/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf \
417    device/google/bonito/nfc/libese-nxp.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libese-nxp.conf
418
419PRODUCT_COPY_FILES += \
420    frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020A/android.hardware.nfc.uicc.xml \
421    frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020B/android.hardware.nfc.uicc.xml \
422    frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020C/android.hardware.nfc.uicc.xml \
423    frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020D/android.hardware.nfc.ese.xml \
424    frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020D/android.hardware.se.omapi.ese.xml \
425    frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020E/android.hardware.nfc.uicc.xml \
426    frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020F/android.hardware.nfc.uicc.xml \
427    frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020G/android.hardware.nfc.uicc.xml \
428    frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020H/android.hardware.nfc.ese.xml \
429    frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/odm/etc/permissions/sku_G020D/android.hardware.se.omapi.ese.xml \
430
431PRODUCT_COPY_FILES += \
432    device/google/bonito/nfc/com.google.hardware.pixel.japan.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_G020D/com.google.hardware.pixel.japan.xml \
433    device/google/bonito/nfc/com.google.hardware.pixel.japan.xml:$(TARGET_COPY_OUT_ODM)/etc/permissions/sku_G020H/com.google.hardware.pixel.japan.xml
434
435PRODUCT_PACKAGES += \
436    android.hardware.usb@1.1-service.bonito
437
438PRODUCT_PACKAGES += \
439    libmm-omxcore \
440    libOmxCore \
441    libstagefrighthw \
442    libOmxVdec \
443    libOmxVdecHevc \
444    libOmxVenc \
445    libc2dcolorconvert
446
447# Enable Codec 2.0
448PRODUCT_PROPERTY_OVERRIDES += \
449    debug.media.codec2=2 \
450
451# Create input surface on the framework side
452PRODUCT_PROPERTY_OVERRIDES += \
453    debug.stagefright.c2inputsurface=-1 \
454
455PRODUCT_PACKAGES += \
456    libqcodec2 \
457    vendor.qti.media.c2@1.0-service \
458    media_codecs_c2.xml
459
460PRODUCT_PACKAGES += \
461    android.hardware.camera.provider@2.4-impl \
462    android.hardware.camera.provider@2.4-service_64 \
463    camera.device@3.2-impl \
464    camera.sdm710 \
465    libgooglecamerahal \
466    libgoogle_camera_hal_tests \
467    libqomx_core \
468    libmmjpeg_interface \
469    libmmcamera_interface \
470    libcameradepthcalibrator
471
472PRODUCT_PACKAGES += \
473    sensors.$(PRODUCT_HARDWARE) \
474    android.hardware.sensors@1.0-impl \
475    android.hardware.sensors@1.0-service
476
477PRODUCT_COPY_FILES += \
478    $(LOCAL_PATH)/sensors/hals.conf:vendor/etc/sensors/hals.conf
479
480# Default permission grant exceptions
481PRODUCT_COPY_FILES += \
482    device/google/bonito/default-permissions.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default-permissions/default-permissions.xml
483
484PRODUCT_PACKAGES += \
485    fs_config_dirs \
486    fs_config_files
487
488# Context hub HAL
489PRODUCT_PACKAGES += \
490    android.hardware.contexthub@1.0-impl.generic \
491    android.hardware.contexthub@1.0-service
492
493# Boot control HAL
494PRODUCT_PACKAGES += \
495    android.hardware.boot@1.0-impl \
496    android.hardware.boot@1.0-impl.recovery \
497    android.hardware.boot@1.0-service \
498
499# Vibrator HAL
500PRODUCT_PACKAGES += \
501    android.hardware.vibrator@1.2-service.bonito \
502
503# Thermal HAL
504PRODUCT_PACKAGES += \
505    android.hardware.thermal@2.0-service.pixel
506
507PRODUCT_COPY_FILES += \
508    $(LOCAL_PATH)/thermal_info_config_$(PRODUCT_HARDWARE).json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config.json
509
510#GNSS HAL
511PRODUCT_PACKAGES += \
512    libgps.utils \
513    libgnss \
514    liblocation_api \
515    android.hardware.gnss@1.1-impl-qti \
516    android.hardware.gnss@1.1-service-qti
517
518ENABLE_VENDOR_RIL_SERVICE := true
519
520PRODUCT_COPY_FILES += \
521    $(LOCAL_PATH)/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config
522
523
524HOSTAPD := hostapd
525HOSTAPD += hostapd_cli
526PRODUCT_PACKAGES += $(HOSTAPD)
527
528WPA := wpa_supplicant.conf
529WPA += wpa_supplicant_wcn.conf
530WPA += wpa_supplicant
531PRODUCT_PACKAGES += $(WPA)
532
533ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
534PRODUCT_PACKAGES += wpa_cli
535endif
536
537# Wifi
538PRODUCT_PACKAGES += \
539    android.hardware.wifi@1.0-service \
540    wificond \
541    libwpa_client
542
543LIB_NL := libnl_2
544PRODUCT_PACKAGES += $(LIB_NL)
545
546# Factory OTA
547PRODUCT_PACKAGES += \
548    FactoryOta
549
550# Audio effects
551PRODUCT_PACKAGES += \
552    libvolumelistener \
553    libqcomvisualizer \
554    libqcomvoiceprocessing \
555    libqcomvoiceprocessingdescriptors \
556    libqcompostprocbundle
557
558PRODUCT_PACKAGES += \
559    audio.primary.sdm710 \
560    audio.a2dp.default \
561    audio.usb.default \
562    audio.r_submix.default \
563    libaudio-resampler \
564    audio.hearing_aid.default \
565    audio.bluetooth.default
566
567PRODUCT_PACKAGES += \
568    android.hardware.audio@5.0-impl:32 \
569    android.hardware.audio.effect@5.0-impl:32 \
570    android.hardware.broadcastradio@1.0-impl \
571    android.hardware.soundtrigger@2.2-impl \
572    android.hardware.bluetooth.audio@2.0-impl \
573    android.hardware.audio@2.0-service
574
575ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
576PRODUCT_PACKAGES += \
577    tinyplay \
578    tinycap \
579    tinymix \
580    tinypcminfo \
581    cplay
582endif
583
584PRODUCT_COPY_FILES += \
585    $(LOCAL_PATH)/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
586    $(LOCAL_PATH)/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \
587    $(LOCAL_PATH)/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \
588    $(LOCAL_PATH)/bluetooth_hearing_aid_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_hearing_aid_audio_policy_configuration.xml \
589    $(LOCAL_PATH)/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
590    frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
591    frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \
592    frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration.xml \
593    frameworks/av/services/audiopolicy/config/hearing_aid_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/hearing_aid_audio_policy_configuration.xml \
594    frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \
595    frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
596    frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml
597
598# Audio XMLs
599PRODUCT_COPY_FILES += \
600    $(LOCAL_PATH)/mixer_paths_intcodec_b4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_intcodec_b4.xml \
601    $(LOCAL_PATH)/mixer_paths_intcodec_b4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_intcodec_b4dev.xml \
602    $(LOCAL_PATH)/audio_platform_info_intcodec_b4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec_b4.xml \
603    $(LOCAL_PATH)/audio_platform_info_intcodec_b4dev.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec_b4dev.xml \
604    $(LOCAL_PATH)/mixer_paths_intcodec_s4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_intcodec_s4.xml \
605    $(LOCAL_PATH)/mixer_paths_intcodec_s4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_intcodec_s4dev.xml \
606    $(LOCAL_PATH)/audio_platform_info_intcodec_s4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec_s4.xml \
607    $(LOCAL_PATH)/audio_platform_info_intcodec_s4dev.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec_s4dev.xml
608
609# audio hal tables
610PRODUCT_COPY_FILES += \
611    $(LOCAL_PATH)/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \
612    $(LOCAL_PATH)/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
613    $(LOCAL_PATH)/graphite_ipc_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/graphite_ipc_platform_info.xml \
614
615PRODUCT_COPY_FILES += \
616    $(LOCAL_PATH)/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
617    $(LOCAL_PATH)/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
618    frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
619    frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
620    $(LOCAL_PATH)/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
621    $(LOCAL_PATH)/media_codecs_omx.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_omx.xml
622
623# configures both aac and xaac decoders
624PRODUCT_COPY_FILES += \
625    device/google/bonito/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
626# and ensure that the xaac decoder is built
627PRODUCT_PACKAGES += \
628    libstagefright_soft_xaacdec.vendor
629
630PRODUCT_PROPERTY_OVERRIDES += \
631    audio.snd_card.open.retries=50
632
633PRODUCT_COPY_FILES += \
634    $(LOCAL_PATH)/lowi.conf:$(TARGET_COPY_OUT_VENDOR)/etc/lowi.conf
635
636# GPS configuration file
637PRODUCT_COPY_FILES += \
638    $(LOCAL_PATH)/gps.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gps.conf
639
640# Vendor seccomp policy files for media components:
641PRODUCT_COPY_FILES += \
642    $(LOCAL_PATH)/seccomp_policy/codec2.vendor.ext.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/codec2.vendor.ext.policy \
643    $(LOCAL_PATH)/seccomp_policy/mediacodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy
644
645ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
646# Subsystem ramdump
647PRODUCT_PROPERTY_OVERRIDES += \
648    persist.vendor.sys.ssr.enable_ramdumps=1
649endif
650
651# Subsystem silent restart
652PRODUCT_PROPERTY_OVERRIDES += \
653    persist.vendor.sys.ssr.restart_level=modem,slpi,adsp
654
655# setup dalvik vm configs
656$(call inherit-product, frameworks/native/build/phone-xhdpi-4096-dalvik-heap.mk)
657
658PRODUCT_COPY_FILES += \
659    device/google/bonito/fstab.hardware:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.$(PRODUCT_PLATFORM) \
660    device/google/bonito/fstab.hardware:$(TARGET_COPY_OUT_RECOVERY)/root/first_stage_ramdisk/fstab.$(PRODUCT_PLATFORM) \
661
662# Use the default charger mode images
663PRODUCT_PACKAGES += \
664    charger_res_images
665
666# b/36703476
667# Set default log size on userdebug/eng build to 1M
668ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
669PRODUCT_PROPERTY_OVERRIDES += ro.logd.size=1M
670endif
671
672# Dumpstate HAL
673PRODUCT_PACKAGES += \
674    android.hardware.dumpstate@1.0-service.bonito
675
676# Citadel
677PRODUCT_PACKAGES += \
678    citadeld \
679    citadel_updater \
680    android.hardware.authsecret@1.0-service.citadel \
681    android.hardware.oemlock@1.0-service.citadel \
682    android.hardware.weaver@1.0-service.citadel \
683    android.hardware.keymaster@4.0-service.citadel \
684    wait_for_strongbox
685
686# Citadel debug stuff
687PRODUCT_PACKAGES_DEBUG += \
688    test_citadel
689
690# Storage: for factory reset protection feature
691PRODUCT_PROPERTY_OVERRIDES += \
692    ro.frp.pst=/dev/block/bootdevice/by-name/frp
693
694PRODUCT_PACKAGES += \
695    vndk-sp
696
697# Override heap growth limit due to high display density on device
698PRODUCT_PROPERTY_OVERRIDES += \
699    dalvik.vm.heapgrowthlimit=256m
700
701# TODO(b/139369543): remove android.hidl.base@1.0 in next release (Q+1)
702PRODUCT_PACKAGES += \
703    android.hidl.base@1.0 \
704    android.hidl.base@1.0.vendor
705
706PRODUCT_PACKAGES += \
707    ipacm \
708    IPACM_cfg.xml
709
710#Set default CDMA subscription to RUIM
711PRODUCT_PROPERTY_OVERRIDES += \
712    ro.telephony.default_cdma_sub=0
713
714# Set display color mode to Automatic by default
715PRODUCT_PROPERTY_OVERRIDES += \
716    persist.sys.sf.color_saturation=1.0 \
717    persist.sys.sf.native_mode=2
718
719# Easel device feature
720PRODUCT_COPY_FILES += \
721    device/google/bonito/permissions/com.google.hardware.camera.easel_2018.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.google.hardware.camera.easel_2018.xml
722
723# ConfirmationUI HAL
724PRODUCT_PACKAGES += \
725    android.hardware.confirmationui@1.0-service-bonito
726
727# Fingerprint
728PRODUCT_PACKAGES += \
729    android.hardware.biometrics.fingerprint@2.1-service.fpc
730PRODUCT_COPY_FILES += \
731    $(LOCAL_PATH)/init.fingerprint.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.fingerprint.sh \
732
733# Reliability reporting
734PRODUCT_PACKAGES += \
735    pixelstats-vendor
736
737PRODUCT_COPY_FILES += \
738    frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
739
740# CS40L20 Haptics Waveform & Firmware
741PRODUCT_COPY_FILES += \
742    device/google/bonito/vibrator/cs40l20/cs40l20.wmfw:$(TARGET_COPY_OUT_VENDOR)/firmware/cs40l20.wmfw \
743    device/google/bonito/vibrator/cs40l20/cs40l20.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/cs40l20.bin
744
745PRODUCT_VENDOR_KERNEL_HEADERS := device/google/bonito/sdm710/kernel-headers
746
747# Audio ACDB data
748PRODUCT_COPY_FILES += \
749     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Bluetooth_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Bluetooth_cal.acdb \
750     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/General_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4-snd-card/General_cal.acdb \
751     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Global_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Global_cal.acdb \
752     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Handset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Handset_cal.acdb \
753     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Hdmi_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Hdmi_cal.acdb \
754     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Headset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Headset_cal.acdb \
755     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Speaker_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Speaker_cal.acdb \
756     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Bluetooth_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Bluetooth_cal.acdb \
757     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/General_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4-snd-card/General_cal.acdb \
758     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Global_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Global_cal.acdb \
759     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Handset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Handset_cal.acdb \
760     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Hdmi_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Hdmi_cal.acdb \
761     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Headset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Headset_cal.acdb \
762     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Speaker_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Speaker_cal.acdb \
763     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Bluetooth_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4dev-snd-card/Bluetooth_cal.acdb \
764     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/General_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4dev-snd-card/General_cal.acdb \
765     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Global_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4dev-snd-card/Global_cal.acdb \
766     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Handset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4dev-snd-card/Handset_cal.acdb \
767     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Hdmi_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4dev-snd-card/Hdmi_cal.acdb \
768     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Headset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4dev-snd-card/Headset_cal.acdb \
769     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Speaker_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4dev-snd-card/Speaker_cal.acdb \
770     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Bluetooth_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4dev-snd-card/Bluetooth_cal.acdb \
771     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/General_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4dev-snd-card/General_cal.acdb \
772     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Global_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4dev-snd-card/Global_cal.acdb \
773     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Handset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4dev-snd-card/Handset_cal.acdb \
774     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Hdmi_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4dev-snd-card/Hdmi_cal.acdb \
775     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Headset_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4dev-snd-card/Headset_cal.acdb \
776     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/Speaker_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4dev-snd-card/Speaker_cal.acdb \
777     device/google/bonito/acdbdata/adsp_avs_config.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/adsp_avs_config.acdb
778
779# Audio ACDB workspace files for QACT
780ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
781PRODUCT_COPY_FILES += \
782     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/workspaceFile.qwsp:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4-snd-card/workspaceFile.qwsp \
783     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/workspaceFile.qwsp:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4-snd-card/workspaceFile.qwsp \
784     device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/workspaceFile.qwsp:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4dev-snd-card/workspaceFile.qwsp \
785     device/google/bonito/acdbdata/OEM/sdm670-intcodec-s4-snd-card/workspaceFile.qwsp:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-s4dev-snd-card/workspaceFile.qwsp
786endif
787
788# CS35L36 Speaker Tuning
789PRODUCT_COPY_FILES += \
790    device/google/bonito/audio/crus_sp_config_b4_rx.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/crus_sp_config_b4_rx.bin \
791    device/google/bonito/audio/crus_sp_config_b4_tx.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/crus_sp_config_b4_tx.bin \
792    device/google/bonito/audio/crus_sp_config_s4_rx.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/crus_sp_config_s4_rx.bin \
793    device/google/bonito/audio/crus_sp_config_s4_tx.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/crus_sp_config_s4_tx.bin
794
795# RT5514 SoundTrigger
796PRODUCT_COPY_FILES += \
797    device/google/bonito/audio/rt5514_dsp_fw1.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw1.bin \
798    device/google/bonito/audio/rt5514_dsp_fw2.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw2.bin \
799    device/google/bonito/audio/rt5514_dsp_fw3.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw3.bin \
800    device/google/bonito/audio/rt5514_dsp_fw4.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw4.bin
801
802# Keymaster configuration
803PRODUCT_COPY_FILES += \
804    frameworks/native/data/etc/android.software.device_id_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_id_attestation.xml
805
806# Enable modem logging
807PRODUCT_PROPERTY_OVERRIDES += \
808    ro.radio.log_loc="/data/vendor/modem_dump" \
809    ro.radio.log_prefix="modem_log_"
810
811# Enable modem logging for debug
812ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
813PRODUCT_PROPERTY_OVERRIDES += \
814    persist.vendor.sys.modem.diag.mdlog=true \
815    persist.vendor.sys.modem.diag.mdlog_br_num=5
816else
817endif
818
819# Enable tcpdump_logger on userdebug and eng
820ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
821    PRODUCT_PROPERTY_OVERRIDES += \
822        persist.vendor.tcpdump.log.alwayson=false \
823        persist.vendor.tcpdump.log.br_num=5
824endif
825
826# Preopt SystemUI
827PRODUCT_DEXPREOPT_SPEED_APPS += \
828    SystemUIGoogle
829
830# Enable stats logging in LMKD
831TARGET_LMKD_STATS_LOG := true
832
833# default usb oem functions
834ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
835  PRODUCT_PROPERTY_OVERRIDES += \
836      persist.vendor.usb.usbradio.config=diag
837endif
838
839#Enable QTI KEYMASTER and GATEKEEPER HIDLs
840KMGK_USE_QTI_SERVICE := true
841
842#Clear the variable
843TARGET_CHIPSET := ""
844
845# Early phase offset configuration for SurfaceFlinger
846PRODUCT_PROPERTY_OVERRIDES += \
847    debug.sf.early_phase_offset_ns=1500000
848PRODUCT_PROPERTY_OVERRIDES += \
849    debug.sf.early_app_phase_offset_ns=1500000
850PRODUCT_PROPERTY_OVERRIDES += \
851    debug.sf.early_gl_phase_offset_ns=3000000
852PRODUCT_PROPERTY_OVERRIDES += \
853    debug.sf.early_gl_app_phase_offset_ns=15000000
854
855# Enable backpressure for GL comp
856PRODUCT_PROPERTY_OVERRIDES += \
857    debug.sf.enable_gl_backpressure=1
858
859# Do not skip init trigger by default
860PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
861    vendor.skip.init=0
862
863# pixel atrace HAL
864PRODUCT_PACKAGES += \
865    android.hardware.atrace@1.0-service.pixel
866
867# fastbootd
868PRODUCT_PACKAGES += \
869    android.hardware.fastboot@1.0-impl.pixel \
870    fastbootd
871
872# GTS ACSA(Agreement for Carrier Service Application) verification
873PRODUCT_PRODUCT_PROPERTIES += \
874    ro.com.google.acsa=true
875
876# Increment the SVN for any official public releases
877PRODUCT_PROPERTY_OVERRIDES += \
878	ro.vendor.build.svn=25
879