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