| # |
| # Copyright (C) 2018 Texas Instruments Incorporated - http://www.ti.com/ |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| |
| PRODUCT_HARDWARE := beagle_x15board |
| |
| # Enable updating of APEXes |
| $(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk) |
| $(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk) |
| |
| PRODUCT_SOONG_NAMESPACES += \ |
| device/ti/beagle_x15 \ |
| hardware/ti/am57x |
| |
| # Adjust the dalvik heap to be appropriate for a tablet. |
| $(call inherit-product, frameworks/native/build/tablet-7in-xhdpi-2048-dalvik-heap.mk) |
| |
| PRODUCT_SHIPPING_API_LEVEL := 32 |
| PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := false |
| |
| # Set custom settings |
| DEVICE_PACKAGE_OVERLAYS := device/ti/beagle_x15/overlay |
| PREBUILT_DIR := device/ti/beagle_x15-kernel |
| |
| # Helper variables for working with kernel files |
| ifneq ($(KERNELDIR),) |
| KERNEL_MAJ := $(shell grep '^VERSION' $(KERNELDIR)/Makefile | cut -d " " -f 3) |
| KERNEL_MIN := $(shell grep '^PATCHLEVEL' $(KERNELDIR)/Makefile | cut -d " " -f 3) |
| TARGET_KERNEL_USE := $(KERNEL_MAJ).$(KERNEL_MIN) |
| |
| LOCAL_KERNEL_HOME := $(KERNELDIR) |
| LOCAL_KERNEL := $(KERNELDIR)/arch/arm/boot/zImage |
| |
| # Check if kernel/omap or linux-mainline is used |
| ifneq ($(wildcard $(KERNELDIR)/arch/arm/boot/dts/ti/.*),) |
| DTB_DIR := $(KERNELDIR)/arch/arm/boot/dts/ti |
| else |
| DTB_DIR := $(KERNELDIR)/arch/arm/boot/dts |
| endif |
| DTBO_DIR := $(KERNELDIR)/arch/arm/boot/dts/ti |
| else |
| TARGET_KERNEL_USE ?= 4.14 |
| KERNEL_MAJ := $(word 1, $(subst ., ,$(TARGET_KERNEL_USE))) |
| KERNEL_MIN := $(word 2, $(subst ., ,$(TARGET_KERNEL_USE))) |
| |
| LOCAL_KERNEL_HOME ?= $(PREBUILT_DIR)/$(TARGET_KERNEL_USE) |
| LOCAL_KERNEL := $(LOCAL_KERNEL_HOME)/zImage |
| DTB_DIR := $(LOCAL_KERNEL_HOME) |
| DTBO_DIR := $(DTB_DIR) |
| endif |
| |
| TARGET_PREBUILT_KERNEL := $(LOCAL_KERNEL) |
| PRODUCT_COPY_FILES += $(LOCAL_KERNEL):kernel |
| |
| # |
| # Power HAL |
| # |
| PRODUCT_PACKAGES += \ |
| android.hardware.power-service.example |
| # |
| # PowerStats HAL |
| # |
| PRODUCT_PACKAGES += \ |
| android.hardware.power.stats-service.example |
| |
| # Graphics |
| PRODUCT_PACKAGES += \ |
| android.hardware.graphics.allocator@2.0-impl \ |
| android.hardware.graphics.allocator@2.0-service \ |
| android.hardware.graphics.mapper@2.0-impl \ |
| android.hardware.graphics.mapper@2.0-service \ |
| android.hardware.graphics.composer@2.1-impl \ |
| android.hardware.graphics.composer@2.1-service \ |
| android.hardware.boot@1.2-impl:64 \ |
| android.hardware.boot@1.2-impl.recovery:64 \ |
| android.hardware.boot@1.2-service \ |
| android.hardware.fastboot@1.0 \ |
| android.hardware.fastboot@1.0-impl-mock \ |
| modetest \ |
| libdrm \ |
| libdrm_omap \ |
| gralloc.am57x \ |
| libEGL_POWERVR_SGX544_116 \ |
| libGLESv1_CM_POWERVR_SGX544_116 \ |
| libGLESv2_POWERVR_SGX544_116 \ |
| libPVRScopeServices \ |
| memtrack.am57x \ |
| pvrsrvctl \ |
| |
| ifeq ($(USE_TI_HWC), y) |
| PRODUCT_PACKAGES += hwcomposer.am57x |
| else |
| PRODUCT_PACKAGES += hwcomposer.drm_imagination |
| PRODUCT_PROPERTY_OVERRIDES += ro.hardware.hwcomposer=drm_imagination |
| endif |
| |
| # Software Gatekeeper HAL |
| PRODUCT_PACKAGES += \ |
| android.hardware.gatekeeper@1.0-service.software \ |
| |
| #Health |
| PRODUCT_PACKAGES += \ |
| android.hardware.health@2.1-impl \ |
| android.hardware.health@2.1-service \ |
| |
| #Security |
| PRODUCT_PACKAGES += \ |
| android.hardware.keymaster@3.0-impl \ |
| android.hardware.keymaster@3.0-service \ |
| android.hardware.drm@1.3-service.clearkey \ |
| android.hardware.drm@1.3-service.widevine \ |
| |
| |
| # Audio |
| PRODUCT_PACKAGES += \ |
| android.hardware.audio@6.0-impl \ |
| android.hardware.audio.service \ |
| android.hardware.audio.effect@6.0-impl \ |
| |
| # Audio policy configuration |
| USE_XML_AUDIO_POLICY_CONF := 1 |
| PRODUCT_COPY_FILES += \ |
| device/ti/beagle_x15/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.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/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 \ |
| |
| |
| PRODUCT_PROPERTY_OVERRIDES += \ |
| ro.opengles.version=131072 \ |
| ro.sf.lcd_density=160 \ |
| |
| # All VNDK libraries (HAL interfaces, VNDK, VNDK-SP, LL-NDK) |
| PRODUCT_PACKAGES += vndk_package |
| |
| # USB |
| PRODUCT_PACKAGES += \ |
| android.hardware.usb@1.0-service \ |
| |
| PRODUCT_COPY_FILES += \ |
| 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.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ |
| |
| PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ |
| persist.sys.usb.config=mtp \ |
| |
| ifeq ($(KERNEL_MAJ),4) |
| TARGET_FSTAB := fstab.beagle_x15board_v4 |
| else |
| TARGET_FSTAB := fstab.beagle_x15board_v5 |
| endif |
| |
| PRODUCT_COPY_FILES += \ |
| $(LOCAL_PATH)/init.recovery.hardware.rc:recovery/root/init.recovery.$(PRODUCT_HARDWARE).rc \ |
| device/ti/beagle_x15/tablet_core_hardware_beagle_x15.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/tablet_core_hardware_beagle_x15.xml \ |
| device/ti/beagle_x15/init.beagle_x15board.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.beagle_x15board.rc \ |
| device/ti/beagle_x15/init.beagle_x15board.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.beagle_x15board.usb.rc \ |
| device/ti/beagle_x15/ueventd.beagle_x15board.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \ |
| device/ti/beagle_x15/$(TARGET_FSTAB):$(TARGET_COPY_OUT_RAMDISK)/fstab.beagle_x15board \ |
| device/ti/beagle_x15/$(TARGET_FSTAB):$(TARGET_COPY_OUT_VENDOR)/etc/fstab.beagle_x15board \ |
| frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \ |
| |
| #FIXME: this feature should be turned off as soon as google start checking for WIFI support before wifi calls |
| PRODUCT_COPY_FILES += \ |
| frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ |
| |
| # Static modprobe for recovery image |
| PRODUCT_PACKAGES += \ |
| toybox_static \ |
| |
| PRODUCT_CHARACTERISTICS := tablet,nosdcard |
| |
| PRODUCT_PACKAGES += \ |
| toybox_vendor \ |
| Launcher3 \ |
| WallpaperPicker \ |
| sh_vendor \ |
| vintf \ |
| netutils-wrapper-1.0 \ |
| messaging \ |
| healthd \ |
| gatekeeperd \ |
| |
| # Boot control |
| PRODUCT_PACKAGES += \ |
| bootctrl.am57x \ |
| |
| PRODUCT_PACKAGES_DEBUG += \ |
| bootctl \ |
| fastbootd \ |
| # A/B |
| PRODUCT_PACKAGES += \ |
| update_engine \ |
| update_verifier |
| |
| PRODUCT_PACKAGES += \ |
| update_engine_sideload |
| |
| PRODUCT_PACKAGES_DEBUG += \ |
| update_engine_client |
| |
| PRODUCT_USE_DYNAMIC_PARTITIONS := true |