#
-# Copyright (C) 2021 The LineageOS Project
+# Copyright (C) 2021-2023 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0
#
-$(call inherit-product, vendor/amlogic/g12-common/g12-common-vendor.mk)
-
-COMMON_PATH := device/amlogic/g12-common
+## Attestation
+PRODUCT_COPY_FILES += \
+ frameworks/native/data/etc/android.hardware.device_unique_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.device_unique_attestation.xml \
+ frameworks/native/data/etc/android.hardware.keystore.app_attest_key.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.keystore.app_attest_key.xml
-## AAPT
-PRODUCT_AAPT_PREF_CONFIG := tvdpi
+PRODUCT_COPY_FILES += \
+ frameworks/native/data/etc/android.software.device_id_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_id_attestation.xml
## Audio
PRODUCT_COPY_FILES += \
- $(COMMON_PATH)/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
- $(COMMON_PATH)/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
- $(COMMON_PATH)/audio/audio_policy_configuration_dolby_ms12.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_dolby_ms12.xml \
- $(COMMON_PATH)/audio/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
- frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
- frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
- frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
- frameworks/av/services/audiopolicy/config/hearing_aid_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/hearing_aid_audio_policy_configuration.xml \
- frameworks/av/services/audiopolicy/config/msd_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/msd_audio_policy_configuration.xml \
- frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
- frameworks/av/services/audiopolicy/config/surround_sound_configuration_5_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/surround_sound_configuration_5_0.xml \
- frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
+ $(LOCAL_PATH)/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
+ $(LOCAL_PATH)/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
+ $(LOCAL_PATH)/audio/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml
PRODUCT_PACKAGES += \
- android.hardware.audio@2.0-service \
android.hardware.audio@5.0-impl \
+ android.hardware.audio@7.0.vendor \
+ android.hardware.audio@7.0-util.vendor \
+ android.hardware.audio.common@7.0-util \
android.hardware.audio.effect@5.0-impl \
- android.hardware.soundtrigger@2.2-impl \
- audio.a2dp.default \
- audio.bluetooth.default \
- audio.hearing_aid.default \
- audio.r_submix.default \
- audio.usb.default
+ android.hardware.audio.effect@7.0-util.vendor \
+ av-types-aidl-cpp.vendor \
+ libaudioclient_aidl_conversion_util.vendor \
+ libaudiofoundation.vendor
## Bluetooth
PRODUCT_PACKAGES += \
- android.hardware.bluetooth@1.0-impl \
- android.hardware.bluetooth@1.0-service \
- android.hardware.bluetooth.audio@2.0-impl
-
-## Boot animation
-TARGET_SCREEN_HEIGHT := 1080
-TARGET_SCREEN_WIDTH := 1920
+ android.hardware.bluetooth@1.0.vendor
## Camera
PRODUCT_PACKAGES += \
android.hardware.camera.provider@2.4-legacy \
android.hardware.camera.provider@2.5-legacy \
+ android.hardware.camera.provider@2.5-service \
camera.device@1.0-impl \
camera.device@3.2-impl \
camera.device@3.3-impl \
camera.device@3.4-impl \
camera.device@3.5-impl
-## Characteristics
-PRODUCT_CHARACTERISTICS := tv
-PRODUCT_IS_ATV := true
-
## Codecs
PRODUCT_COPY_FILES += \
- $(COMMON_PATH)/media/media_codecs_sw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
- $(COMMON_PATH)/media/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
- $(COMMON_PATH)/media/media_codecs_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_profiles.xml \
- $(COMMON_PATH)/media/media_codecs_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_profiles_V1_0.xml \
- $(COMMON_PATH)/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \
- $(COMMON_PATH)/media/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
- frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
- frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml
-
-## DRM
-PRODUCT_PACKAGES += \
- android.hardware.drm@1.0-impl \
- android.hardware.drm@1.0-service \
- android.hardware.drm@1.3-service.clearkey
+ $(LOCAL_PATH)/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \
+ $(LOCAL_PATH)/media/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml
-## fastbootd
-PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.fastbootd.available=true
-PRODUCT_PACKAGES += fastbootd
+ifneq ($(PRODUCT_USE_SW_OMX),true)
+PRODUCT_COPY_FILES += \
+ $(LOCAL_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
+ $(LOCAL_PATH)/media/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml
+endif
-## File-system permissions
+## dumpstate
PRODUCT_PACKAGES += \
- fs_config_dirs \
- fs_config_files
+ android.hardware.dumpstate@1.1.vendor
-## Gatekeeper
+## Graphics
PRODUCT_PACKAGES += \
- android.hardware.gatekeeper@1.0-service.software
+ android.hardware.graphics.composer@2.4.vendor
-## Hardware Compsoer
-PRODUCT_PACKAGES += \
- libhwc2on1adapter \
- libhwc2onfbadapter
+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.xml \
+ frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \
+ frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml
-## HDMI CEC
-PRODUCT_PACKAGES += \
- android.hardware.tv.cec@1.0-impl \
- android.hardware.tv.cec@1.0-service
+PRODUCT_COPY_FILES += \
+ frameworks/native/data/etc/android.software.opengles.deqp.level-2021-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \
+ frameworks/native/data/etc/android.software.vulkan.deqp.level-2021-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml
+
+PRODUCT_COPY_FILES += \
+ $(LOCAL_PATH)/configs/mesondisplay.cfg:$(TARGET_COPY_OUT_RECOVERY)/root/system/etc/mesondisplay.cfg \
+ $(LOCAL_PATH)/configs/mesondisplay.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/mesondisplay.cfg
## Health
PRODUCT_PACKAGES += \
- android.hardware.health@2.0-service
+ android.hardware.health@2.1.vendor
# Init-Files
PRODUCT_COPY_FILES += \
- $(COMMON_PATH)/init-files/fstab.amlogic:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.amlogic \
- $(COMMON_PATH)/init-files/init.amlogic.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.rc \
- $(COMMON_PATH)/init-files/init.amlogic.board.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.board.rc \
- $(COMMON_PATH)/init-files/init.amlogic.media.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.media.rc \
- $(COMMON_PATH)/init-files/init.amlogic.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.usb.rc \
- $(COMMON_PATH)/init-files/init.recovery.amlogic.rc:recovery/root/init.recovery.amlogic.rc \
- $(COMMON_PATH)/init-files/ueventd.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc
+ $(LOCAL_PATH)/init-files/init.amlogic.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.rc \
+ $(LOCAL_PATH)/init-files/init.amlogic.board.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.board.rc \
+ $(LOCAL_PATH)/init-files/init.amlogic.media.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.media.rc \
+ $(LOCAL_PATH)/init-files/init.amlogic.system.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.system.rc \
+ $(LOCAL_PATH)/init-files/init.amlogic.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.usb.rc \
+ $(LOCAL_PATH)/init-files/init.amlogic.wifi.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.amlogic.wifi.rc \
+ $(LOCAL_PATH)/init-files/init.recovery.amlogic.rc:recovery/root/init.recovery.amlogic.rc \
+ $(LOCAL_PATH)/init-files/ueventd.rc:$(TARGET_COPY_OUT_VENDOR)/etc/ueventd.rc
+
+PRODUCT_PACKAGES += \
+ fstab.amlogic
## Kernel Modules
PRODUCT_PACKAGES += \
mali \
- media \
+ media
+
+ifneq ($(TARGET_HAS_TEE),false)
+PRODUCT_PACKAGES += \
optee-module
+endif
## Keymaster
+ifneq ($(TARGET_HAS_TEE),false)
PRODUCT_PACKAGES += \
- libkeymaster4.vendor \
- libkeymaster4support.vendor \
+ android.hardware.security.keymint-V1-ndk_platform.vendor \
+ android.hardware.security.secureclock-V1-ndk_platform.vendor \
+ android.hardware.security.sharedsecret-V1-ndk_platform.vendor \
+ lib_android_keymaster_keymint_utils.vendor \
+ libkeymint.vendor \
libkeymaster_messages.vendor \
libkeymaster_portable.vendor \
libpuresoftkeymasterdevice.vendor \
- libsoft_attestation_cert.vendor
-
-ifeq ($(TARGET_HAS_TEE),false)
-PRODUCT_PACKAGES += \
- android.hardware.keymaster@4.1-service
+ libshmemutil.vendor \
+ libshmemcompat.vendor \
+ libsoft_attestation_cert.vendor \
+ libtrusty.vendor
endif
-## Logo
-PRODUCT_HOST_PACKAGES += \
- res_packer
+## OEM Lock
+ifneq ($(TARGET_HAS_TEE),false)
+PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
+ ro.oem_unlock_supported=1
-## Memtrack
PRODUCT_PACKAGES += \
- android.hardware.memtrack@1.0-impl \
- android.hardware.memtrack@1.0-service
-
-## NRDP (Netflix)
-PRODUCT_COPY_FILES += \
- $(COMMON_PATH)/nrdp/nrdp.xml:/vendor/etc/permissions/nrdp.xml \
- $(COMMON_PATH)/nrdp/nrdp_audio_platform_capabilities.json:/vendor/etc/permissions/nrdp_audio_platform_capabilities.json \
- $(COMMON_PATH)/nrdp/nrdp_audio_platform_capabilities_ms12.json:/vendor/etc/permissions/nrdp_audio_platform_capabilities_ms12.json \
- $(COMMON_PATH)/nrdp/nrdp_platform_capabilities.json:/vendor/etc/permissions/nrdp_platform_capabilities.json
-
-## Overlays
-DEVICE_PACKAGE_OVERLAYS += \
- $(COMMON_PATH)/overlay
-PRODUCT_ENFORCE_RRO_TARGETS := *
+ android.hardware.oemlock@1.0.vendor
+endif
## Partitions
-BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT := true
-BUILDING_SUPER_EMPTY_IMAGE := true
-PRODUCT_BUILD_SUPER_PARTITION := true
PRODUCT_USE_DYNAMIC_PARTITIONS := true
-
-## Permissions
-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 \
- frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
- frameworks/native/data/etc/android.hardware.gamepad.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.gamepad.xml \
- frameworks/native/data/etc/android.hardware.hdmi.cec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.hdmi.cec.xml \
- frameworks/native/data/etc/android.hardware.location.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.xml \
- frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
- frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
- frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute.xml \
- frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \
- frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \
- frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
- frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
- frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \
- frameworks/native/data/etc/android.software.app_widgets.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.app_widgets.xml \
- frameworks/native/data/etc/android.software.backup.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.backup.xml \
- frameworks/native/data/etc/android.software.cts.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.cts.xml \
- frameworks/native/data/etc/android.software.device_admin.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_admin.xml \
- frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \
- frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml \
- frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml \
- frameworks/native/data/etc/android.software.vulkan.deqp.level-2019-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level-2019-03-01.xml.xml \
- frameworks/native/data/etc/android.software.vulkan.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml
+$(call inherit-product, $(SRC_TARGET_DIR)/product/non_ab_device.mk)
## Platform
TARGET_AMLOGIC_SOC ?= g12a
## Power
PRODUCT_PACKAGES += \
- android.hardware.power@1.0-impl \
- android.hardware.power@1.0-service
+ android.hardware.power-V2-ndk_platform.vendor
## Shipping API
PRODUCT_SHIPPING_API_LEVEL := 29
-## Trust HAL
+## Soong namespaces
+PRODUCT_SOONG_NAMESPACES += \
+ $(LOCAL_PATH)
+
+## Thermal
PRODUCT_PACKAGES += \
- vendor.lineage.trust@1.0-service
+ android.hardware.thermal@2.0.vendor
-## Wi-Fi
+## USB
PRODUCT_PACKAGES += \
- android.hardware.wifi@1.0-service \
- hostapd \
- libwpa_client \
- WifiOverlay \
- wpa_supplicant \
- wpa_supplicant.conf
+ android.hardware.usb.gadget@1.2.vendor
+
+## Widevine DRM
+PRODUCT_PACKAGES += \
+ android.hardware.drm@1.4.vendor
+
+## Inherit from the main common tree product makefile
+$(call inherit-product, device/amlogic/common/amlogic.mk)
+
+## Inherit from the common proprietary files makefile
+$(call inherit-product, vendor/amlogic/g12-common/g12-common-vendor.mk)