# # Copyright (C) 2018 The Android Open-Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # # define hardware platform PRODUCT_PLATFORM := sm7250 LOCAL_PATH := device/google/redbull PRODUCT_VENDOR_MOVE_ENABLED := true TARGET_BOARD_PLATFORM := lito PRODUCT_SOONG_NAMESPACES += \ hardware/google/av \ hardware/google/interfaces \ hardware/google/pixel \ device/google/redbull \ hardware/qcom/sm7250 \ vendor/google/airbrush/floral \ vendor/google/biometrics/face \ vendor/google/darwinn \ hardware/qcom/sm7250/display \ vendor/google/camera \ vendor/qcom/sm7250 \ vendor/google/interfaces PRODUCT_PROPERTY_OVERRIDES += \ keyguard.no_require_sim=true # enable cal by default on accel sensor PRODUCT_PRODUCT_PROPERTIES += \ persist.vendor.debug.sensors.accel_cal=1 # The default value of this variable is false and should only be set to true when # the device allows users to retain eSIM profiles after factory reset of user data. PRODUCT_PRODUCT_PROPERTIES += \ masterclear.allow_retain_esim_profiles_after_fdr=true PRODUCT_COPY_FILES += \ device/google/redbull/default-permissions.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/default-permissions/default-permissions.xml \ frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \ frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/android.software.verified_boot.xml PRODUCT_PACKAGES += \ messaging TARGET_PRODUCT_PROP := $(LOCAL_PATH)/product.prop $(call inherit-product, $(LOCAL_PATH)/utils.mk) # Installs gsi keys into ramdisk, to boot a GSI with verified boot. $(call inherit-product, $(SRC_TARGET_DIR)/product/gsi_keys.mk) # Installs gsi keys into ramdisk, to boot a developer GSI with verified boot. $(call inherit-product, $(SRC_TARGET_DIR)/product/developer_gsi_keys.mk) PRODUCT_CHARACTERISTICS := nosdcard PRODUCT_SHIPPING_API_LEVEL := 28 DEVICE_PACKAGE_OVERLAYS += $(LOCAL_PATH)/overlay PRODUCT_COPY_FILES += \ $(LOCAL_KERNEL):kernel \ $(LOCAL_PATH)/fstab.hardware:$(TARGET_COPY_OUT_RECOVERY)/root/first_stage_ramdisk/fstab.$(PRODUCT_PLATFORM) \ $(LOCAL_PATH)/fstab.hardware:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.$(PRODUCT_PLATFORM) \ $(LOCAL_PATH)/fstab.persist:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.persist \ $(LOCAL_PATH)/init.hardware.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).rc \ $(LOCAL_PATH)/init.power.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).power.rc \ $(LOCAL_PATH)/init.radio.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.radio.sh \ $(LOCAL_PATH)/init.hardware.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).usb.rc \ $(LOCAL_PATH)/init.insmod.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.insmod.sh \ $(LOCAL_PATH)/init.sensors.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.sensors.sh \ $(LOCAL_PATH)/sensors.hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf \ $(LOCAL_PATH)/ueventd.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc MSM_VIDC_TARGET_LIST := lito # Get the color format from kernel headers MASTER_SIDE_CP_TARGET_LIST := lito # ION specific settings ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/init.hardware.mpssrfs.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).mpssrfs.rc PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/init.hardware.diag.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).diag.rc PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/init.hardware.chamber.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.$(PRODUCT_PLATFORM).chamber.rc PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/init.hardware.ipa.rc.userdebug:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.$(PRODUCT_PLATFORM).ipa.rc else PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/init.hardware.mpssrfs.rc.user:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).mpssrfs.rc PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/init.hardware.diag.rc.user:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).diag.rc endif # A/B support PRODUCT_PACKAGES += \ otapreopt_script \ cppreopts.sh \ update_engine \ update_verifier # Use Sdcardfs PRODUCT_PRODUCT_PROPERTIES += \ ro.sys.sdcardfs=1 PRODUCT_PACKAGES += \ bootctrl.lito PRODUCT_PROPERTY_OVERRIDES += \ ro.cp_system_other_odex=1 AB_OTA_POSTINSTALL_CONFIG += \ RUN_POSTINSTALL_system=true \ POSTINSTALL_PATH_system=system/bin/otapreopt_script \ FILESYSTEM_TYPE_system=ext4 \ POSTINSTALL_OPTIONAL_system=true # Enable update engine sideloading by including the static version of the # boot_control HAL and its dependencies. PRODUCT_STATIC_BOOT_CONTROL_HAL := \ bootctrl.lito \ libgptutils \ libz \ libcutils PRODUCT_PACKAGES += \ update_engine_sideload \ sg_write_buffer \ f2fs_io \ check_f2fs AB_OTA_POSTINSTALL_CONFIG += \ RUN_POSTINSTALL_vendor=true \ POSTINSTALL_PATH_vendor=bin/checkpoint_gc \ FILESYSTEM_TYPE_vendor=ext4 \ POSTINSTALL_OPTIONAL_vendor=true # Userdata Checkpointing OTA GC PRODUCT_PACKAGES += \ checkpoint_gc # The following modules are included in debuggable builds only. PRODUCT_PACKAGES_DEBUG += \ bootctl \ r.vendor \ update_engine_client # Write flags to the vendor space in /misc partition. PRODUCT_PACKAGES += \ misc_writer PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \ frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml\ frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml\ frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \ frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \ frameworks/native/data/etc/android.hardware.biometrics.face.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.biometrics.face.xml\ frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \ frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \ frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \ frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \ frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \ frameworks/native/data/etc/android.hardware.sensor.barometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.barometer.xml \ frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \ frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml \ frameworks/native/data/etc/android.hardware.sensor.hifi_sensors.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.hifi_sensors.xml \ frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \ frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \ frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \ frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \ frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \ frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \ frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \ frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \ frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \ frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \ frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \ frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \ frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \ frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \ frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \ frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \ frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \ frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute.xml \ frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \ frameworks/native/data/etc/android.hardware.telephony.carrierlock.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.carrierlock.xml \ frameworks/native/data/etc/android.hardware.strongbox_keystore.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.strongbox_keystore.xml \ frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \ frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml # Audio fluence, ns, aec property, voice and media volume steps PRODUCT_PROPERTY_OVERRIDES += \ ro.vendor.audio.sdk.fluencetype=fluencepro \ persist.vendor.audio.fluence.voicecall=true \ persist.vendor.audio.fluence.speaker=true \ persist.vendor.audio.fluence.voicecomm=true \ persist.vendor.audio.fluence.voicerec=false \ ro.config.vc_call_vol_steps=7 \ ro.config.media_vol_steps=25 \ # Audio Features PRODUCT_PROPERTY_OVERRIDES += \ vendor.audio.feature.external_dsp.enable=true \ vendor.audio.feature.external_speaker.enable=true \ vendor.audio.feature.concurrent_capture.enable=false \ vendor.audio.feature.a2dp_offload.enable=true \ vendor.audio.feature.hfp.enable=true \ vendor.audio.feature.hwdep_cal.enable=true \ vendor.audio.feature.incall_music.enable=true \ vendor.audio.feature.maxx_audio.enable=true \ vendor.audio.feature.spkr_prot.enable=true \ vendor.audio.feature.usb_offload.enable=true \ vendor.audio.feature.audiozoom.enable=true \ vendor.audio.feature.snd_mon.enable=true \ # MaxxAudio effect and add rotation monitor PRODUCT_PROPERTY_OVERRIDES += \ ro.audio.monitorRotation=true # Iaxxx streming and factory binary PRODUCT_PACKAGES += \ libtunnel \ libodsp \ adnc_strm.primary.default \ sound_trigger.primary.lito # Add Oslo test for debug rom ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) PRODUCT_PACKAGES += \ tunneling_hal_test \ sensor_param_test \ oslo_config_test \ odsp_api_test \ crash_event_logger \ dump_debug_info \ get_pwr_stats \ crash_trigger_test endif # graphics PRODUCT_PROPERTY_OVERRIDES += \ ro.opengles.version=196610 PRODUCT_PROPERTY_OVERRIDES += \ ro.vendor.display.foss=1 \ ro.vendor.display.paneltype=2 \ ro.vendor.display.sensortype=2 \ vendor.display.foss.config=1 \ vendor.display.foss.config_path=/vendor/etc/FOSSConfig.xml \ vendor.display.enable_async_powermode=0 # camera google face detection PRODUCT_PROPERTY_OVERRIDES += \ persist.camera.googfd.enable=1 # camera disable FaceSSD temporarily PRODUCT_PROPERTY_OVERRIDES += \ persist.camera.facessd.enable=0 # camera hal buffer management PRODUCT_PROPERTY_OVERRIDES += \ persist.camera.managebuffer.enable=0 # Lets the vendor library that Google Camera HWL is enabled PRODUCT_PROPERTY_OVERRIDES += \ persist.camera.google_hwl.enabled=true \ persist.camera.google_hwl.name=libgooglecamerahwl_impl.so # camera common HWL CAMERA_COMMON_HWL := true # OEM Unlock reporting PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ ro.oem_unlock_supported=1 PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.cne.feature=1 \ persist.vendor.data.iwlan.enable=true \ persist.vendor.radio.RATE_ADAPT_ENABLE=1 \ persist.vendor.radio.ROTATION_ENABLE=1 \ persist.vendor.radio.VT_ENABLE=1 \ persist.vendor.radio.VT_HYBRID_ENABLE=1 \ persist.vendor.radio.apm_sim_not_pwdn=1 \ persist.vendor.radio.custom_ecc=1 \ persist.vendor.radio.data_ltd_sys_ind=1 \ persist.vendor.radio.videopause.mode=1 \ persist.vendor.radio.multisim_switch_support=true \ persist.vendor.radio.sib16_support=1 \ persist.vendor.radio.data_con_rprt=true \ persist.vendor.radio.relay_oprt_change=1 \ persist.vendor.radio.no_wait_for_card=1 \ persist.vendor.radio.sap_silent_pin=1 \ persist.vendor.radio.manual_nw_rej_ct=1 \ persist.rcs.supported=1 \ vendor.rild.libpath=/vendor/lib64/libril-qc-hal-qmi.so \ ro.hardware.keystore_desede=true \ # Disable snapshot timer PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.radio.snapshot_enabled=0 \ persist.vendor.radio.snapshot_timer=0 # Enable USB debugging by default for bringup PRODUCT_PROPERTY_OVERRIDES += \ persist.sys.usb.config=adb # RenderScript HAL PRODUCT_PACKAGES += \ android.hardware.renderscript@1.0-impl # Health HAL PRODUCT_PACKAGES += \ android.hardware.health@2.0-service # Light HAL PRODUCT_PACKAGES += \ lights.lito \ hardware.google.light@1.0-service # Memtrack HAL PRODUCT_PACKAGES += \ memtrack.lito \ android.hardware.memtrack@1.0-impl \ android.hardware.memtrack@1.0-service # Bluetooth HAL PRODUCT_PACKAGES += \ android.hardware.bluetooth@1.0-impl-qti \ android.hardware.bluetooth@1.0-service-qti #Bluetooth SAR HAL PRODUCT_PACKAGES += \ vendor.qti.hardware.bluetooth_sar@1.0-impl # Bluetooth SoC PRODUCT_PROPERTY_OVERRIDES += \ vendor.qcom.bluetooth.soc=cherokee # Property for loading BDA from device tree PRODUCT_PROPERTY_OVERRIDES += \ ro.vendor.bt.bdaddr_path=/proc/device-tree/chosen/cdt/cdb2/bt_addr # Bluetooth WiPower PRODUCT_PROPERTY_OVERRIDES += \ ro.vendor.bluetooth.emb_wp_mode=false \ ro.vendor.bluetooth.wipower=false # DRM HAL PRODUCT_PACKAGES += \ android.hardware.drm@1.0-impl \ android.hardware.drm@1.0-service \ android.hardware.drm@1.2-service.clearkey \ android.hardware.drm@1.2-service.widevine # NFC and Secure Element packages PRODUCT_PACKAGES += \ NfcNci \ Tag \ SecureElement \ android.hardware.nfc@1.2-service.st \ android.hardware.secure_element@1.0-service.st PRODUCT_COPY_FILES += \ device/google/redbull/nfc/libnfc-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-hal-st.conf \ device/google/redbull/nfc/libese-hal-st.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libese-hal-st.conf \ device/google/redbull/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf # Storage health HAL PRODUCT_PACKAGES += \ android.hardware.health.storage@1.0-service PRODUCT_PACKAGES += \ libmm-omxcore \ libOmxCore \ libstagefrighthw \ libOmxVdec \ libOmxVdecHevc \ libOmxVenc \ libc2dcolorconvert # Enable Codec 2.0 PRODUCT_PACKAGES += \ libqcodec2 \ vendor.qti.media.c2@1.0-service \ PRODUCT_PACKAGES += \ android.hardware.camera.provider@2.4-impl-google \ android.hardware.camera.provider@2.4-service-google \ camera.lito \ libgooglecamerahal \ libgooglecamerahwl_impl \ libgoogle_camera_hal_tests \ libqomx_core \ libmmjpeg_interface \ libmmcamera_interface \ libcameradepthcalibrator PRODUCT_PACKAGES += \ android.hardware.sensors@2.0-impl \ android.hardware.sensors@2.0-service \ android.hardware.sensors@2.0-service.rc PRODUCT_PACKAGES += \ fs_config_dirs \ fs_config_files # Context hub HAL PRODUCT_PACKAGES += \ android.hardware.contexthub@1.0-impl.generic \ android.hardware.contexthub@1.0-service # Boot control HAL PRODUCT_PACKAGES += \ android.hardware.boot@1.0-impl \ android.hardware.boot@1.0-service \ # Thermal HAL PRODUCT_PACKAGES += \ android.hardware.thermal@2.0-service.pixel \ #GNSS HAL PRODUCT_PACKAGES += \ libgps.utils \ libgnss \ liblocation_api \ android.hardware.gnss@2.0-impl-qti \ android.hardware.gnss@2.0-service-qti # Wireless Charger HAL PRODUCT_PACKAGES += \ vendor.google.wireless_charger@1.0 ENABLE_VENDOR_RIL_SERVICE := true HOSTAPD := hostapd HOSTAPD += hostapd_cli PRODUCT_PACKAGES += $(HOSTAPD) WPA := wpa_supplicant.conf WPA += wpa_supplicant_wcn.conf WPA += wpa_supplicant PRODUCT_PACKAGES += $(WPA) ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) PRODUCT_PACKAGES += wpa_cli endif # Wifi PRODUCT_PACKAGES += \ android.hardware.wifi@1.0-service \ wificond \ libwpa_client # WLAN driver configuration files PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \ $(LOCAL_PATH)/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \ $(LOCAL_PATH)/wifi_concurrency_cfg.txt:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wifi_concurrency_cfg.txt \ $(LOCAL_PATH)/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/firmware/wlan/qca_cld/WCNSS_qcom_cfg.ini \ LIB_NL := libnl_2 PRODUCT_PACKAGES += $(LIB_NL) # Factory OTA PRODUCT_PACKAGES += \ FactoryOta # Audio effects PRODUCT_PACKAGES += \ libvolumelistener \ libqcomvisualizer \ libqcomvoiceprocessing \ libqcompostprocbundle PRODUCT_PACKAGES += \ audio.primary.lito \ audio.a2dp.default \ audio.usb.default \ audio.r_submix.default \ libaudio-resampler \ audio.hearing_aid.default \ audio.bluetooth.default PRODUCT_PACKAGES += \ android.hardware.audio@5.0-impl:32 \ android.hardware.audio.effect@5.0-impl:32 \ android.hardware.broadcastradio@1.0-impl \ android.hardware.soundtrigger@2.2-impl \ android.hardware.bluetooth.audio@2.0-impl \ android.hardware.audio@2.0-service # Modules for Audio HAL PRODUCT_PACKAGES += \ libcirrusspkrprot \ libsndmonitor \ libmalistener \ liba2dpoffload \ btaudio_offload_if \ libmaxxaudio \ libaudiozoom ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) PRODUCT_PACKAGES += \ tinyplay \ tinycap \ tinymix \ tinypcminfo \ cplay endif # Audio hal xmls PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/audio/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml \ $(LOCAL_PATH)/audio/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml # Audio Policy tables PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ $(LOCAL_PATH)/audio_policy_configuration_a2dp_offload_disabled.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_a2dp_offload_disabled.xml \ $(LOCAL_PATH)/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \ $(LOCAL_PATH)/bluetooth_hearing_aid_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_hearing_aid_audio_policy_configuration.xml \ $(LOCAL_PATH)/audio/audio_configs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_configs.xml \ $(LOCAL_PATH)/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \ $(LOCAL_PATH)/audio/audio_io_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_io_policy.conf # Audio ACDB data # Audio ACDB workspace files for QACT # Audio speaker tunning config data # Audio audiozoom config data # RT5514 SoundTrigger PRODUCT_COPY_FILES += \ device/google/redbull/audio/rt5514_dsp_fw1.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw1.bin \ device/google/redbull/audio/rt5514_dsp_fw2.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw2.bin \ device/google/redbull/audio/rt5514_dsp_fw3.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw3.bin \ device/google/redbull/audio/rt5514_dsp_fw4.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514_dsp_fw4.bin \ device/google/redbull/audio/rt5514p_dsp_fw1.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514p_dsp_fw1.bin \ device/google/redbull/audio/rt5514p_dsp_fw2.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514p_dsp_fw2.bin \ device/google/redbull/audio/rt5514p_dsp_fw3.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514p_dsp_fw3.bin \ device/google/redbull/audio/rt5514p_dsp_fw4.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/rt5514p_dsp_fw4.bin # and ensure that the xaac decoder is built PRODUCT_PACKAGES += \ libstagefright_soft_xaacdec.vendor PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \ $(LOCAL_PATH)/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml # Vendor seccomp policy files for media components: PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/seccomp_policy/mediacodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy PRODUCT_PROPERTY_OVERRIDES += \ audio.snd_card.open.retries=50 ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) # Subsystem ramdump PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.sys.ssr.enable_ramdumps=1 endif # Subsystem silent restart PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.sys.ssr.restart_level=modem,adsp,slpi ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) # Sensor debug flag PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.debug.ash.logger=0 \ persist.vendor.debug.ash.logger.time=0 endif # setup dalvik vm configs $(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk) # Use the default charger mode images PRODUCT_PACKAGES += \ charger_res_images ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) # b/36703476: Set default log size to 1M PRODUCT_PROPERTY_OVERRIDES += \ ro.logd.size=1M # b/114766334: persist all logs by default rotating on 30 files of 1MiB PRODUCT_PROPERTY_OVERRIDES += \ logd.logpersistd=logcatd \ logd.logpersistd.size=30 endif # Citadel # # Set CITADEL_LAZY_PSK_SYNC to true on projects with faceauth, otherwise false. # # EVT devices left the factory without being provisioned, # and thus the shared authtoken key is yet to be established. # Since faceauth HAT enforcement fails without the preshared # authtoken, auto-sync it in the field for userdebug/eng. # Please refer to b/135295587 for more detail. # CITADEL_LAZY_PSK_SYNC := false PRODUCT_PACKAGES += \ citadeld \ citadel_updater \ android.hardware.authsecret@1.0-service.citadel \ android.hardware.oemlock@1.0-service.citadel \ android.hardware.weaver@1.0-service.citadel \ android.hardware.keymaster@4.0-service.citadel \ wait_for_strongbox # Citadel debug stuff PRODUCT_PACKAGES_DEBUG += \ test_citadel # Storage: for factory reset protection feature PRODUCT_PROPERTY_OVERRIDES += \ ro.frp.pst=/dev/block/bootdevice/by-name/frp PRODUCT_PACKAGES += \ vndk-sp PRODUCT_ENFORCE_RRO_TARGETS := * # Override heap growth limit due to high display density on device PRODUCT_PROPERTY_OVERRIDES += \ dalvik.vm.heapgrowthlimit=256m PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/hidl/android.hidl.base@1.0.so-32:system/lib/android.hidl.base@1.0.so \ $(LOCAL_PATH)/hidl/android.hidl.base@1.0.so-64:system/lib64/android.hidl.base@1.0.so \ $(LOCAL_PATH)/hidl/android.hidl.base@1.0.so-32:vendor/lib/android.hidl.base@1.0.so \ $(LOCAL_PATH)/hidl/android.hidl.base@1.0.so-64:vendor/lib64/android.hidl.base@1.0.so \ PRODUCT_PACKAGES += \ ipacm \ IPACM_cfg.xml #Set default CDMA subscription to RUIM PRODUCT_PROPERTY_OVERRIDES += \ ro.telephony.default_cdma_sub=0 # Set display color mode to Boosted by default PRODUCT_PROPERTY_OVERRIDES += \ persist.sys.sf.color_saturation=1.1 \ persist.sys.sf.native_mode=0 \ persist.sys.sf.color_mode=0 # Keymaster configuration PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.software.device_id_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_id_attestation.xml # Enable modem logging PRODUCT_PROPERTY_OVERRIDES += \ ro.vendor.radio.log_loc="/data/vendor/modem_dump" \ ro.vendor.radio.log_prefix="modem_log_" # Enable modem logging for debug ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.sys.modem.diag.mdlog=true \ persist.vendor.sys.modem.diag.mdlog_br_num=5 else endif # Preopt SystemUI PRODUCT_DEXPREOPT_SPEED_APPS += \ SystemUIGoogle # Enable stats logging in LMKD TARGET_LMKD_STATS_LOG := true PRODUCT_PRODUCT_PROPERTIES += \ ro.lmk.log_stats=true # default usb oem functions ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.usb.usbradio.config=diag endif # Early phase offset configuration for SurfaceFlinger (b/75985430) PRODUCT_PROPERTY_OVERRIDES += \ debug.sf.early_phase_offset_ns=500000 PRODUCT_PROPERTY_OVERRIDES += \ debug.sf.early_app_phase_offset_ns=500000 PRODUCT_PROPERTY_OVERRIDES += \ debug.sf.early_gl_phase_offset_ns=3000000 PRODUCT_PROPERTY_OVERRIDES += \ debug.sf.early_gl_app_phase_offset_ns=15000000 # Do not skip init trigger by default PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ vendor.skip.init=0 BOARD_USES_QCNE := true PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config # power HAL PRODUCT_PACKAGES += \ android.hardware.power@1.3-service.pixel-libperfmgr # Disable ro.adb.secure for the factory build to work around dead touchscreens # Bug: 116250643 PRODUCT_PRODUCT_PROPERTIES += \ ro.adb.secure=0 # GPS configuration file PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/gps.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gps.conf # default atrace HAL PRODUCT_PACKAGES += \ android.hardware.atrace@1.0-service # Reliability reporting PRODUCT_PACKAGES += \ pixelstats-vendor # dynamic partition PRODUCT_USE_DYNAMIC_PARTITIONS := true # fastbootd PRODUCT_PACKAGES += \ android.hardware.fastboot@1.0-impl.pixel \ fastbootd # Use /product/etc/fstab.postinstall to mount system_other PRODUCT_PRODUCT_PROPERTIES += \ ro.postinstall.fstab.prefix=/product PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/fstab.postinstall:$(TARGET_COPY_OUT_PRODUCT)/etc/fstab.postinstall # powerstats HAL PRODUCT_PACKAGES += \ android.hardware.power.stats@1.0-service.pixel # Do not skip init trigger by default PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ vendor.skip.init=0 QTI_TELEPHONY_UTILS := qti-telephony-utils QTI_TELEPHONY_UTILS += qti_telephony_utils.xml PRODUCT_PACKAGES += $(QTI_TELEPHONY_UTILS) HIDL_WRAPPER := qti-telephony-hidl-wrapper HIDL_WRAPPER += qti_telephony_hidl_wrapper.xml PRODUCT_PACKAGES += $(HIDL_WRAPPER) # Increment the SVN for any official public releases PRODUCT_PROPERTY_OVERRIDES += \ ro.vendor.build.svn=1 # ZRAM writeback PRODUCT_PROPERTY_OVERRIDES += \ ro.zram.mark_idle_delay_mins=60 \ ro.zram.first_wb_delay_mins=180 \ ro.zram.periodic_wb_delay_hours=24 # Disable SPU usage PRODUCT_PROPERTY_OVERRIDES += \ vendor.gatekeeper.disable_spu = true # Enable iwlan service logging for debug ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) PRODUCT_PROPERTY_OVERRIDES += persist.vendor.iwlan.logging.logcat=true endif PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/powerhint.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.json # Set Vendor SPL to match platform VENDOR_SECURITY_PATCH = $(PLATFORM_SECURITY_PATCH) # A2DP offload enabled for compilation AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true # A2DP offload supported PRODUCT_PROPERTY_OVERRIDES += \ ro.bluetooth.a2dp_offload.supported=true # A2DP offload disabled (UI toggle property) PRODUCT_PROPERTY_OVERRIDES += \ persist.bluetooth.a2dp_offload.disabled=false # A2DP offload DSP supported encoder list PRODUCT_PROPERTY_OVERRIDES += \ persist.bluetooth.a2dp_offload.cap=sbc-aac-aptx-aptxhd-ldac # Enable AAC frame ctl for A2DP sinks PRODUCT_PROPERTY_OVERRIDES += \ persist.vendor.bt.aac_frm_ctl.enabled=true # Set lmkd options PRODUCT_PRODUCT_PROPERTIES += \ ro.config.low_ram = false \ ro.lmk.kill_heaviest_task = true \ ro.lmk.kill_timeout_ms = 100 \ ro.lmk.use_minfree_levels = true \ ro.lmk.log_stats = true \ # Modem logging file PRODUCT_COPY_FILES += \ device/google/redbull/init.logging.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.$(PRODUCT_PLATFORM).logging.rc # Pixelstats broken mic detection PRODUCT_PROPERTY_OVERRIDES += vendor.audio.mic_break=true PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.use_color_management=true PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.has_wide_color_display=true PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.has_HDR_display=true PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.set_idle_timer_ms=50 # MIDI feature PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml ################################################################################# # This is the End of device-common.mk file. # Now, Pickup other split device-common.mk files: ################################################################################# # Display -include hardware/qcom/sm7250/display/config/display-product.mk -include vendor/qcom/sm7250/proprietary/display/config/display-product-proprietary.mk # Security -include vendor/qcom/sm7250/proprietary/securemsm/config/keymaster_vendor_proprietary_board.mk -include vendor/qcom/sm7250/proprietary/securemsm/config/keymaster_vendor_proprietary_product.mk #################################################################################