# # Copyright (C) 2023 The LineageOS Project # # SPDX-License-Identifier: Apache-2.0 # # Enable project quotas and casefolding for emulated storage without sdcardfs $(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk) # Enforce generic ramdisk allow list $(call inherit-product, $(SRC_TARGET_DIR)/product/generic_ramdisk.mk) # Enable virtual AB with vendor ramdisk $(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota/launch_with_vendor_ramdisk.mk) # Setup dalvik vm configs $(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk) # A/B AB_OTA_POSTINSTALL_CONFIG += \ RUN_POSTINSTALL_system=true \ POSTINSTALL_PATH_system=system/bin/otapreopt_script \ FILESYSTEM_TYPE_system=ext4 \ POSTINSTALL_OPTIONAL_system=true AB_OTA_POSTINSTALL_CONFIG += \ RUN_POSTINSTALL_vendor=true \ POSTINSTALL_PATH_vendor=bin/checkpoint_gc \ FILESYSTEM_TYPE_vendor=ext4 \ POSTINSTALL_OPTIONAL_vendor=true PRODUCT_PACKAGES += \ checkpoint_gc \ otapreopt_script # Atrace PRODUCT_PACKAGES += \ android.hardware.atrace@1.0-service # Authsecret PRODUCT_PACKAGES += \ android.hardware.authsecret@1.0.vendor # Bluetooth PRODUCT_PACKAGES += \ android.hardware.bluetooth@1.1.vendor \ vendor.qti.hardware.bluetooth_audio@2.1.vendor \ vendor.qti.hardware.btconfigstore@1.0.vendor \ vendor.qti.hardware.btconfigstore@2.0.vendor PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \ frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml # Boot control PRODUCT_PACKAGES += \ android.hardware.boot@1.2-impl-qti \ android.hardware.boot@1.2-impl-qti.recovery \ android.hardware.boot@1.2-service # CAS PRODUCT_PACKAGES += \ android.hardware.cas@1.2-service # Camera PRODUCT_PACKAGES += \ android.hardware.camera.device@3.4.vendor \ android.hardware.camera.provider-V1-ndk.vendor \ android.hardware.camera.provider@2.4.vendor \ vendor.qti.hardware.camera.aon@1.3.vendor \ vendor.qti.hardware.camera.postproc@1.0.vendor PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.camera.concurrent.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.concurrent.xml \ frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \ frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \ frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml # Display PRODUCT_PACKAGES += \ android.hardware.graphics.common-V1-ndk_platform.vendor \ android.hardware.graphics.mapper@3.0-impl-qti-display \ android.hardware.graphics.mapper@4.0-impl-qti-display \ android.hardware.memtrack@1.0-impl \ android.hardware.memtrack@1.0-service \ libdisplayconfig.qti \ libdisplayconfig.system.qti \ libmemutils \ libqdMetaData \ libqdMetaData.system \ libsdmcore \ libsdmutils \ libtinyxml \ memtrack.default \ vendor.display.config@1.0 \ vendor.display.config@1.15.vendor \ vendor.display.config@2.0 \ vendor.display.config@2.0.vendor \ vendor.qti.hardware.display.allocator-service \ vendor.qti.hardware.display.composer-service \ vendor.qti.hardware.display.mapper@1.1.vendor \ vendor.qti.hardware.display.mapper@2.0.vendor \ vendor.qti.hardware.display.mapper@3.0.vendor \ vendor.qti.hardware.display.mapper@4.0.vendor PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml # DRM PRODUCT_PACKAGES += \ android.hardware.drm@1.3.vendor \ android.hardware.drm-service.clearkey # Fastboot PRODUCT_PACKAGES += \ fastbootd # Gatekeeper PRODUCT_PACKAGES += \ android.hardware.gatekeeper@1.0.vendor # Graphics PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \ frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \ frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-1.xml \ frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_1.xml \ frameworks/native/data/etc/android.hardware.vulkan.version-1_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_3.xml \ frameworks/native/data/etc/android.software.opengles.deqp.level-2022-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \ frameworks/native/data/etc/android.software.vulkan.deqp.level-2022-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml # GPS PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml # HIDL PRODUCT_PACKAGES += \ libhidltransport.vendor \ libhwbinder.vendor # Health PRODUCT_PACKAGES += \ android.hardware.health@1.0.vendor \ android.hardware.health@2.1.vendor # Hotword enrollment PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/permissions/privapp-permissions-hotword.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/privapp-permissions-hotword.xml # IPACM PRODUCT_PACKAGES += \ ipacm \ IPACM_cfg.xml \ IPACM_Filter_cfg.xml # Init PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/init/fstab.qcom:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/first_stage_ramdisk/fstab.qcom PRODUCT_PACKAGES += \ fstab.qcom \ init.class_main.sh \ init.qcom.early_boot.sh \ init.qcom.post_boot.sh \ init.qcom.rc \ init.qcom.sh \ init.recovery.qcom.rc \ init.target.rc \ ueventd-odm.rc \ ueventd.qcom.rc PRODUCT_PACKAGES += \ init.samsung.bsp.rc \ init.samsung.connector.rc \ init.samsung.display.rc \ init.samsung.dp.rc \ init.samsung.power.rc \ init.samsung.rc # Keymaster PRODUCT_PACKAGES += \ android.hardware.keymaster@4.1.vendor \ libkeymaster_messages.vendor # Keymint PRODUCT_PACKAGES += \ android.hardware.hardware_keystore.xml \ android.hardware.security.keymint-V1-ndk.vendor \ android.hardware.security.secureclock-V1-ndk.vendor \ android.hardware.security.sharedsecret-V1-ndk.vendor PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.keystore.app_attest_key.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.keystore.app_attest_key.xml # Media PRODUCT_PACKAGES += \ libavservices_minijail \ libavservices_minijail.vendor \ libcodec2_hidl@1.0.vendor PRODUCT_COPY_FILES += \ frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_c2_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_audio.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_c2_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_video.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \ frameworks/av/media/libstagefright/data/media_codecs_google_video_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video_le.xml # Namespaces PRODUCT_SOONG_NAMESPACES += \ $(LOCAL_PATH) \ hardware/samsung # Net PRODUCT_PACKAGES += \ android.system.net.netd@1.1.vendor # OMX PRODUCT_PACKAGES += \ libOmxAacEnc \ libOmxAmrEnc \ libOmxCore \ libOmxEvrcEnc \ libOmxG711Enc \ libOmxQcelp13Enc \ libstagefrighthw # Overlays PRODUCT_ENFORCE_RRO_TARGETS := * PRODUCT_PACKAGES += \ CarrierConfigResCommon \ FrameworksResCommon \ FrameworksResTarget \ SystemUIResCommon \ TelecommResCommon \ TelephonyResCommon \ WifiResCommon \ WifiResTarget # Partitions PRODUCT_USE_DYNAMIC_PARTITIONS := true # Power PRODUCT_PACKAGES += \ android.hardware.power-service-qti \ android.hardware.power@1.2.vendor \ vendor.qti.hardware.perf@2.3.vendor PRODUCT_COPY_FILES += \ vendor/qcom/opensource/power/config/kalama/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml # QMI PRODUCT_PACKAGES += \ libjson \ libqti_vndfwk_detect.vendor \ libqti_vndfwk_detect_vendor \ libvndfwk_detect_jni.qti.vendor \ libvndfwk_detect_jni.qti_vendor # QTI service tracker PRODUCT_PACKAGES += \ vendor.qti.hardware.servicetracker@1.2.vendor # QTI PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/permissions/privapp-permissions-qti.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-qti.xml \ $(LOCAL_PATH)/configs/permissions/qti_whitelist.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/sysconfig/qti_whitelist.xml # RIL PRODUCT_PACKAGES += \ android.hardware.radio@1.6.vendor \ android.hardware.radio.config@1.3.vendor \ android.hardware.radio.deprecated@1.0.vendor \ libprotobuf-cpp-full \ librmnetctl \ secril_config_svc # Sensors PRODUCT_PACKAGES += \ android.hardware.sensors-service.multihal \ libsensorndkbridge PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/configs/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \ frameworks/native/data/etc/android.hardware.sensor.ambient_temperature.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.ambient_temperature.xml \ frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \ frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \ frameworks/native/data/etc/android.hardware.sensor.hifi_sensors.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.hifi_sensors.xml \ frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \ frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \ frameworks/native/data/etc/android.hardware.sensor.relative_humidity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.relative_humidity.xml \ frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \ frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml # Shipping API BOARD_API_LEVEL := 33 BOARD_SHIPPING_API_LEVEL := $(BOARD_API_LEVEL) PRODUCT_SHIPPING_API_LEVEL := $(BOARD_API_LEVEL) # Thermal PRODUCT_PACKAGES += \ android.hardware.thermal@2.0 \ android.hardware.thermal@2.0.vendor # USB PRODUCT_PACKAGES += \ android.hardware.usb@1.3-service-qti PRODUCT_SOONG_NAMESPACES += \ vendor/qcom/opensource/usb/etc PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml # Update engine PRODUCT_PACKAGES += \ update_engine \ update_engine_sideload \ update_verifier PRODUCT_PACKAGES_DEBUG += \ update_engine_client # Vendor service manager PRODUCT_PACKAGES += \ vndservicemanager # Verified Boot PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml # Vibrator PRODUCT_PACKAGES += \ android.hardware.vibrator-service.samsung # WiFi PRODUCT_PACKAGES += \ android.hardware.wifi@1.0-service \ android.hardware.wifi.hostapd@1.0.vendor \ hostapd \ libwpa_client \ libwifi-hal-ctrl \ libwifi-hal-qcom \ wpa_supplicant \ wpa_supplicant.conf PRODUCT_COPY_FILES += \ frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \ frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \ frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \ frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \ frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml # Inherit from the proprietary files makefile. $(call inherit-product, vendor/samsung/sm8550-common/sm8550-common-vendor.mk)