1# 2# Copyright (C) 2011 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 17include device/google/gs-common/device.mk 18include device/google/gs-common/gs_watchdogd/watchdog.mk 19include device/google/gs-common/ramdump_and_coredump/ramdump_and_coredump.mk 20include device/google/gs-common/soc/soc.mk 21include device/google/gs-common/soc/freq.mk 22include device/google/gs-common/modem/modem.mk 23include device/google/gs-common/aoc/aoc.mk 24include device/google/gs-common/thermal/dump/thermal.mk 25include device/google/gs-common/thermal/thermal_hal/device.mk 26include device/google/gs-common/pixel_metrics/pixel_metrics.mk 27include device/google/gs-common/performance/perf.mk 28include device/google/gs-common/power/power.mk 29include device/google/gs-common/display/dump.mk 30include device/google/gs101/dumpstate/item.mk 31include device/google/gs-common/radio/dump.mk 32include device/google/gs-common/gear/dumpstate/aidl.mk 33include device/google/gs-common/camera/dump.mk 34include device/google/gs-common/gps/dump/log.mk 35include device/google/gs-common/widevine/widevine.mk 36include device/google/gs-common/sota_app/factoryota.mk 37include device/google/gs-common/misc_writer/misc_writer.mk 38include device/google/gs-common/gyotaku_app/gyotaku.mk 39include device/google/gs-common/bootctrl/bootctrl_aidl.mk 40include device/google/gs-common/betterbug/betterbug.mk 41ifneq ($(filter oriole raven bluejay, $(TARGET_PRODUCT)),) 42 include device/google/gs-common/bcmbt/dump/dumplog.mk 43endif 44include device/google/gs-common/fingerprint/fingerprint.mk 45 46TARGET_BOARD_PLATFORM := gs101 47DEVICE_IS_64BIT_ONLY ?= $(if $(filter %_64,$(TARGET_PRODUCT)),true,false) 48 49ifeq ($(DEVICE_IS_64BIT_ONLY),true) 50LOCAL_64ONLY := _64 51endif 52 53AB_OTA_POSTINSTALL_CONFIG += \ 54 RUN_POSTINSTALL_system=true \ 55 POSTINSTALL_PATH_system=system/bin/otapreopt_script \ 56 FILESYSTEM_TYPE_system=ext4 \ 57POSTINSTALL_OPTIONAL_system=true 58 59# Set Vendor SPL to match platform 60VENDOR_SECURITY_PATCH = $(PLATFORM_SECURITY_PATCH) 61 62# Set boot SPL 63BOOT_SECURITY_PATCH = $(PLATFORM_SECURITY_PATCH) 64 65PRODUCT_SOONG_NAMESPACES += \ 66 hardware/google/av \ 67 hardware/google/gchips \ 68 hardware/google/graphics/common \ 69 hardware/google/gchips/gralloc4 \ 70 hardware/google/graphics/gs101 \ 71 hardware/google/interfaces \ 72 hardware/google/pixel \ 73 device/google/gs101 \ 74 device/google/gs101/powerstats \ 75 vendor/google_devices/common/chre/host/hal \ 76 vendor/google/whitechapel/tools \ 77 vendor/google/camera \ 78 vendor/google/interfaces \ 79 vendor/google_nos/host/android \ 80 vendor/google_nos/test/system-test-harness 81 82LOCAL_KERNEL := $(TARGET_KERNEL_DIR)/Image.lz4 83 84# OEM Unlock reporting 85PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 86 ro.oem_unlock_supported=1 87 88ifneq ($(BOARD_WITHOUT_RADIO),true) 89# Include vendor telephony soong namespace 90PRODUCT_SOONG_NAMESPACES += \ 91 vendor/samsung_slsi/telephony/$(BOARD_USES_SHARED_VENDOR_TELEPHONY) 92endif 93 94ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 95#Set IKE logs to verbose for WFC 96PRODUCT_PROPERTY_OVERRIDES += log.tag.IKE=VERBOSE 97 98#Set Shannon IMS logs to debug 99PRODUCT_PROPERTY_OVERRIDES += log.tag.SHANNON_IMS=DEBUG 100 101#Set Shannon QNS logs to debug 102PRODUCT_PROPERTY_OVERRIDES += log.tag.ShannonQNS=DEBUG 103PRODUCT_PROPERTY_OVERRIDES += log.tag.ShannonQNS-ims=DEBUG 104PRODUCT_PROPERTY_OVERRIDES += log.tag.ShannonQNS-emergency=DEBUG 105PRODUCT_PROPERTY_OVERRIDES += log.tag.ShannonQNS-mms=DEBUG 106PRODUCT_PROPERTY_OVERRIDES += log.tag.ShannonQNS-xcap=DEBUG 107PRODUCT_PROPERTY_OVERRIDES += log.tag.ShannonQNS-HC=DEBUG 108 109# Modem userdebug 110include device/google/gs101/modem/userdebug.mk 111endif 112 113include device/google/gs101/modem/user.mk 114 115ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 116# b/36703476: Set default log size to 1M 117PRODUCT_PROPERTY_OVERRIDES += \ 118 ro.logd.size=1M 119# b/114766334: persist all logs by default rotating on 30 files of 1MiB 120PRODUCT_PROPERTY_OVERRIDES += \ 121 logd.logpersistd=logcatd \ 122 logd.logpersistd.size=30 123endif 124 125# From system.property 126PRODUCT_PROPERTY_OVERRIDES += \ 127 ro.telephony.default_network=27 \ 128 persist.vendor.ril.db_ecc.use.iccid_to_plmn=1 \ 129 persist.vendor.ril.db_ecc.id.type=5 130 #rild.libpath=/system/lib64/libsec-ril.so \ 131 #rild.libargs=-d /dev/umts_ipc0 132 133# SIT-RIL Logging setting 134PRODUCT_PROPERTY_OVERRIDES += \ 135 persist.vendor.ril.log_mask=3 \ 136 persist.vendor.ril.log.base_dir=/data/vendor/radio/sit-ril \ 137 persist.vendor.ril.log.chunk_size=5242880 \ 138 persist.vendor.ril.log.num_file=3 139 140# Enable reboot free DSDS 141PRODUCT_PRODUCT_PROPERTIES += \ 142 persist.radio.reboot_on_modem_change=false 143 144# Enable Early Camping 145PRODUCT_PRODUCT_PROPERTIES += \ 146 persist.vendor.ril.camp_on_earlier=1 147 148# Carrier configuration default location 149PRODUCT_PROPERTY_OVERRIDES += \ 150 persist.vendor.radio.config.carrier_config_dir=/vendor/firmware/carrierconfig 151 152# Set the Bluetooth Class of Device 153# Service Field: 0x5A -> 90 154# Bit 17: Networking 155# Bit 19: Capturing 156# Bit 20: Object Transfer 157# Bit 22: Telephony 158# MAJOR_CLASS: 0x02 -> 2 (Phone) 159# MINOR_CLASS: 0x0C -> 12 (Smart Phone) 160PRODUCT_PRODUCT_PROPERTIES += \ 161 bluetooth.device.class_of_device=90,2,12 162 163# Set supported Bluetooth profiles to enabled 164PRODUCT_PRODUCT_PROPERTIES += \ 165 bluetooth.profile.asha.central.enabled?=true \ 166 bluetooth.profile.a2dp.source.enabled?=true \ 167 bluetooth.profile.avrcp.target.enabled?=true \ 168 bluetooth.profile.bas.client.enabled?=true \ 169 bluetooth.profile.gatt.enabled?=true \ 170 bluetooth.profile.hfp.ag.enabled?=true \ 171 bluetooth.profile.hid.device.enabled?=true \ 172 bluetooth.profile.hid.host.enabled?=true \ 173 bluetooth.profile.map.server.enabled?=true \ 174 bluetooth.profile.opp.enabled?=true \ 175 bluetooth.profile.pan.nap.enabled?=true \ 176 bluetooth.profile.pan.panu.enabled?=true \ 177 bluetooth.profile.pbap.server.enabled?=true \ 178 bluetooth.profile.sap.server.enabled?=true \ 179 180PRODUCT_PROPERTY_OVERRIDES += \ 181 telephony.active_modems.max_count=2 182 183USE_LASSEN_OEMHOOK := true 184# The "power-anomaly-sitril" is added into PRODUCT_SOONG_NAMESPACES when 185# $(USE_LASSEN_OEMHOOK) is true and $(BOARD_WITHOUT_RADIO) is not true. 186ifneq ($(BOARD_WITHOUT_RADIO),true) 187 PRODUCT_SOONG_NAMESPACES += vendor/google/tools/power-anomaly-sitril 188 $(call soong_config_set,sitril,use_lassen_oemhook_with_radio,true) 189endif 190 191# Use for GRIL 192USES_LASSEN_MODEM := true 193$(call soong_config_set, vendor_ril_google_feature, use_lassen_modem, true) 194 195ifeq ($(USES_GOOGLE_DIALER_CARRIER_SETTINGS),true) 196USE_GOOGLE_DIALER := true 197USE_GOOGLE_CARRIER_SETTINGS := true 198endif 199 200# Audio client implementation for RIL 201USES_GAUDIO := true 202 203# ###################### 204# GRAPHICS - GPU (begin) 205 206# Must match BOARD_USES_SWIFTSHADER in BoardConfig.mk 207USE_SWIFTSHADER := false 208 209# HWUI 210TARGET_USES_VULKAN = true 211 212PRODUCT_SOONG_NAMESPACES += \ 213 vendor/arm/mali/gs101 214 215# Used in gfx_tools when defining tests with composer2 interface for gs101 devices 216$(call soong_config_set,gfx_tools,use_hwc2,true) 217 218include device/google/gs-common/gpu/gpu.mk 219PRODUCT_PACKAGES += \ 220 libGLES_mali \ 221 vulkan.mali \ 222 libgpudataproducer 223 224# Install the OpenCL ICD Loader 225PRODUCT_SOONG_NAMESPACES += external/OpenCL-ICD-Loader 226PRODUCT_PACKAGES += \ 227 libOpenCL \ 228 mali_icd__customer_pixel_opencl-icd_ARM.icd 229ifeq ($(DEVICE_IS_64BIT_ONLY),false) 230PRODUCT_PACKAGES += \ 231 mali_icd__customer_pixel_opencl-icd_ARM32.icd 232endif 233 234PRODUCT_VENDOR_PROPERTIES += \ 235 ro.hardware.vulkan=mali 236 237PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 238 debug.mali.disable_backend_affinity=true 239 240# Mali Configuration Properties 241PRODUCT_VENDOR_PROPERTIES += \ 242 vendor.mali.platform.config=/vendor/etc/mali/platform.config \ 243 vendor.mali.debug.config=/vendor/etc/mali/debug.config \ 244 vendor.mali.base_protected_max_core_count=4 \ 245 vendor.mali.base_protected_tls_max=67108864 \ 246 vendor.mali.platform_agt_frequency_khz=24576 247 248ifeq ($(USE_SWIFTSHADER),true) 249PRODUCT_PACKAGES += \ 250 libGLESv1_CM_swiftshader \ 251 libEGL_swiftshader \ 252 libGLESv2_swiftshader 253endif 254 255PRODUCT_COPY_FILES += \ 256 frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \ 257 frameworks/native/data/etc/android.hardware.vulkan.version-1_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \ 258 frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \ 259 frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute.xml \ 260 frameworks/native/data/etc/android.software.vulkan.deqp.level-2024-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml \ 261 frameworks/native/data/etc/android.software.opengles.deqp.level-2024-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml 262 263ifeq ($(USE_SWIFTSHADER),true) 264PRODUCT_VENDOR_PROPERTIES += \ 265 ro.hardware.egl = swiftshader 266else 267PRODUCT_VENDOR_PROPERTIES += \ 268 ro.hardware.egl = mali 269endif 270 271# Configure EGL blobcache 272PRODUCT_VENDOR_PROPERTIES += \ 273 ro.egl.blobcache.multifile=true \ 274 ro.egl.blobcache.multifile_limit=33554432 \ 275 276PRODUCT_VENDOR_PROPERTIES += \ 277 ro.opengles.version=196610 \ 278 graphics.gpu.profiler.support=true 279 280# b/295257834 Add HDR shaders to SurfaceFlinger's pre-warming cache 281PRODUCT_VENDOR_PROPERTIES += ro.surface_flinger.prime_shader_cache.ultrahdr=1 282 283# GRAPHICS - GPU (end) 284# #################### 285 286# Device Manifest, Device Compatibility Matrix for Treble 287DEVICE_MANIFEST_FILE := \ 288 device/google/gs101/manifest$(LOCAL_64ONLY).xml 289 290BOARD_USE_CODEC2_AIDL := V1 291ifneq (,$(filter aosp_%,$(TARGET_PRODUCT))) 292DEVICE_MANIFEST_FILE += \ 293 device/google/gs101/manifest_media_aosp.xml 294 295PRODUCT_COPY_FILES += \ 296 device/google/gs101/media_codecs_aosp_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml 297else 298DEVICE_MANIFEST_FILE += \ 299 device/google/gs101/manifest_media.xml 300 301PRODUCT_COPY_FILES += \ 302 device/google/gs101/media_codecs_bo_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2.xml \ 303 device/google/gs101/media_codecs_aosp_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_aosp_c2.xml 304endif 305 306DEVICE_MATRIX_FILE := \ 307 device/google/gs101/compatibility_matrix.xml 308 309DEVICE_PACKAGE_OVERLAYS += device/google/gs101/overlay 310 311# Enforce the Product interface 312PRODUCT_PRODUCT_VNDK_VERSION := current 313PRODUCT_ENFORCE_PRODUCT_PARTITION_INTERFACE := true 314 315# Init files 316PRODUCT_COPY_FILES += \ 317 $(LOCAL_KERNEL):kernel \ 318 device/google/gs101/conf/init.gs101.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.gs101.usb.rc \ 319 device/google/gs101/conf/ueventd.gs101.rc:$(TARGET_COPY_OUT_VENDOR)/etc/ueventd.rc 320 321PRODUCT_COPY_FILES += \ 322 device/google/gs101/conf/init.gs101.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.gs101.rc 323 324ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 325PRODUCT_COPY_FILES += \ 326 device/google/gs101/conf/init.debug.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.debug.rc 327endif 328 329ifneq (,$(filter 5.%, $(TARGET_LINUX_KERNEL_VERSION))) 330PRODUCT_COPY_FILES += \ 331 device/google/gs101/storage/5.10/init.gs101.storage.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.gs101.storage.rc 332else 333PRODUCT_COPY_FILES += \ 334 device/google/gs101/storage/6.1/init.gs101.storage.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.gs101.storage.rc 335endif 336 337# Recovery files 338PRODUCT_COPY_FILES += \ 339 device/google/gs101/conf/init.recovery.device.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.gs101.rc 340 341ifneq ($(BOARD_WITHOUT_RADIO),true) 342PRODUCT_SOONG_NAMESPACES += device/google/gs101/conf 343else 344PRODUCT_SOONG_NAMESPACES += device/google/gs101/conf/nomodem 345endif 346 347# Fstab files 348PRODUCT_PACKAGES += \ 349 fstab.gs101 \ 350 fstab.gs101.vendor_ramdisk \ 351 fstab.gs101-fips \ 352 fstab.gs101-fips.vendor_ramdisk 353PRODUCT_COPY_FILES += \ 354 device/google/gs101/conf/fstab.persist:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.persist 355 356# Shell scripts 357PRODUCT_COPY_FILES += \ 358 device/google/gs101/init.display.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.display.sh \ 359 device/google/gs101/disable_contaminant_detection.sh:$(TARGET_COPY_OUT_VENDOR)/bin/hw/disable_contaminant_detection.sh 360 361include device/google/gs-common/insmod/insmod.mk 362 363# Insmod config files 364PRODUCT_COPY_FILES += \ 365 $(call find-copy-subdir-files,init.insmod.*.cfg,$(TARGET_KERNEL_DIR),$(TARGET_COPY_OUT_VENDOR_DLKM)/etc) 366 367# For creating dtbo image 368PRODUCT_HOST_PACKAGES += \ 369 mkdtimg 370 371PRODUCT_PACKAGES += \ 372 messaging 373 374# CHRE 375## tools 376ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 377PRODUCT_PACKAGES += \ 378 chre_power_test_client \ 379 chre_test_client \ 380 chre_aidl_hal_client 381endif 382 383## HAL 384include device/google/gs-common/chre/hal.mk 385PRODUCT_COPY_FILES += \ 386 frameworks/native/data/etc/android.hardware.context_hub.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.context_hub.xml 387PRODUCT_PACKAGES += \ 388 preloaded_nanoapps.json 389 390# Filesystem management tools 391PRODUCT_PACKAGES += \ 392 linker.vendor_ramdisk \ 393 tune2fs.vendor_ramdisk \ 394 resize2fs.vendor_ramdisk 395 396# Userdata Checkpointing OTA GC 397PRODUCT_PACKAGES += \ 398 checkpoint_gc 399 400# Vendor verbose logging default property 401ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 402PRODUCT_PROPERTY_OVERRIDES += \ 403 persist.vendor.verbose_logging_enabled=true 404else 405PRODUCT_PROPERTY_OVERRIDES += \ 406 persist.vendor.verbose_logging_enabled=false 407endif 408 409# CP Logging properties 410PRODUCT_PROPERTY_OVERRIDES += \ 411 ro.vendor.sys.modem.logging.loc = /data/vendor/slog \ 412 persist.vendor.sys.silentlog.tcp = "On" \ 413 ro.vendor.cbd.modem_removable = "1" \ 414 ro.vendor.cbd.modem_type = "s5100sit" \ 415 persist.vendor.sys.modem.logging.br_num=5 \ 416 persist.vendor.sys.modem.logging.enable=true 417 418# Enable silent CP crash handling 419ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 420PRODUCT_PROPERTY_OVERRIDES += \ 421 persist.vendor.ril.crash_handling_mode=1 422else 423PRODUCT_PROPERTY_OVERRIDES += \ 424 persist.vendor.ril.crash_handling_mode=2 425endif 426 427# Add support dual SIM mode 428PRODUCT_PROPERTY_OVERRIDES += \ 429 persist.vendor.radio.multisim_switch_support=true 430 431# RPMB TA 432PRODUCT_PACKAGES += \ 433 tlrpmb 434 435# Touch firmware 436#PRODUCT_COPY_FILES += \ 437 device/google/gs101/firmware/touch/s6sy761.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/s6sy761.fw 438# Touch 439PRODUCT_COPY_FILES += \ 440 frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml 441 442# Sensors 443ifneq (,$(findstring tangor, $(TARGET_PRODUCT))) 444PRODUCT_COPY_FILES += \ 445 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \ 446 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \ 447 frameworks/native/data/etc/android.hardware.sensor.dynamic.head_tracker.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.dynamic.head_tracker.xml \ 448 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \ 449 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml\ 450 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \ 451 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml 452else 453PRODUCT_COPY_FILES += \ 454 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \ 455 frameworks/native/data/etc/android.hardware.sensor.barometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.barometer.xml \ 456 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \ 457 frameworks/native/data/etc/android.hardware.sensor.dynamic.head_tracker.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.dynamic.head_tracker.xml \ 458 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \ 459 frameworks/native/data/etc/android.hardware.sensor.hifi_sensors.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.hifi_sensors.xml \ 460 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml\ 461 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \ 462 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \ 463 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml 464endif 465 466# Add sensor HAL AIDL product packages 467PRODUCT_PACKAGES += android.hardware.sensors-service.multihal 468 469# USB HAL 470PRODUCT_PACKAGES += \ 471 android.hardware.usb-service.gs101 472PRODUCT_PACKAGES += \ 473 android.hardware.usb.gadget-service.gs101 474 475# MIDI feature 476PRODUCT_COPY_FILES += \ 477 frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml 478 479# default usb debug functions 480ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 481PRODUCT_PROPERTY_OVERRIDES += \ 482 persist.vendor.usb.usbradio.config=dm 483endif 484 485# Power HAL 486PRODUCT_COPY_FILES += \ 487 device/google/gs101/task_profiles.json:$(TARGET_COPY_OUT_VENDOR)/etc/task_profiles.json 488# Legacy HW 489PRODUCT_COPY_FILES += \ 490 device/google/gs101/powerhint_a0.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint_a0.json 491PRODUCT_COPY_FILES += \ 492 device/google/gs101/powerhint_a1.json:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint_a1.json 493-include hardware/google/pixel/power-libperfmgr/aidl/device.mk 494 495# IRQ rebalancing. 496include hardware/google/pixel/rebalance_interrupts/rebalance_interrupts.mk 497 498# PowerStats HAL 499PRODUCT_PACKAGES += \ 500 android.hardware.power.stats-service.pixel 501 502# 503# Audio HALs 504# 505 506# Audio Configurations 507USE_LEGACY_LOCAL_AUDIO_HAL := false 508USE_XML_AUDIO_POLICY_CONF := 1 509 510# Enable AAudio MMAP/NOIRQ data path. 511PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_policy=2 512PRODUCT_PROPERTY_OVERRIDES += aaudio.mmap_exclusive_policy=2 513PRODUCT_PROPERTY_OVERRIDES += aaudio.hw_burst_min_usec=2000 514 515# Calliope firmware overwrite 516#PRODUCT_COPY_FILES += \ 517 device/google/gs101/firmware/calliope_dram.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/calliope_dram.bin \ 518 device/google/gs101/firmware/calliope_sram.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/calliope_sram.bin \ 519 device/google/gs101/firmware/calliope_dram_2.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/calliope_dram_2.bin \ 520 device/google/gs101/firmware/calliope_sram_2.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/calliope_sram_2.bin \ 521 device/google/gs101/firmware/calliope2.dt:$(TARGET_COPY_OUT_VENDOR)/firmware/calliope2.dt \ 522 523# Cannot reference variables defined in BoardConfig.mk, uncomment this if 524# BOARD_USE_OFFLOAD_AUDIO and BOARD_USE_OFFLOAD_EFFECT are true 525## AudioEffectHAL library 526#PRODUCT_PACKAGES += \ 527# libexynospostprocbundle 528 529# Cannot reference variables defined in BoardConfig.mk, uncomment this if 530# BOARD_USE_SOUNDTRIGGER_HAL is true 531#PRODUCT_PACKAGES += \ 532# sound_trigger.primary.maran9820 533 534# A-Box Service Daemon 535#PRODUCT_PACKAGES += main_abox 536 537# Libs 538PRODUCT_PACKAGES += \ 539 com.android.future.usb.accessory 540 541# for now include gralloc here. should come from hardware/google_devices/exynos5 542PRODUCT_PACKAGES += \ 543 android.hardware.memtrack-service.pixel \ 544 libion_exynos \ 545 libion 546 547PRODUCT_PACKAGES += \ 548 libhwjpeg 549 550# Video Editor 551PRODUCT_PACKAGES += \ 552 VideoEditorGoogle 553 554# WideVine modules 555PRODUCT_PACKAGES += \ 556 liboemcrypto 557 558# Lyric Camera HAL settings 559include device/google/gs-common/camera/lyric.mk 560$(call soong_config_set,lyric,soc,gs101) 561$(call soong_config_set,google3a_config,soc,gs101) 562 563# WiFi 564PRODUCT_PACKAGES += \ 565 android.hardware.wifi-service \ 566 wificond \ 567 libwpa_client \ 568 WifiOverlay \ 569 570# Connectivity 571PRODUCT_PACKAGES += \ 572 ConnectivityOverlay 573 574PRODUCT_PACKAGES_DEBUG += \ 575 f2fs_io \ 576 check_f2fs \ 577 f2fs.fibmap \ 578 dump.f2fs 579 580# Storage dump 581include device/google/gs-common/storage/storage.mk 582 583# Storage health HAL 584PRODUCT_PACKAGES += \ 585 android.hardware.health.storage-service.default 586 587# Battery Mitigation 588include device/google/gs-common/battery_mitigation/bcl.mk 589 590# storage pixelstats 591-include hardware/google/pixel/pixelstats/device.mk 592 593# Enable project quotas and casefolding for emulated storage without sdcardfs 594$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk) 595 596$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota/compression_with_xor.mk) 597 598# Enable usage of io_uring in fastbootd 599PRODUCT_VENDOR_PROPERTIES += sys.usb.ffs.io_uring_enabled=true 600 601# Enforce generic ramdisk allow list 602$(call inherit-product, $(SRC_TARGET_DIR)/product/generic_ramdisk.mk) 603 604# Titan-M 605ifeq (,$(filter true, $(BOARD_WITHOUT_DTLS))) 606include device/google/gs-common/dauntless/gsc.mk 607else 608# include dauntless sepolicy to avoid compile error on devices without dauntless 609BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/dauntless/sepolicy 610endif 611 612# Copy Camera HFD Setfiles 613#PRODUCT_COPY_FILES += \ 614 device/google/gs101/firmware/camera/libhfd/default_configuration.hfd.cfg.json:$(TARGET_COPY_OUT_VENDOR)/firmware/default_configuration.hfd.cfg.json \ 615 device/google/gs101/firmware/camera/libhfd/pp_cfg.json:$(TARGET_COPY_OUT_VENDOR)/firmware/pp_cfg.json \ 616 device/google/gs101/firmware/camera/libhfd/tracker_cfg.json:$(TARGET_COPY_OUT_VENDOR)/firmware/tracker_cfg.json \ 617 device/google/gs101/firmware/camera/libhfd/WithLightFixNoBN.SDNNmodel:$(TARGET_COPY_OUT_VENDOR)/firmware/WithLightFixNoBN.SDNNmodel 618 619PRODUCT_COPY_FILES += \ 620 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ 621 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \ 622 frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \ 623 frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \ 624 frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \ 625 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \ 626 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml 627 628# (See b/211840489) 629ifneq ($(DISABLE_CAMERA_FS_AF),true) 630PRODUCT_COPY_FILES += \ 631 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml 632else 633PRODUCT_COPY_FILES += \ 634 frameworks/native/data/etc/android.hardware.camera.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.xml 635endif 636 637PRODUCT_COPY_FILES += \ 638 frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ 639 frameworks/native/data/etc/android.hardware.camera.concurrent.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.concurrent.xml \ 640 frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml\ 641 frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml\ 642 643#PRODUCT_COPY_FILES += \ 644 frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \ 645 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ 646 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \ 647 frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \ 648 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \ 649 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ 650 651PRODUCT_COPY_FILES += \ 652 frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \ 653 frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml \ 654 655PRODUCT_COPY_FILES += \ 656 frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \ 657 658PRODUCT_PROPERTY_OVERRIDES += \ 659 debug.slsi_platform=1 \ 660 debug.hwc.winupdate=1 661 662# hw composer HAL 663$(call soong_config_set,google_displaycolor,displaycolor_platform,gs101) 664PRODUCT_PACKAGES += \ 665 libdisplaycolor \ 666 hwcomposer.$(TARGET_BOARD_PLATFORM) 667 668ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 669PRODUCT_PACKAGES += displaycolor_service 670endif 671 672PRODUCT_PROPERTY_OVERRIDES += \ 673 debug.sf.disable_backpressure=0 \ 674 debug.sf.enable_gl_backpressure=1 675 676PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.use_phase_offsets_as_durations=1 677PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.late.sf.duration=10500000 678PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.late.app.duration=16600000 679PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.early.sf.duration=16600000 680PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.early.app.duration=16600000 681PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.earlyGl.sf.duration=16600000 682PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.earlyGl.app.duration=16600000 683PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.frame_rate_multiple_threshold=120 684PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.layer_caching_active_layer_timeout_ms=1000 685PRODUCT_DEFAULT_PROPERTY_OVERRIDES += debug.sf.treat_170m_as_sRGB=1 686 687PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.enable_layer_caching=true 688PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.set_idle_timer_ms?=80 689PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.set_touch_timer_ms=200 690PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.set_display_power_timer_ms=1000 691PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.use_content_detection_for_refresh_rate=true 692PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.max_frame_buffer_acquired_buffers=3 693 694PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.supports_background_blur=1 695PRODUCT_SYSTEM_PROPERTIES += ro.launcher.blur.appLaunch=0 696 697# Must align with HAL types Dataspace 698# The data space of wide color gamut composition preference is Dataspace::DISPLAY_P3 699PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.wcg_composition_dataspace=143261696 700 701# Display 702PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.has_wide_color_display=true 703PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.has_HDR_display=true 704PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.use_color_management=true 705PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.protected_contents=true 706PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.display_update_imminent_timeout_ms=50 707 708PRODUCT_PROPERTY_OVERRIDES += \ 709 persist.sys.sf.native_mode=2 710PRODUCT_COPY_FILES += \ 711 device/google/gs101/display/display_colordata_cal0.pb:$(TARGET_COPY_OUT_VENDOR)/etc/display_colordata_cal0.pb 712 713# limit DPP downscale ratio 714PRODUCT_DEFAULT_PROPERTY_OVERRIDES += vendor.hwc.dpp.downscale=2 715 716# Cannot reference variables defined in BoardConfig.mk, uncomment this if 717# BOARD_USES_EXYNOS_DSS_FEATURE is true 718## set the dss enable status setup 719#PRODUCT_PROPERTY_OVERRIDES += \ 720# ro.exynos.dss=1 721 722# Cannot reference variables defined in BoardConfig.mk, uncomment this if 723# BOARD_USES_EXYNOS_AFBC_FEATURE is true 724# set the dss enable status setup 725PRODUCT_PROPERTY_OVERRIDES += \ 726 ro.vendor.ddk.set.afbc=1 727 728PRODUCT_CHARACTERISTICS := nosdcard 729 730# WPA SUPPLICANT 731PRODUCT_COPY_FILES += \ 732 device/google/gs101/wifi/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \ 733 device/google/gs101/wifi/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf 734 735# WIFI COEX 736PRODUCT_COPY_FILES += \ 737 device/google/gs101/wifi/coex_table.xml:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/coex_table.xml 738 739PRODUCT_PACKAGES += hostapd 740PRODUCT_PACKAGES += wpa_supplicant 741PRODUCT_PACKAGES += wpa_supplicant.conf 742 743WIFI_PRIV_CMD_UPDATE_MBO_CELL_STATUS := enabled 744 745ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 746PRODUCT_PACKAGES += wpa_cli 747PRODUCT_PACKAGES += hostapd_cli 748endif 749 750#################################### 751## VIDEO 752#################################### 753 754$(call soong_config_set,bigo,soc,gs101) 755 756# 1. Codec 2.0 757# for settings used by different C2 hal 758include device/google/gs-common/mediacodec/common/mediacodec_common.mk 759# for Exynos C2 Hal 760include device/google/gs-common/mediacodec/samsung/mediacodec_samsung.mk 761 762PRODUCT_COPY_FILES += \ 763 device/google/gs101/media_codecs_performance_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_c2.xml \ 764 765PRODUCT_PROPERTY_OVERRIDES += \ 766 debug.c2.use_dmabufheaps=1 \ 767 media.c2.dmabuf.padding=512 \ 768 debug.stagefright.ccodec_delayed_params=1 \ 769 ro.vendor.gpu.dataspace=1 770 771ifneq ($(BOARD_USE_CODEC2_AIDL), ) 772PRODUCT_PROPERTY_OVERRIDES += \ 773 debug.stagefright.c2-poolmask=1507328 774else 775PRODUCT_PROPERTY_OVERRIDES += \ 776 debug.stagefright.c2-poolmask=458752 777endif 778 779# Create input surface on the framework side 780PRODUCT_PROPERTY_OVERRIDES += \ 781 debug.stagefright.c2inputsurface=-1 \ 782 783PRODUCT_PROPERTY_OVERRIDES += media.c2.hal.selection=aidl 784 785# 2. OpenMAX IL 786PRODUCT_COPY_FILES += \ 787 device/google/gs101/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \ 788 device/google/gs101/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml 789#################################### 790 791# Telephony 792#PRODUCT_COPY_FILES += \ 793 frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml 794 795# CBD (CP booting deamon) 796CBD_USE_V2 := true 797CBD_PROTOCOL_SIT := true 798 799# setup dalvik vm configs. 800$(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk) 801 802PRODUCT_TAGS += dalvik.gc.type-precise 803 804# Exynos OpenVX framework 805PRODUCT_PACKAGES += \ 806 libexynosvision 807 808ifeq ($(TARGET_USES_CL_KERNEL),true) 809PRODUCT_PACKAGES += \ 810 libopenvx-opencl 811endif 812 813# Location 814ifeq (,$(filter tangor citron,$(subst _, ,$(TARGET_PRODUCT)))) 815include device/google/gs-common/gps/brcm/device.mk 816PRODUCT_COPY_FILES += \ 817 device/google/gs101/location/gps.cer:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.cer 818ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 819 PRODUCT_COPY_FILES += \ 820 device/google/gs101/location/lhd.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \ 821 device/google/gs101/location/scd.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf 822else 823 PRODUCT_COPY_FILES += \ 824 device/google/gs101/location/lhd_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/lhd.conf \ 825 device/google/gs101/location/scd_user.conf:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/scd.conf 826endif 827endif 828# Trusty (KM, GK, Storage) 829$(call inherit-product, system/core/trusty/trusty-storage.mk) 830$(call inherit-product, system/core/trusty/trusty-base.mk) 831 832# Trusty dump 833include device/google/gs-common/trusty/trusty.mk 834 835# Trusty unit test tool 836PRODUCT_PACKAGES_DEBUG += \ 837 trusty-ut-ctrl \ 838 tipc-test 839 840include device/google/gs101/trusty_metricsd/trusty_metricsd.mk 841 842PRODUCT_PACKAGES += \ 843 android.hardware.graphics.composer@2.4-impl \ 844 android.hardware.graphics.composer@2.4-service 845 846# Storage: for factory reset protection feature 847PRODUCT_PROPERTY_OVERRIDES += \ 848 ro.frp.pst=/dev/block/by-name/frp 849 850# System props to enable Bluetooth Quality Report (BQR) feature 851ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 852PRODUCT_PRODUCT_PROPERTIES += \ 853 persist.bluetooth.bqr.event_mask=262174 \ 854 persist.bluetooth.bqr.min_interval_ms=500 855else 856PRODUCT_PRODUCT_PROPERTIES += \ 857 persist.bluetooth.bqr.event_mask=30 \ 858 persist.bluetooth.bqr.min_interval_ms=500 859endif 860 861# Enable Bluetooth AutoOn feature 862PRODUCT_PRODUCT_PROPERTIES += \ 863 bluetooth.server.automatic_turn_on=true 864 865#VNDK 866PRODUCT_PACKAGES += \ 867 vndk-libs 868 869PRODUCT_ENFORCE_RRO_TARGETS := \ 870 framework-res 871 872# Dynamic Partitions 873PRODUCT_USE_DYNAMIC_PARTITIONS := true 874 875# Use FUSE passthrough 876PRODUCT_PRODUCT_PROPERTIES += \ 877 persist.sys.fuse.passthrough.enable=true 878 879# Use /product/etc/fstab.postinstall to mount system_other 880PRODUCT_PRODUCT_PROPERTIES += \ 881 ro.postinstall.fstab.prefix=/product 882 883PRODUCT_COPY_FILES += \ 884 device/google/gs101/conf/fstab.postinstall:$(TARGET_COPY_OUT_PRODUCT)/etc/fstab.postinstall 885 886# fastbootd 887PRODUCT_PACKAGES += \ 888 android.hardware.fastboot@1.1-impl.pixel \ 889 fastbootd 890 891#google iwlan 892PRODUCT_PACKAGES += \ 893 Iwlan 894 895#Iwlan test app for userdebug/eng builds 896ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 897PRODUCT_PACKAGES += \ 898 IwlanTestApp 899endif 900 901PRODUCT_PACKAGES += \ 902 whitelist \ 903 libstagefright_hdcp \ 904 libskia_opt 905 906#PRODUCT_PACKAGES += \ 907 mfc_fw.bin \ 908 calliope_sram.bin \ 909 calliope_dram.bin \ 910 calliope_iva.bin \ 911 vts.bin 912 913ifneq ($(BOARD_WITHOUT_RADIO),true) 914# This will be called only if IMSService is building with source code for dev branches. 915$(call inherit-product-if-exists, vendor/samsung_slsi/telephony/$(BOARD_USES_SHARED_VENDOR_TELEPHONY)/shannon-ims/device-vendor.mk) 916 917PRODUCT_PACKAGES += ShannonIms 918 919$(call inherit-product-if-exists, vendor/samsung_slsi/telephony/$(BOARD_USES_SHARED_VENDOR_TELEPHONY)/shannon-iwlan/device-vendor.mk) 920 921PRODUCT_PACKAGES_DEBUG += \ 922 preinstalled-packages-product-gs101-device-debug.xml 923 924PRODUCT_PACKAGES += ShannonRcs 925endif 926 927# Exynos RIL and telephony 928# Multi SIM(DSDS) 929SIM_COUNT := 2 930$(call soong_config_set,sim,sim_count,$(SIM_COUNT)) 931SUPPORT_MULTI_SIM := true 932# Support NR 933SUPPORT_NR := true 934# Using IRadio 1.6 935USE_RADIO_HAL_1_6 := true 936# Support SecureElement HAL for HIDL 937USE_SE_HIDL := true 938 939#$(call inherit-product, vendor/google_devices/telephony/common/device-vendor.mk) 940#$(call inherit-product, vendor/google_devices/gs101/proprietary/device-vendor.mk) 941 942ifneq ($(BOARD_WITHOUT_RADIO),true) 943$(call inherit-product-if-exists, vendor/samsung_slsi/telephony/$(BOARD_USES_SHARED_VENDOR_TELEPHONY)/common/device-vendor.mk) 944endif 945 946ifeq ($(DEVICE_IS_64BIT_ONLY),true) 947$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit_only.mk) 948else 949$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk) 950endif 951#$(call inherit-product, hardware/google_devices/exynos5/exynos5.mk) 952#$(call inherit-product-if-exists, hardware/google_devices/gs101/gs101.mk) 953#$(call inherit-product-if-exists, vendor/google_devices/common/exynos-vendor.mk) 954#$(call inherit-product-if-exists, hardware/broadcom/wlan/bcmdhd/firmware/bcm4375/device-bcm.mk) 955include device/google/gs-common/sensors/sensors.mk 956$(call soong_config_set,usf,target_soc,gs101) 957 958PRODUCT_COPY_FILES += \ 959 device/google/gs101/default-permissions.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/default-permissions/default-permissions.xml \ 960 device/google/gs101/component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/component-overrides.xml 961 962# modem logging binary/configs 963PRODUCT_PACKAGES += modem_logging_control 964 965# modem logging configs 966PRODUCT_COPY_FILES += \ 967 device/google/gs101/radio/config/logging.conf:$(TARGET_COPY_OUT_VENDOR)/etc/modem/logging.conf \ 968 device/google/gs101/radio/config/default.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/modem/default.cfg \ 969 device/google/gs101/radio/config/default.nprf:$(TARGET_COPY_OUT_VENDOR)/etc/modem/default.nprf \ 970 device/google/gs101/radio/config/default_metrics.xml:$(TARGET_COPY_OUT_VENDOR)/etc/modem/default_metrics.xml \ 971 device/google/gs101/radio/config/teamfood_default.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/modem/teamfood_default.cfg \ 972 device/google/gs101/radio/config/teamfood_default.nprf:$(TARGET_COPY_OUT_VENDOR)/etc/modem/teamfood_default.nprf \ 973 device/google/gs101/radio/config/teamfood_default_metrics.xml:$(TARGET_COPY_OUT_VENDOR)/etc/modem/teamfood_default_metrics.xml \ 974 device/google/gs101/radio/config/default_stability.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/modem/default_stability.cfg \ 975 device/google/gs101/radio/config/default_stability.nprf:$(TARGET_COPY_OUT_VENDOR)/etc/modem/default_stability.nprf \ 976 device/google/gs101/radio/config/default_NAS_RRC.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/modem/default_NAS_RRC.cfg \ 977 device/google/gs101/radio/config/default_NAS_RRC.nprf:$(TARGET_COPY_OUT_VENDOR)/etc/modem/default_NAS_RRC.nprf \ 978 device/google/gs101/radio/config/default_network.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/modem/default_network.cfg \ 979 device/google/gs101/radio/config/default_network.nprf:$(TARGET_COPY_OUT_VENDOR)/etc/modem/default_network.nprf \ 980 device/google/gs101/radio/config/Pixel_Default.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/modem/Pixel_Default.cfg \ 981 device/google/gs101/radio/config/Pixel_Default.nprf:$(TARGET_COPY_OUT_VENDOR)/etc/modem/Pixel_Default.nprf \ 982 device/google/gs101/radio/config/Pixel_Default_metrics.xml:$(TARGET_COPY_OUT_VENDOR)/etc/modem/Pixel_Default_metrics.xml \ 983 device/google/gs101/radio/config/Pixel_stability.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/modem/Pixel_stability.cfg \ 984 device/google/gs101/radio/config/Pixel_stability.nprf:$(TARGET_COPY_OUT_VENDOR)/etc/modem/Pixel_stability.nprf 985 986PRODUCT_COPY_FILES += \ 987 device/google/gs101/radio/gnss_blanking.csv:$(TARGET_COPY_OUT_VENDOR)/etc/modem/gnss_blanking.csv 988 989# Vibrator Diag 990PRODUCT_PACKAGES_DEBUG += \ 991 diag-vibrator \ 992 diag-vibrator-cs40l25a \ 993 diag-vibrator-drv2624 \ 994 $(NULL) 995 996PRODUCT_PACKAGES += \ 997 android.hardware.health-service.gs101 \ 998 android.hardware.health-service.gs101_recovery \ 999 1000# Audio 1001# Audio HAL Server & Default Implementations 1002include device/google/gs-common/audio/hidl_gs101.mk 1003 1004## AoC soong 1005PRODUCT_SOONG_NAMESPACES += \ 1006 vendor/google/whitechapel/aoc 1007 1008$(call soong_config_set,aoc,target_soc,$(TARGET_BOARD_PLATFORM)) 1009$(call soong_config_set,aoc,target_product,$(TARGET_PRODUCT)) 1010 1011$(call soong_config_set,android_hardware_audio,run_64bit,true) 1012 1013# Audio properties 1014PRODUCT_PROPERTY_OVERRIDES += \ 1015 ro.config.vc_call_vol_steps=7 \ 1016 ro.config.media_vol_steps=25 \ 1017 ro.audio.monitorRotation = true \ 1018 ro.audio.offload_wakelock=false 1019 1020# declare use of spatial audio 1021# PRODUCT_PROPERTY_OVERRIDES += \ 1022# ro.audio.spatializer_enabled=true 1023 1024# vndservicemanager and vndservice no longer included in API 30+, however needed by vendor code. 1025# See b/148807371 for reference 1026PRODUCT_PACKAGES += vndservicemanager 1027PRODUCT_PACKAGES += vndservice 1028 1029# TinyTools, debug tool and cs35l41 speaker calibration tool for Audio 1030ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) 1031PRODUCT_PACKAGES += \ 1032 tinyplay \ 1033 tinycap \ 1034 tinymix \ 1035 tinypcminfo \ 1036 tinyhostless \ 1037 cplay \ 1038 aoc_hal \ 1039 aoc_tuning_inft \ 1040 crus_sp_cal \ 1041 mahal_test \ 1042 ma_aoc_tuning_test 1043endif 1044 1045PRODUCT_PACKAGES += \ 1046 google.hardware.media.c2@1.0-service \ 1047 libgc2_store \ 1048 libgc2_base \ 1049 libgc2_av1_dec \ 1050 libbo_av1 \ 1051 libgc2_cwl \ 1052 libgc2_utils 1053 1054# Thermal HAL 1055PRODUCT_PROPERTY_OVERRIDES += persist.vendor.enable.thermal.genl=true 1056 1057# EdgeTPU 1058include device/google/gs-common/edgetpu/edgetpu.mk 1059# Config variables for TPU chip on device. 1060$(call soong_config_set,edgetpu_config,chip,abrolhos) 1061# Include the edgetpu targets defined the namespaces below into the final image. 1062PRODUCT_SOONG_NAMESPACES += \ 1063 vendor/google_devices/gs101/proprietary/gchips/tpu/metrics \ 1064 vendor/google_devices/gs101/proprietary/gchips/tpu/tflite_delegate \ 1065 vendor/google_devices/gs101/proprietary/gchips/tpu/darwinn_logging_service \ 1066 vendor/google_devices/gs101/proprietary/gchips/tpu/nnapi_stable_aidl \ 1067 vendor/google_devices/gs101/proprietary/gchips/tpu/aidl \ 1068 vendor/google_devices/gs101/proprietary/gchips/tpu/hal \ 1069 vendor/google_devices/gs101/proprietary/gchips/tpu/tachyon/tachyon_apis \ 1070 vendor/google_devices/gs101/proprietary/gchips/tpu/tachyon/service 1071# TPU firmware 1072PRODUCT_PACKAGES += edgetpu-abrolhos.fw 1073 1074# Connectivity Thermal Power Manager 1075PRODUCT_PACKAGES += \ 1076 ConnectivityThermalPowerManager 1077 1078# A/B support 1079PRODUCT_PACKAGES += \ 1080 otapreopt_script \ 1081 cppreopts.sh \ 1082 update_engine \ 1083 update_engine_sideload \ 1084 update_verifier 1085 1086# pKVM 1087$(call inherit-product, packages/modules/Virtualization/apex/product_packages.mk) 1088PRODUCT_BUILD_PVMFW_IMAGE := true 1089ifeq ($(TARGET_PKVM_ENABLED),true) 1090 PRODUCT_PACKAGES += pkvm_enabler 1091else 1092 PRODUCT_COPY_FILES += \ 1093 device/google/gs101/pkvm/pkvm_experiment.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/pkvm_experiment.rc 1094endif 1095 1096# Enable watchdog timeout loop breaker. 1097PRODUCT_PROPERTY_OVERRIDES += \ 1098 framework_watchdog.fatal_window.second=600 \ 1099 framework_watchdog.fatal_count=3 1100 1101# Enable zygote critical window. 1102PRODUCT_PROPERTY_OVERRIDES += \ 1103 zygote.critical_window.minute=10 1104 1105# Suspend properties 1106# (b/171433995): Enable short suspend backoffs and reduce max backoff time 1107PRODUCT_PROPERTY_OVERRIDES += \ 1108 suspend.short_suspend_threshold_millis=2000 \ 1109 suspend.short_suspend_backoff_enabled=true \ 1110 suspend.max_sleep_time_millis=40000 1111 1112# Enable Incremental on the device 1113PRODUCT_PROPERTY_OVERRIDES += \ 1114 ro.incremental.enable=true 1115 1116# Project 1117include hardware/google/pixel/common/pixel-common-device.mk 1118 1119# Pixel Logger 1120include hardware/google/pixel/PixelLogger/PixelLogger.mk 1121 1122ifneq ($(BOARD_WITHOUT_RADIO),true) 1123# Telephony 1124include device/google/gs101/telephony/user.mk 1125endif 1126 1127# Wifi ext 1128include hardware/google/pixel/wifi_ext/device.mk 1129 1130# Battery Stats Viewer 1131PRODUCT_PACKAGES_DEBUG += BatteryStatsViewer 1132 1133# Install product specific framework compatibility matrix 1134# (TODO: b/169535506) This includes the FCM for system_ext and product partition. 1135# It must be split into the FCM of each partition. 1136DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE += device/google/gs101/device_framework_matrix_product.xml 1137 1138# Preopt SystemUI 1139ifneq ($(RELEASE_SYSTEMUI_USE_SPEED_PROFILE), true) 1140PRODUCT_DEXPREOPT_SPEED_APPS += SystemUIGoogle # For internal 1141PRODUCT_DEXPREOPT_SPEED_APPS += SystemUI # For AOSP 1142endif 1143 1144# Set on-device compilation mode for SystemUI. 1145ifeq ($(RELEASE_SYSTEMUI_USE_SPEED_PROFILE), true) 1146PRODUCT_PROPERTY_OVERRIDES += \ 1147 dalvik.vm.systemuicompilerfilter=speed-profile 1148else 1149PRODUCT_PROPERTY_OVERRIDES += \ 1150 dalvik.vm.systemuicompilerfilter=speed 1151endif 1152 1153# Keymaster configuration 1154PRODUCT_COPY_FILES += \ 1155 frameworks/native/data/etc/android.software.device_id_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_id_attestation.xml \ 1156 frameworks/native/data/etc/android.hardware.device_unique_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.device_unique_attestation.xml 1157 1158# Use 64-bit dex2oat for better dexopt time. 1159PRODUCT_PROPERTY_OVERRIDES += \ 1160 dalvik.vm.dex2oat64.enabled=true 1161 1162# Call deleteAllKeys if vold detects a factory reset 1163PRODUCT_VENDOR_PROPERTIES += ro.crypto.metadata_init_delete_all_keys.enabled=true 1164 1165# Hardware Info Collection 1166include hardware/google/pixel/HardwareInfo/HardwareInfo.mk 1167 1168# Touch service 1169include device/google/gs-common/touch/twoshay/aidl_gs101.mk 1170include device/google/gs-common/touch/twoshay/twoshay.mk 1171 1172# Allow longer timeout for incident report generation in bugreport 1173# Overriding in /product partition instead of /vendor intentionally, 1174# since it can't be overridden from /vendor. 1175PRODUCT_PRODUCT_PROPERTIES += \ 1176 dumpstate.strict_run=false 1177