diff options
Diffstat (limited to 'device-common.mk')
-rw-r--r-- | device-common.mk | 256 |
1 files changed, 28 insertions, 228 deletions
diff --git a/device-common.mk b/device-common.mk index 87f2bb4..6601cda 100644 --- a/device-common.mk +++ b/device-common.mk @@ -1,5 +1,5 @@ # -# Copyright (C) 2014 The Android Open-Source Project +# Copyright (C) 2022 The Android Open-Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -14,27 +14,24 @@ # limitations under the License. # -# Enable updating of APEXes -$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk) +TARGET_KERNEL_DIR ?= device/linaro/dragonboard-kernel/android-$(TARGET_KERNEL_USE) -# Device overlay -DEVICE_PACKAGE_OVERLAYS := $(LOCAL_PATH)/overlay +TARGET_USES_GKI ?= true -# Build and run only ART -PRODUCT_RUNTIMES := runtime_libart_default +ifeq ($(TARGET_USES_GKI), true) + TARGET_MODS := $(wildcard $(TARGET_KERNEL_DIR)/*.ko) + ifneq ($(TARGET_MODS),) + BOARD_VENDOR_RAMDISK_KERNEL_MODULES := $(TARGET_MODS) + endif +endif PRODUCT_SHIPPING_API_LEVEL := 31 -PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := false - -# Enable Scoped Storage related -$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk) - # Check vendor package version # If you need to make changes to the vendor partition, # please modify the source git project here: # https://staging-git.codelinaro.org/linaro/linaro-aosp/aosp-linaro-vendor-package -include $(LOCAL_PATH)/vendor-package-ver.mk +include device/linaro/dragonboard/vendor-package-ver.mk ifneq (,$(wildcard $(LINARO_VENDOR_PATH)/db845c/$(EXPECTED_LINARO_VENDOR_VERSION)/version.mk)) # Unfortunately inherit-product doesn't export build variables from the # called make file to the caller, so we have to include it directly here. @@ -54,226 +51,29 @@ else # Would be good to error out here, but that causes other issues endif - -# vndk -PRODUCT_PACKAGES := vndk-sp +PRODUCT_SOONG_NAMESPACES += \ + device/linaro/dragonboard \ + vendor/linaro/linux-firmware/$(EXPECTED_LINARO_VENDOR_VERSION) \ + vendor/linaro/db845c/$(EXPECTED_LINARO_VENDOR_VERSION) \ + vendor/linaro/rb5/$(EXPECTED_LINARO_VENDOR_VERSION) # Dynamic partitions PRODUCT_BUILD_SUPER_PARTITION := true PRODUCT_USE_DYNAMIC_PARTITIONS := true PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true -# HACK: Avoid usb crash -PRODUCT_PRODUCT_PROPERTIES := \ - persist.adb.nonblocking_ffs=0 \ - ro.adb.nonblocking_ffs=0 - -# Display -PRODUCT_PACKAGES += \ - android.hardware.drm@1.3-service.clearkey \ - android.hardware.drm@1.3-service.widevine \ - libGLES_mesa \ - libEGL_mesa \ - libGLESv1_CM_mesa \ - libGLESv2_mesa \ - libgallium_dri \ - libglapi - -PRODUCT_PROPERTY_OVERRIDES += \ - ro.hardware.gralloc=minigbm_msm \ - ro.hardware.hwcomposer=drm \ - ro.opengles.version=196608 \ - persist.demo.rotationlock=1 - -# Vulkan -PRODUCT_PACKAGES += \ - vulkan.freedreno - -PRODUCT_COPY_FILES += \ - 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.software.vulkan.deqp.level-2021-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml \ - -PRODUCT_VENDOR_PROPERTIES += \ - ro.hardware.vulkan=freedreno - -# Will need to enable this after ANDROID_external_memory_android_hardware_buffer lands in mesa -#TARGET_USES_VULKAN = true - -# -# Hardware Composer HAL -# -PRODUCT_PACKAGES += \ - hwcomposer.drm \ - android.hardware.graphics.composer@2.3-impl \ - android.hardware.graphics.composer@2.3-service - -# -# Gralloc HAL -# -PRODUCT_PACKAGES += \ - gralloc.minigbm_msm \ - android.hardware.graphics.allocator@4.0-service.minigbm_msm \ - android.hardware.graphics.mapper@4.0-impl.minigbm_msm - - -# Use Launcher3QuickStep -PRODUCT_PACKAGES += Launcher3QuickStep - -# Enable WiFi -PRODUCT_PACKAGES += \ - hostapd \ - libwpa_client \ - wpa_supplicant \ - wpa_supplicant.conf \ - wificond - -PRODUCT_PROPERTY_OVERRIDES += \ - wifi.interface=wlan0 \ - wifi.supplicant_scan_interval=15 - -PRODUCT_COPY_FILES += \ - 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 \ - $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \ - $(LOCAL_PATH)/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf - -# Enable BT -PRODUCT_PACKAGES += \ - android.hardware.bluetooth@1.1-service.btlinux +# Enable Virtual A/B +AB_OTA_UPDATER := true +AB_OTA_PARTITIONS += \ + product \ + system \ + system_ext \ + 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 - -# -# Power HAL -# -PRODUCT_PACKAGES += \ - android.hardware.power-service.example - -# -# PowerStats HAL -# -PRODUCT_PACKAGES += \ - android.hardware.power.stats-service.example - - -# Audio -PRODUCT_PACKAGES += \ - android.hardware.audio.service \ - android.hardware.audio@7.0-impl \ - android.hardware.audio.effect@7.0-impl \ - android.hardware.soundtrigger@2.3-impl \ - android.hardware.bluetooth.audio@2.0-impl - -# Build default bluetooth a2dp and usb audio HALs -PRODUCT_PACKAGES += \ - audio.a2dp.default \ - audio.bluetooth.default \ - audio.usb.default \ - audio.r_submix.default - -# Build tinyalsa cli tools for debugging -PRODUCT_PACKAGES += \ - tinyplay \ - tinycap \ - tinymix \ - tinypcminfo - -# audio policy configuration -USE_XML_AUDIO_POLICY_CONF := 1 -PRODUCT_COPY_FILES += \ - $(LOCAL_PATH)/etc/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \ - $(LOCAL_PATH)/etc/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ - $(LOCAL_PATH)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.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/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \ - frameworks/av/services/audiopolicy/config/primary_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/primary_audio_policy_configuration.xml \ - frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_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/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \ - frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \ - frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml - -# Copy media codecs config file -PRODUCT_COPY_FILES += \ - $(LOCAL_PATH)/etc/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \ - frameworks/av/media/libeffects/data/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.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_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml - -PRODUCT_COPY_FILES += \ - $(LOCAL_PATH)/seccomp_policy/mediaswcodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy \ - $(LOCAL_PATH)/seccomp_policy/mediaswcodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediaswcodec.policy - -# Copy hardware config file(s) -PRODUCT_COPY_FILES += \ - device/linaro/dragonboard/etc/permissions/android.software.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.xml - - -# External Web Cam support -PRODUCT_PACKAGES += \ - android.hardware.camera.provider@2.4-impl \ - android.hardware.camera.provider@2.4-external-service - -PRODUCT_COPY_FILES += \ - frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ - $(LOCAL_PATH)/etc/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \ - $(LOCAL_PATH)/etc/external_camera_config.xml:$(TARGET_COPY_OUT_VENDOR)/etc/external_camera_config.xml - -# Keymaster -PRODUCT_PACKAGES += \ - android.hardware.keymaster@3.0-impl \ - android.hardware.keymaster@3.0-service - -# Gatekeeper -PRODUCT_PACKAGES += \ - android.hardware.gatekeeper@1.0-service.software - -# Health -PRODUCT_PACKAGES += \ - android.hardware.health@2.1-impl-cuttlefish \ - android.hardware.health@2.1-service - -# TODO: disable this service once we implement system suspend -PRODUCT_PACKAGES += \ - suspend_blocker - -# mkbootimg host tool to build boot.img separately -PRODUCT_HOST_PACKAGES := \ - mkbootimg - -# Userspace vendor services for WiFi/Audio to work -PRODUCT_PACKAGES += \ - pd-mapper \ - qrtr-ns \ - qrtr-cfg \ - qrtr-lookup \ - rmtfs \ - tqftpserv - -PRODUCT_COPY_FILES += \ - $(LOCAL_PATH)/qcom/init.qcom.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.qcom.rc - -# Copy standard platform config files -PRODUCT_COPY_FILES += \ - $(LOCAL_PATH)/ueventd.common.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \ - frameworks/native/data/etc/android.software.cts.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.cts.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.voice_recognizers.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.voice_recognizers.xml \ - frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \ - frameworks/native/data/etc/android.software.print.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.print.xml \ - frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ - frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \ - frameworks/native/data/etc/android.software.opengles.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \ - frameworks/native/data/etc/android.software.device_admin.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_admin.xml - -PRODUCT_SOONG_NAMESPACES += \ - device/linaro/dragonboard \ - external/mesa3d \ - vendor/linaro/linux-firmware/$(EXPECTED_LINARO_VENDOR_VERSION) \ - vendor/linaro/db845c/$(EXPECTED_LINARO_VENDOR_VERSION) \ - vendor/linaro/rb5/$(EXPECTED_LINARO_VENDOR_VERSION) - + $(TARGET_KERNEL_DIR)/Image.gz:kernel \ + device/linaro/dragonboard/fstab.common:$(TARGET_COPY_OUT_RAMDISK)/first_stage_ramdisk/fstab.$(TARGET_HARDWARE) \ + device/linaro/dragonboard/fstab.common:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.$(TARGET_HARDWARE) \ + device/linaro/dragonboard/init.common.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.$(TARGET_HARDWARE).rc \ + device/linaro/dragonboard/init.common.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.$(TARGET_HARDWARE).usb.rc \ + device/linaro/dragonboard/common.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/$(TARGET_HARDWARE).kl |