• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Copyright (C) 2018 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# define hardware platform
18PRODUCT_PLATFORM := sm7250
19
20LOCAL_PATH := device/google/redbull
21
22PRODUCT_VENDOR_MOVE_ENABLED := true
23TARGET_BOARD_PLATFORM := lito
24
25PRODUCT_SOONG_NAMESPACES += \
26    hardware/google/av \
27    hardware/google/camera \
28    hardware/google/interfaces \
29    hardware/google/pixel \
30    device/google/redbull \
31    hardware/qcom/sm7250 \
32    vendor/google/airbrush/floral \
33    vendor/google/biometrics/face/florence \
34    vendor/google/darwinn \
35    hardware/qcom/sm7250/display \
36    vendor/google/camera \
37    vendor/qcom/sm7250 \
38    vendor/google/interfaces \
39    vendor/google_devices/common/proprietary/confirmatioui_hal \
40    vendor/google_nos/host/android \
41    vendor/google_nos/test/system-test-harness
42
43# Include GPS soong namespace
44PRODUCT_SOONG_NAMESPACES += \
45    hardware/qcom/sm7250/gps \
46    vendor/qcom/sm7250/proprietary/gps \
47    vendor/qcom/sm7250/codeaurora/location
48
49# Include sensors soong namespace
50PRODUCT_SOONG_NAMESPACES += \
51    vendor/qcom/sensors \
52    vendor/google/tools/sensors
53
54# Single vendor RIL/Telephony/data with SM7250
55  PRODUCT_SOONG_NAMESPACES += \
56      vendor/qcom/sm7250/codeaurora/commonsys/telephony/ims/ims-ext-common \
57      vendor/qcom/sm7250/codeaurora/dataservices/rmnetctl \
58      vendor/qcom/sm7250/proprietary/commonsys/qcrilOemHook \
59      vendor/qcom/sm7250/proprietary/commonsys/telephony-apps/ims \
60      vendor/qcom/sm7250/proprietary/commonsys/telephony-apps/QtiTelephonyService \
61      vendor/qcom/sm7250/proprietary/commonsys/telephony-apps/xdivert \
62      vendor/qcom/sm7250/proprietary/qcril-data-hal \
63      vendor/qcom/sm7250/proprietary/qcril-hal \
64      vendor/qcom/sm7250/proprietary/data
65
66PRODUCT_PROPERTY_OVERRIDES += \
67    keyguard.no_require_sim=true
68
69# enable cal by default on accel sensor
70PRODUCT_PRODUCT_PROPERTIES += \
71    persist.vendor.debug.sensors.accel_cal=1
72
73PRODUCT_PRODUCT_PROPERTIES += \
74    persist.vendor.testing_battery_profile=2
75
76# The default value of this variable is false and should only be set to true when
77# the device allows users to retain eSIM profiles after factory reset of user data.
78PRODUCT_PRODUCT_PROPERTIES += \
79    masterclear.allow_retain_esim_profiles_after_fdr=true
80
81PRODUCT_COPY_FILES += \
82    device/google/redbull/default-permissions.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/default-permissions/default-permissions.xml \
83    device/google/redbull/component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/component-overrides.xml \
84    frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \
85    frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml
86
87# Enforce privapp-permissions whitelist
88PRODUCT_PROPERTY_OVERRIDES += \
89    ro.control_privapp_permissions=enforce
90
91PRODUCT_PACKAGES += \
92    messaging \
93
94TARGET_PRODUCT_PROP := $(LOCAL_PATH)/product.prop
95
96$(call inherit-product, $(LOCAL_PATH)/utils.mk)
97
98# Installs gsi keys into ramdisk, to boot a developer GSI with verified boot.
99$(call inherit-product, $(SRC_TARGET_DIR)/product/developer_gsi_keys.mk)
100
101PRODUCT_CHARACTERISTICS := nosdcard
102PRODUCT_SHIPPING_API_LEVEL := 30
103BOARD_SHIPPING_API_LEVEL := 30
104
105DEVICE_PACKAGE_OVERLAYS += $(LOCAL_PATH)/overlay
106
107PRODUCT_COPY_FILES += \
108    $(LOCAL_KERNEL):kernel \
109    $(LOCAL_PATH)/fstab.hardware:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/first_stage_ramdisk/fstab.$(PRODUCT_PLATFORM) \
110    $(LOCAL_PATH)/fstab.hardware:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.$(PRODUCT_PLATFORM) \
111    $(LOCAL_PATH)/fstab.persist:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.persist \
112    $(LOCAL_PATH)/init.hardware.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).rc \
113    $(LOCAL_PATH)/init.modem.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.modem.sh \
114    $(LOCAL_PATH)/init.power.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).power.rc \
115    $(LOCAL_PATH)/init.radio.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.radio.sh \
116    $(LOCAL_PATH)/init.hardware.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).usb.rc \
117    $(LOCAL_PATH)/init.insmod.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.insmod.sh \
118    $(LOCAL_PATH)/init.sensors.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.sensors.sh \
119    $(LOCAL_PATH)/ueventd.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
120		$(LOCAL_PATH)/init.ramoops.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.ramoops.sh
121
122
123MSM_VIDC_TARGET_LIST := lito # Get the color format from kernel headers
124MASTER_SIDE_CP_TARGET_LIST := lito # ION specific settings
125
126ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
127  PRODUCT_COPY_FILES += \
128      $(LOCAL_PATH)/init.hardware.mpssrfs.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).mpssrfs.rc
129  PRODUCT_COPY_FILES += \
130      $(LOCAL_PATH)/init.hardware.diag.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).diag.rc
131  PRODUCT_COPY_FILES += \
132      $(LOCAL_PATH)/init.hardware.ipa.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.$(PRODUCT_PLATFORM).ipa.rc
133else
134  PRODUCT_COPY_FILES += \
135      $(LOCAL_PATH)/init.hardware.mpssrfs.rc.user:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).mpssrfs.rc
136  PRODUCT_COPY_FILES += \
137      $(LOCAL_PATH)/init.hardware.diag.rc.user:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).diag.rc
138endif
139
140# A/B support
141PRODUCT_PACKAGES += \
142    otapreopt_script \
143    cppreopts.sh \
144    update_engine \
145    update_verifier
146
147PRODUCT_PACKAGES += \
148    linker.vendor_ramdisk \
149    tune2fs.vendor_ramdisk \
150    resize2fs.vendor_ramdisk
151
152# Use Sdcardfs
153PRODUCT_PRODUCT_PROPERTIES += \
154    ro.sys.sdcardfs=1
155
156# Use FUSE passthrough
157PRODUCT_PRODUCT_PROPERTIES += \
158    persist.sys.fuse.passthrough.enable=true
159
160PRODUCT_PACKAGES += \
161    bootctrl.lito \
162    bootctrl.lito.recovery
163
164PRODUCT_PROPERTY_OVERRIDES += \
165    ro.cp_system_other_odex=1
166
167AB_OTA_POSTINSTALL_CONFIG += \
168    RUN_POSTINSTALL_system=true \
169    POSTINSTALL_PATH_system=system/bin/otapreopt_script \
170    FILESYSTEM_TYPE_system=ext4 \
171    POSTINSTALL_OPTIONAL_system=true
172
173PRODUCT_PACKAGES += \
174    update_engine_sideload
175
176PRODUCT_PACKAGES_DEBUG += \
177    sg_write_buffer \
178    f2fs_io \
179    check_f2fs
180
181PRODUCT_PROPERTY_OVERRIDES += \
182    ro.crypto.volume.filenames_mode=aes-256-cts
183
184AB_OTA_POSTINSTALL_CONFIG += \
185    RUN_POSTINSTALL_vendor=true \
186    POSTINSTALL_PATH_vendor=bin/checkpoint_gc \
187    FILESYSTEM_TYPE_vendor=ext4 \
188    POSTINSTALL_OPTIONAL_vendor=true
189
190# Userdata Checkpointing OTA GC
191PRODUCT_PACKAGES += \
192    checkpoint_gc
193
194# Context hub HAL
195PRODUCT_PACKAGES += \
196    android.hardware.contexthub@1.2-service.generic
197
198# CHRE tools
199ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
200PRODUCT_PACKAGES += \
201    chre_power_test_client \
202    chre_test_client
203endif
204
205# Enable project quotas and casefolding for emulated storage without sdcardfs
206$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)
207
208# The following modules are included in debuggable builds only.
209PRODUCT_PACKAGES_DEBUG += \
210    bootctl \
211    r.vendor \
212    update_engine_client
213
214PRODUCT_COPY_FILES += \
215    frameworks/native/data/etc/android.hardware.camera.concurrent.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.concurrent.xml \
216    frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
217    frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
218    frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml\
219    frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml\
220    frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
221    frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \
222    frameworks/native/data/etc/android.hardware.context_hub.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.context_hub.xml \
223    frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \
224    frameworks/native/data/etc/android.hardware.reboot_escrow.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.reboot_escrow.xml \
225    frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
226    frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
227    frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
228    frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
229    frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
230    frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
231    frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \
232    frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \
233    frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \
234    frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \
235    frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
236    frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
237    frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
238    frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
239    frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
240    frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
241    frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
242    frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \
243    frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute.xml \
244    frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \
245    frameworks/native/data/etc/android.software.vulkan.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml \
246    frameworks/native/data/etc/android.software.opengles.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \
247    frameworks/native/data/etc/android.hardware.telephony.carrierlock.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.carrierlock.xml \
248    frameworks/native/data/etc/android.hardware.strongbox_keystore.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.strongbox_keystore.xml \
249    frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
250    frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \
251    frameworks/native/data/etc/android.hardware.se.omapi.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.ese.xml \
252    frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml
253
254# Audio fluence, ns, aec property, voice and media volume steps
255PRODUCT_PROPERTY_OVERRIDES += \
256    ro.vendor.audio.sdk.fluencetype=fluencepro \
257    persist.vendor.audio.fluence.voicecall=true \
258    persist.vendor.audio.fluence.speaker=true \
259    persist.vendor.audio.fluence.voicecomm=true \
260    persist.vendor.audio.fluence.voicerec=false \
261    ro.config.vc_call_vol_steps=7 \
262    ro.config.media_vol_steps=25 \
263
264# Audio Features
265PRODUCT_PROPERTY_OVERRIDES += \
266    vendor.audio.feature.external_dsp.enable=true \
267    vendor.audio.feature.external_speaker.enable=true \
268    vendor.audio.feature.concurrent_capture.enable=false \
269    vendor.audio.feature.a2dp_offload.enable=true \
270    vendor.audio.feature.hfp.enable=true \
271    vendor.audio.feature.hwdep_cal.enable=true \
272    vendor.audio.feature.incall_music.enable=true \
273    vendor.audio.feature.maxx_audio.enable=true \
274    vendor.audio.feature.spkr_prot.enable=true \
275    vendor.audio.feature.usb_offload.enable=true \
276    vendor.audio.feature.audiozoom.enable=true \
277    vendor.audio.feature.snd_mon.enable=true \
278    vendor.audio.feature.multi_voice_session.enable=true \
279    vendor.audio.capture.enforce_legacy_copp_sr=true \
280    vendor.audio.offload.buffer.size.kb=256 \
281    persist.vendor.audio_hal.dsp_bit_width_enforce_mode=24 \
282    vendor.audio.offload.gapless.enabled=true \
283
284# MaxxAudio effect and add rotation monitor
285PRODUCT_PROPERTY_OVERRIDES += \
286    ro.audio.monitorRotation=true
287
288# Iaxxx streming and factory binary
289PRODUCT_PACKAGES += \
290    libtunnel \
291    libodsp \
292    adnc_strm.primary.default \
293    sound_trigger.primary.lito
294
295# Add Oslo test for debug rom
296ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
297PRODUCT_PACKAGES += \
298    tunneling_hal_test \
299    sensor_param_test \
300    oslo_config_test \
301    odsp_api_test \
302    crash_event_logger \
303    dump_debug_info \
304    get_pwr_stats \
305    crash_trigger_test
306endif
307
308# graphics
309PRODUCT_PROPERTY_OVERRIDES += \
310    ro.opengles.version=196610
311
312PRODUCT_PROPERTY_OVERRIDES += \
313    ro.vendor.display.paneltype=2 \
314    ro.vendor.display.sensortype=1 \
315    vendor.display.enable_async_powermode=0 \
316    vendor.display.qdcm.mode_combine=1 \
317    vendor.display.lbe.supported=1
318
319# vndservicemanager has been removed from API30 devices (aosp/1235751)
320# but we still need it for display services.
321PRODUCT_PACKAGES += \
322    vndservicemanager
323
324# camera google face detection
325PRODUCT_PROPERTY_OVERRIDES += \
326    persist.camera.googfd.enable=1
327
328# camera hal buffer management
329PRODUCT_PROPERTY_OVERRIDES += \
330    persist.camera.managebuffer.enable=1
331
332# camera enable RT thread
333PRODUCT_PROPERTY_OVERRIDES += \
334    persist.vendor.camera.realtimethread=1
335
336# Lets the vendor library that Google Camera HWL is enabled
337PRODUCT_PROPERTY_OVERRIDES += \
338    persist.camera.google_hwl.enabled=true \
339    persist.camera.google_hwl.name=libgooglecamerahwl_impl.so
340
341# camera common HWL
342CAMERA_COMMON_HWL := true
343
344# OEM Unlock reporting
345PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
346    ro.oem_unlock_supported=1
347
348PRODUCT_PROPERTY_OVERRIDES += \
349    persist.vendor.cne.feature=1 \
350    persist.vendor.data.iwlan.enable=true \
351    persist.vendor.radio.RATE_ADAPT_ENABLE=1 \
352    persist.vendor.radio.ROTATION_ENABLE=1 \
353    persist.vendor.radio.VT_ENABLE=1 \
354    persist.vendor.radio.VT_HYBRID_ENABLE=1 \
355    persist.vendor.radio.apm_sim_not_pwdn=1 \
356    persist.vendor.radio.custom_ecc=1 \
357    persist.vendor.radio.data_ltd_sys_ind=1 \
358    persist.vendor.radio.videopause.mode=1 \
359    persist.vendor.radio.mt_sms_ack=30 \
360    persist.vendor.radio.multisim_switch_support=true \
361    persist.vendor.radio.sib16_support=1 \
362    persist.vendor.radio.data_con_rprt=true \
363    persist.vendor.radio.relay_oprt_change=1 \
364    persist.vendor.radio.no_wait_for_card=1 \
365    persist.vendor.radio.sap_silent_pin=1 \
366    persist.vendor.radio.manual_nw_rej_ct=1 \
367    persist.rcs.supported=1 \
368    vendor.rild.libpath=/vendor/lib64/libril-qc-hal-qmi.so \
369    ro.hardware.keystore_desede=true \
370    persist.vendor.radio.procedure_bytes=SKIP \
371    persist.vendor.radio.hidl_dev_service=true \
372
373# Enable reboot free DSDS
374PRODUCT_PRODUCT_PROPERTIES += \
375    persist.radio.reboot_on_modem_change=false
376
377PRODUCT_PROPERTY_OVERRIDES += \
378    telephony.active_modems.max_count=2
379
380# Disable snapshot timer
381PRODUCT_PROPERTY_OVERRIDES += \
382    persist.vendor.radio.snapshot_enabled=0 \
383    persist.vendor.radio.snapshot_timer=0
384
385# RenderScript HAL
386PRODUCT_PACKAGES += \
387    android.hardware.renderscript@1.0-impl
388
389# Light HAL
390PRODUCT_PACKAGES += \
391    lights.lito
392
393# Memtrack HAL
394PRODUCT_PACKAGES += \
395    memtrack.lito \
396    android.hardware.memtrack@1.0-impl \
397    android.hardware.memtrack@1.0-service
398
399# Bluetooth HAL
400PRODUCT_PACKAGES += \
401    android.hardware.bluetooth@1.0-impl-qti \
402    android.hardware.bluetooth@1.0-service-qti
403
404#Bluetooth SAR HAL
405PRODUCT_PACKAGES += \
406    hardware.google.bluetooth.sar@1.0-impl
407PRODUCT_PACKAGES_DEBUG += \
408    bluetooth_sar_test
409
410#Bluetooth AFH HAL
411PRODUCT_PACKAGES += \
412    hardware.google.bluetooth.bt_channel_avoidance@1.0-impl
413
414# Bluetooth SoC
415PRODUCT_PROPERTY_OVERRIDES += \
416    vendor.qcom.bluetooth.soc=cherokee
417
418# Property for loading BDA from device tree
419PRODUCT_PROPERTY_OVERRIDES += \
420    ro.vendor.bt.bdaddr_path=/proc/device-tree/chosen/cdt/cdb2/bt_addr
421
422# Bluetooth WiPower
423PRODUCT_PROPERTY_OVERRIDES += \
424    ro.vendor.bluetooth.emb_wp_mode=false \
425    ro.vendor.bluetooth.wipower=false
426
427# DRM HAL
428PRODUCT_PACKAGES += \
429    android.hardware.drm@1.4-service.clearkey \
430    android.hardware.drm@1.4-service.widevine
431
432# NFC and Secure Element packages
433PRODUCT_PACKAGES += \
434    NfcNci \
435    Tag \
436    SecureElement \
437    android.hardware.nfc@1.2-service.st \
438    android.hardware.secure_element@1.2-service.st
439
440PRODUCT_COPY_FILES += \
441    device/google/redbull/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \
442    device/google/redbull/nfc/libese-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libese-hal-st.conf \
443    device/google/redbull/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf
444
445PRODUCT_PACKAGES += \
446    android.hardware.health@2.1-impl-redbull \
447    android.hardware.health@2.1-service
448
449# Storage health HAL
450PRODUCT_PACKAGES += \
451    android.hardware.health.storage@1.0-service
452
453PRODUCT_PACKAGES += \
454    libmm-omxcore \
455    libOmxCore \
456    libstagefrighthw \
457    libOmxVdec \
458    libOmxVdecHevc \
459    libOmxVenc \
460    libc2dcolorconvert
461
462# Enable Codec 2.0
463PRODUCT_PACKAGES += \
464    libqcodec2_base \
465    libqcodec2_utils \
466    libqcodec2_platform \
467    libqcodec2_core \
468    libqcodec2_basecodec \
469    libqcodec2_v4l2codec \
470    vendor.qti.media.c2@1.0-service \
471    codec2.vendor.ext-arm64.policy \
472    codec2.vendor.base-arm64.policy
473
474PRODUCT_PROPERTY_OVERRIDES += \
475    debug.stagefright.omx_default_rank=512
476
477# Create input surface on the framework side
478PRODUCT_PROPERTY_OVERRIDES += \
479    debug.stagefright.c2inputsurface=-1 \
480
481# Disable OMX
482PRODUCT_PROPERTY_OVERRIDES += \
483    vendor.media.omx=0 \
484
485# Enable ECO service
486QC2_HAVE_ECO_SERVICE := true
487
488PRODUCT_PROPERTY_OVERRIDES += \
489    vendor.qc2.venc.avgqp.enable=1
490
491# To reach target bitrate in CBR mode for IMS VT Call
492PRODUCT_PROPERTY_OVERRIDES += \
493    persist.vendor.ims.mm_minqp=1
494
495PRODUCT_PACKAGES += \
496    android.hardware.camera.provider@2.7-impl-google \
497    android.hardware.camera.provider@2.7-service-google \
498    camera.lito \
499    lib_multicam_dualfov_capture_session \
500    libgooglecamerahwl_impl \
501    libqomx_core \
502    libmmjpeg_interface \
503    libmmcamera_interface \
504    libcameradepthcalibrator
505
506# Google Camera HAL test libraries in debug builds
507PRODUCT_PACKAGES_DEBUG += \
508    libgoogle_camera_hal_proprietary_tests \
509    libgoogle_camera_hal_tests
510
511PRODUCT_PACKAGES += \
512    fs_config_dirs \
513    fs_config_files
514
515# Boot control HAL
516PRODUCT_PACKAGES += \
517    android.hardware.boot@1.2-impl-pixel-legacy \
518    android.hardware.boot@1.2-impl-pixel-legacy.recovery \
519    android.hardware.boot@1.2-service \
520
521#GNSS HAL
522PRODUCT_PACKAGES += \
523    libgps.utils \
524    libgnss \
525    libloc_core \
526    liblocation_api \
527    libbatching \
528    libgeofencing \
529    android.hardware.gnss@2.1-impl-qti \
530    android.hardware.gnss@2.1-service-qti
531
532ENABLE_VENDOR_RIL_SERVICE := true
533
534USE_QCRIL_OEMHOOK := true
535
536HOSTAPD := hostapd
537ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
538HOSTAPD += hostapd_cli
539endif
540PRODUCT_PACKAGES += $(HOSTAPD)
541
542WPA := wpa_supplicant.conf
543WPA += wpa_supplicant_wcn.conf
544WPA += wpa_supplicant
545PRODUCT_PACKAGES += $(WPA)
546
547ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
548PRODUCT_PACKAGES += wpa_cli
549endif
550
551# Wifi
552PRODUCT_PACKAGES += \
553    android.hardware.wifi@1.0-service \
554    wificond \
555    libwpa_client \
556    WifiOverlay
557
558# Connectivity
559PRODUCT_PACKAGES += \
560    ConnectivityOverlay
561
562# WLAN driver configuration files
563PRODUCT_COPY_FILES += \
564    $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \
565    $(LOCAL_PATH)/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \
566    $(LOCAL_PATH)/wifi_concurrency_cfg.txt:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wifi_concurrency_cfg.txt \
567    $(LOCAL_PATH)/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/firmware/wlan/qca_cld/WCNSS_qcom_cfg.ini \
568
569LIB_NL := libnl_2
570PRODUCT_PACKAGES += $(LIB_NL)
571
572# Audio effects
573PRODUCT_PACKAGES += \
574    libvolumelistener \
575    libqcomvisualizer \
576    libqcomvoiceprocessing \
577    libqcompostprocbundle
578
579PRODUCT_PACKAGES += \
580    audio.primary.lito \
581    audio.a2dp.default \
582    audio.usb.default \
583    audio.r_submix.default \
584    libaudio-resampler \
585    audio.hearing_aid.default \
586    audio.bluetooth.default
587
588PRODUCT_PACKAGES += \
589    android.hardware.audio@7.0-impl:32 \
590    android.hardware.audio.effect@7.0-impl:32 \
591    android.hardware.soundtrigger@2.3-impl \
592    android.hardware.bluetooth.audio@2.0-impl \
593    android.hardware.audio.service
594
595# Modules for Audio HAL
596PRODUCT_PACKAGES += \
597    libcirrusspkrprot \
598    libsndmonitor \
599    liba2dpoffload \
600    btaudio_offload_if \
601    libthermallistener \
602    libmaxxaudio \
603    libaudiozoom \
604    libdevicestatelistener
605
606ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
607PRODUCT_PACKAGES += \
608    tinyplay \
609    tinycap \
610    tinymix \
611    tinypcminfo \
612    cplay
613endif
614
615# Audio hal xmls
616PRODUCT_COPY_FILES += \
617    $(LOCAL_PATH)/audio/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml
618
619# Cirrus calibration xml
620PRODUCT_COPY_FILES += \
621    $(LOCAL_PATH)/audio/crus_sp_cal_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/crus_sp_cal_mixer_paths.xml
622
623# Audio Policy tables
624PRODUCT_COPY_FILES += \
625    $(LOCAL_PATH)/bluetooth_hearing_aid_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_hearing_aid_audio_policy_configuration.xml \
626    $(LOCAL_PATH)/audio/audio_configs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs.xml \
627    $(LOCAL_PATH)/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
628    $(LOCAL_PATH)/audio/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_io_policy.conf
629
630# Audio ACDB data
631
632# Audio ACDB workspace files for QACT
633
634# Audio speaker tunning config data
635
636# Audio audiozoom config data
637
638# RT5514 SoundTrigger
639PRODUCT_COPY_FILES += \
640    device/google/redbull/audio/rt5514_dsp_fw1.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw1.bin \
641    device/google/redbull/audio/rt5514_dsp_fw2.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw2.bin \
642    device/google/redbull/audio/rt5514_dsp_fw3.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw3.bin \
643    device/google/redbull/audio/rt5514_dsp_fw4.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw4.bin \
644    device/google/redbull/audio/rt5514p_dsp_fw1.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514p_dsp_fw1.bin \
645    device/google/redbull/audio/rt5514p_dsp_fw2.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514p_dsp_fw2.bin \
646    device/google/redbull/audio/rt5514p_dsp_fw3.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514p_dsp_fw3.bin \
647    device/google/redbull/audio/rt5514p_dsp_fw4.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514p_dsp_fw4.bin
648
649PRODUCT_COPY_FILES += \
650    $(LOCAL_PATH)/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
651    $(LOCAL_PATH)/media_codecs_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \
652    $(LOCAL_PATH)/media_codecs_performance_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_c2.xml \
653    $(LOCAL_PATH)/media_codecs_omx.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_omx.xml \
654    $(LOCAL_PATH)/video_system_specs.json:$(TARGET_COPY_OUT_VENDOR)/etc/video_system_specs.json \
655    frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
656    frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
657    frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
658    $(LOCAL_PATH)/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml
659
660# Vendor seccomp policy files for media components:
661PRODUCT_COPY_FILES += \
662    $(LOCAL_PATH)/seccomp_policy/mediacodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy
663
664PRODUCT_PROPERTY_OVERRIDES += \
665    vendor.audio.snd_card.open.retries=50
666
667
668ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
669# Subsystem ramdump
670PRODUCT_PROPERTY_OVERRIDES += \
671    persist.vendor.sys.ssr.enable_ramdumps=1
672endif
673
674# Subsystem silent restart
675PRODUCT_PROPERTY_OVERRIDES += \
676    persist.vendor.sys.ssr.restart_level=modem,adsp
677
678ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
679# Sensor debug flag
680PRODUCT_PROPERTY_OVERRIDES += \
681    persist.vendor.debug.ash.logger=0 \
682    persist.vendor.debug.ash.logger.time=0
683endif
684
685# setup dalvik vm configs
686$(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk)
687
688# Use the default charger mode images
689PRODUCT_PACKAGES += \
690    charger_res_images
691
692ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
693# b/36703476: Set default log size to 1M
694PRODUCT_PROPERTY_OVERRIDES += \
695  ro.logd.size=1M
696# b/114766334: persist all logs by default rotating on 30 files of 1MiB
697PRODUCT_PROPERTY_OVERRIDES += \
698  logd.logpersistd=logcatd \
699  logd.logpersistd.size=30
700endif
701
702# Storage: for factory reset protection feature
703PRODUCT_PROPERTY_OVERRIDES += \
704    ro.frp.pst=/dev/block/bootdevice/by-name/frp
705
706PRODUCT_PACKAGES += \
707    vndk-sp
708
709# Override heap growth limit due to high display density on device
710PRODUCT_PROPERTY_OVERRIDES += \
711    dalvik.vm.heapgrowthlimit=256m
712
713# Use 64-bit dex2oat for better dexopt time.
714PRODUCT_PROPERTY_OVERRIDES += \
715    dalvik.vm.dex2oat64.enabled=true
716
717PRODUCT_PACKAGES += \
718    ipacm \
719    IPACM_cfg.xml
720
721#Set default CDMA subscription to RUIM
722PRODUCT_PROPERTY_OVERRIDES += \
723    ro.telephony.default_cdma_sub=0
724
725# Set network mode to Global (NR 5G, LTE, CDMA, EvDo, GSM and WCDMA) by default and no DSDS/DSDA
726PRODUCT_PROPERTY_OVERRIDES += ro.telephony.default_network=27
727
728# Set display color mode to Adaptive by default
729PRODUCT_PROPERTY_OVERRIDES += \
730    persist.sys.sf.color_saturation=1.0 \
731    persist.sys.sf.native_mode=2 \
732    persist.sys.sf.color_mode=9
733
734# Keymaster configuration
735PRODUCT_COPY_FILES += \
736    frameworks/native/data/etc/android.software.device_id_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_id_attestation.xml \
737    frameworks/native/data/etc/android.hardware.device_unique_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.device_unique_attestation.xml
738
739# Enable modem logging
740PRODUCT_PROPERTY_OVERRIDES += \
741    ro.vendor.radio.log_loc="/data/vendor/modem_dump" \
742    ro.vendor.radio.log_prefix="modem_log_"
743
744# Enable modem logging for debug
745ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
746PRODUCT_PROPERTY_OVERRIDES += \
747    persist.vendor.sys.modem.diag.mdlog=true
748else
749PRODUCT_PROPERTY_OVERRIDES += \
750    persist.vendor.sys.modem.diag.mdlog=false
751endif
752PRODUCT_PROPERTY_OVERRIDES += \
753    persist.vendor.sys.modem.diag.mdlog_br_num=5
754
755# Enable tcpdump_logger on userdebug and eng
756ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
757    PRODUCT_PROPERTY_OVERRIDES += \
758        persist.vendor.tcpdump.log.alwayson=false \
759        persist.vendor.tcpdump.log.br_num=5
760endif
761
762# Preopt SystemUI
763PRODUCT_DEXPREOPT_SPEED_APPS += \
764    SystemUIGoogle
765
766# Enable stats logging in LMKD
767TARGET_LMKD_STATS_LOG := true
768
769PRODUCT_COPY_FILES += \
770    $(LOCAL_PATH)/init.gadgethal.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.gadgethal.sh
771
772# default usb oem functions
773ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
774  PRODUCT_PROPERTY_OVERRIDES += \
775      persist.vendor.usb.usbradio.config=diag
776endif
777
778# Enable app/sf phase offset as durations. The numbers below are translated from the existing
779# positive offsets by finding the duration app/sf will have with the offsets.
780# For SF the previous value was 6ms which under 16.6ms vsync time (60Hz) will leave SF with ~10.5ms
781# for each frame. For App the previous value was 2ms which under 16.6ms vsync time will leave the
782# App with ~20.5ms (16.6ms * 2 - 10.5ms - 2ms). The other values were calculated similarly.
783# Full comparison between the old vs. the new values are captured in
784# https://docs.google.com/spreadsheets/d/1a_5cVNY3LUAkeg-yL56rYQNwved6Hy-dvEcKSxp6f8k/edit
785
786PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.use_phase_offsets_as_durations=1
787PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.late.sf.duration=10500000
788PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.late.app.duration=20500000
789PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.early.sf.duration=16000000
790PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.early.app.duration=16500000
791PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.earlyGl.sf.duration=13500000
792PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.earlyGl.app.duration=21000000
793
794# Do not skip init trigger by default
795PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
796    vendor.skip.init=0
797
798# Enable backpressure for GL comp
799PRODUCT_PROPERTY_OVERRIDES += \
800    debug.sf.enable_gl_backpressure=1
801
802BOARD_USES_QCNE := true
803
804PRODUCT_COPY_FILES += \
805    $(LOCAL_PATH)/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config
806
807# GPS configuration file
808PRODUCT_COPY_FILES += \
809    $(LOCAL_PATH)/gps.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gps.conf
810
811# dynamic partition
812PRODUCT_USE_DYNAMIC_PARTITIONS := true
813
814# Use /product/etc/fstab.postinstall to mount system_other
815PRODUCT_PRODUCT_PROPERTIES += \
816    ro.postinstall.fstab.prefix=/product
817
818PRODUCT_COPY_FILES += \
819    $(LOCAL_PATH)/fstab.postinstall:$(TARGET_COPY_OUT_PRODUCT)/etc/fstab.postinstall
820
821# powerstats HAL
822PRODUCT_PACKAGES += \
823    android.hardware.power.stats@1.0-service.pixel
824
825QTI_TELEPHONY_UTILS := qti-telephony-utils
826QTI_TELEPHONY_UTILS += qti_telephony_utils.xml
827PRODUCT_PACKAGES += $(QTI_TELEPHONY_UTILS)
828
829HIDL_WRAPPER := qti-telephony-hidl-wrapper
830HIDL_WRAPPER += qti_telephony_hidl_wrapper.xml
831HIDL_WRAPPER += qti-telephony-hidl-wrapper-prd
832HIDL_WRAPPER += qti_telephony_hidl_wrapper_prd.xml
833PRODUCT_PACKAGES += $(HIDL_WRAPPER)
834
835# Increment the SVN for any official public releases
836ifeq ($(PRODUCT_DEVICE_SVN_OVERRIDE),)
837PRODUCT_PROPERTY_OVERRIDES += \
838	ro.vendor.build.svn=35
839endif
840
841# Enable iwlan service logging for debug
842ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
843    PRODUCT_PROPERTY_OVERRIDES += persist.vendor.iwlan.logging.logcat=true
844endif
845
846PRODUCT_COPY_FILES += \
847    $(LOCAL_PATH)/powerhint.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json
848
849PRODUCT_COPY_FILES += \
850    $(LOCAL_PATH)/task_profiles.json:$(TARGET_COPY_OUT_VENDOR)/etc/task_profiles.json
851
852# Set Vendor SPL to match platform
853VENDOR_SECURITY_PATCH = $(PLATFORM_SECURITY_PATCH)
854
855PRODUCT_PROPERTY_OVERRIDES += vendor.audio.adm.buffering.ms=2
856PRODUCT_PROPERTY_OVERRIDES += vendor.audio_hal.period_multiplier=2
857PRODUCT_PROPERTY_OVERRIDES += af.fast_track_multiplier=1
858
859# Enable AAudio MMAP/NOIRQ data path.
860# 1 is AAUDIO_POLICY_NEVER  means only use Legacy path.
861# 2 is AAUDIO_POLICY_AUTO   means try MMAP then fallback to Legacy path.
862# 3 is AAUDIO_POLICY_ALWAYS means only use MMAP path.
863PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_policy=2
864# 1 is AAUDIO_POLICY_NEVER  means only use SHARED mode
865# 2 is AAUDIO_POLICY_AUTO   means try EXCLUSIVE then fallback to SHARED mode.
866# 3 is AAUDIO_POLICY_ALWAYS means only use EXCLUSIVE mode.
867PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_exclusive_policy=2
868
869# Increase the apparent size of a hardware burst from 1 msec to 2 msec.
870# A "burst" is the number of frames processed at one time.
871# That is an increase from 48 to 96 frames at 48000 Hz.
872# The DSP will still be bursting at 48 frames but AAudio will think the burst is 96 frames.
873# A low number, like 48, might increase power consumption or stress the system.
874PRODUCT_PROPERTY_OVERRIDES += aaudio.hw_burst_min_usec=2000
875
876# A2DP offload enabled for compilation
877AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
878
879# A2DP offload supported
880PRODUCT_PROPERTY_OVERRIDES += \
881ro.bluetooth.a2dp_offload.supported=true
882
883# A2DP offload disabled (UI toggle property)
884PRODUCT_PROPERTY_OVERRIDES += \
885persist.bluetooth.a2dp_offload.disabled=false
886
887# A2DP offload DSP supported encoder list
888PRODUCT_PROPERTY_OVERRIDES += \
889persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac
890
891# Enable AAC frame ctl for A2DP sinks
892PRODUCT_PROPERTY_OVERRIDES += \
893persist.vendor.bt.aac_frm_ctl.enabled=true
894
895# Enable VBR frame ctl
896PRODUCT_PROPERTY_OVERRIDES += \
897persist.vendor.bt.aac_vbr_frm_ctl.enabled=true
898
899# Set lmkd options
900PRODUCT_PRODUCT_PROPERTIES += \
901        ro.config.low_ram = false \
902        ro.lmk.log_stats = true \
903
904# charger
905PRODUCT_PRODUCT_PROPERTIES += \
906	ro.charger.enable_suspend=true
907
908# Modem logging file
909PRODUCT_COPY_FILES += \
910    device/google/redbull/init.logging.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).logging.rc
911
912# Pixelstats broken mic detection
913PRODUCT_PROPERTY_OVERRIDES += vendor.audio.mic_break=true
914
915PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.use_color_management=true
916PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.has_wide_color_display=true
917PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.has_HDR_display=true
918
919# Audio low latency feature
920PRODUCT_COPY_FILES += \
921    frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml
922
923# Pro audio feature
924PRODUCT_COPY_FILES += \
925    frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml
926
927# Must align with HAL types Dataspace
928# The data space of wide color gamut composition preference is Dataspace::DISPLAY_P3
929PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.wcg_composition_dataspace=143261696
930
931# MIDI feature
932PRODUCT_COPY_FILES += \
933    frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml
934
935# Set thermal warm reset
936PRODUCT_PRODUCT_PROPERTIES += \
937    ro.thermal_warmreset = true \
938
939# Vendor verbose logging default property
940ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
941PRODUCT_PROPERTY_OVERRIDES += \
942    persist.vendor.verbose_logging_enabled=true
943else
944PRODUCT_PROPERTY_OVERRIDES += \
945    persist.vendor.verbose_logging_enabled=false
946endif
947
948# Disable Rescue Party on userdebug & eng build
949ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
950PRODUCT_PRODUCT_PROPERTIES += \
951    persist.sys.disable_rescue=true
952endif
953
954# Set support one-handed mode
955PRODUCT_PRODUCT_PROPERTIES += \
956    ro.support_one_handed_mode=true
957
958# Enable Incremental on the device via kernel module
959PRODUCT_PROPERTY_OVERRIDES += \
960        ro.incremental.enable=module:/vendor/lib/modules/incrementalfs.ko
961
962# Enforce generic ramdisk allow list
963$(call inherit-product, $(SRC_TARGET_DIR)/product/generic_ramdisk.mk)
964
965# Enable watchdog timeout loop breaker.
966PRODUCT_PROPERTY_OVERRIDES += \
967    framework_watchdog.fatal_window.second=600 \
968    framework_watchdog.fatal_count=3
969
970# Set system properties identifying the chipset
971PRODUCT_VENDOR_PROPERTIES += ro.soc.manufacturer=Qualcomm
972PRODUCT_VENDOR_PROPERTIES += ro.soc.model=SM7250
973
974# Include the redbull product FCM
975# (TODO: b/169535506) This includes the FCM for system_ext and product partition.
976# Vendor Freeze system-only builds use a different FCM.
977ifneq ($(PRODUCT_VENDOR_FREEZE_SYSTEM_BUILD),true)
978PRODUCT_PACKAGES += redbull_product_compatibility_matrix.xml
979endif
980
981#################################################################################
982# This is the End of device-common.mk file.
983# Now, Pickup other split device-common.mk files:
984#################################################################################
985
986# Display
987-include hardware/qcom/sm7250/display/config/display-product.mk
988-include vendor/qcom/sm7250/proprietary/display/config/display-product-proprietary.mk
989
990# Security
991-include vendor/qcom/sm7250/proprietary/securemsm/config/keymaster_vendor_proprietary_board.mk
992-include vendor/qcom/sm7250/proprietary/securemsm/config/keymaster_vendor_proprietary_product.mk
993-include vendor/qcom/sm7250/proprietary/securemsm/config/cpz_vendor_proprietary_board.mk
994-include vendor/qcom/sm7250/proprietary/securemsm/config/cpz_vendor_proprietary_product.mk
995-include vendor/qcom/sm7250/proprietary/securemsm/config/smcinvoke_vendor_proprietary_product.mk
996-include vendor/qcom/sm7250/proprietary/commonsys/securemsm/securemsm_system_product.mk
997
998# RIL
999-include vendor/qcom/sm7250/proprietary/commonsys-intf/data/data_commonsys-intf_vendor_product.mk
1000
1001# Sensor
1002ifneq ($(wildcard vendor/google/tools),)
1003    ENABLE_SENSOR_SSC_FOR_SOONG := true
1004endif
1005-include vendor/qcom/sm7250/proprietary/sensors-see/build_config/sns_vendor_board.mk
1006-include vendor/qcom/sm7250/proprietary/sensors-see/build_config/sns_vendor_product.mk
1007
1008# Project
1009include hardware/google/pixel/common/pixel-common-device.mk
1010
1011# Citadel
1012include hardware/google/pixel/citadel/citadel.mk
1013
1014# Factory OTA
1015-include vendor/google/factoryota/client/factoryota.mk
1016
1017# storage
1018-include hardware/google/pixel/pixelstats/device.mk
1019
1020# thermal
1021-include hardware/google/pixel/thermal/device.mk
1022
1023# power HAL
1024-include hardware/google/pixel/power-libperfmgr/aidl/device.mk
1025
1026# mm_event
1027-include hardware/google/pixel/mm/device.mk
1028
1029# Pixel Logger
1030include hardware/google/pixel/PixelLogger/PixelLogger.mk
1031
1032ifneq ($(wildcard vendor/qcom/sm7250/proprietary/prebuilt_grease),)
1033-include $(LOCAL_PATH)/redbull_allowlist.mk
1034endif
1035#################################################################################
1036