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
17ifeq ($(HIKEY960_ENABLE_AVF), true)
18# Based on the instructions in the following link:
19#   https://android.googlesource.com/platform/packages/modules/Virtualization/+/refs/heads/master/microdroid/README.md
20# Tested with the android13-5.10 and android-mainline kernels.
21$(call inherit-product, packages/modules/Virtualization/apex/product_packages.mk)
22endif
23
24# Enable Virtual A/B
25AB_OTA_UPDATER := true
26AB_OTA_PARTITIONS += \
27    product \
28    system \
29    system_ext \
30    vendor
31
32$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota.mk)
33
34# BootControl HAL
35PRODUCT_PACKAGES += \
36    android.hardware.boot@1.2-impl \
37    android.hardware.boot@1.2-impl.recovery \
38    android.hardware.boot@1.2-service
39
40PRODUCT_COPY_FILES +=	$(TARGET_PREBUILT_KERNEL):kernel \
41			$(TARGET_PREBUILT_DTB):hi3660-hikey960.dtb
42
43PRODUCT_COPY_FILES +=	$(LOCAL_PATH)/fstab.hikey960:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.hikey960 \
44			$(LOCAL_PATH)/fstab.hikey960:$(TARGET_COPY_OUT_RAMDISK)/fstab.hikey960 \
45			device/linaro/hikey/hikey960/init.hikey960.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.hikey960.rc \
46			device/linaro/hikey/init.hikey960.power.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.hikey960.power.rc \
47			device/linaro/hikey/hikey960/init.hikey960.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.hikey960.usb.rc \
48			device/linaro/hikey/ueventd.common.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
49			frameworks/base/data/keyboards/Generic.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/hikey960.kl \
50			frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \
51			frameworks/native/data/etc/android.hardware.vulkan.version-1_0_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \
52			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
53
54PRODUCT_BUILD_SUPER_PARTITION := true
55PRODUCT_USE_DYNAMIC_PARTITIONS := true
56PRODUCT_USE_DYNAMIC_PARTITION_SIZE :=true
57
58# Build HiKey960 HDMI audio HAL. Experimental only may not work. FIXME
59PRODUCT_PACKAGES += audio.primary.hikey960
60
61PRODUCT_PACKAGES += gralloc.hikey960
62
63#binary blobs from ARM
64PRODUCT_PACKAGES +=	libGLES_mali \
65			vulkan.hikey960 \
66			libbccArm \
67			libRSDriverArm \
68			libmalicore.bc
69
70ifdef MALI_RS_DRIVER_AVAILABLE
71PRODUCT_COPY_FILES += \
72        $(LOCAL_PATH)/../mali/bifrost/lib/libclcore.bc:vendor/lib/libclcore.bc \
73        $(LOCAL_PATH)/../mali/bifrost/lib/libclcore_neon.bc:vendor/lib/libclcore_neon.bc \
74        $(LOCAL_PATH)/../mali/bifrost/bin/bcc:vendor/bin/bcc \
75        $(LOCAL_PATH)/../mali/bifrost/lib64/libbcc.so:vendor/lib64/libbcc.so \
76        $(LOCAL_PATH)/../mali/bifrost/lib64/libclcore.bc:vendor/lib64/libclcore.bc \
77        $(LOCAL_PATH)/../mali/bifrost/lib64/libLLVM.so:vendor/lib64/libLLVM.so
78endif
79
80OVERRIDE_RS_DRIVER := libRSDriverArm.so
81PRODUCT_PACKAGES += android.hardware.renderscript@1.0-impl
82PRODUCT_PACKAGES += vndk_package
83
84PRODUCT_PACKAGES += power.hikey960
85
86PRODUCT_DEFAULT_PROPERTY_OVERRIDES += sys.usb.controller=ff100000.dwc3
87
88PRODUCT_PACKAGES += sensors.hikey960
89
90PRODUCT_PACKAGES += hwcomposer.drm_hikey960
91
92ifneq ($(TARGET_NO_RECOVERY),true)
93PRODUCT_COPY_FILES += \
94	device/linaro/hikey/init.recovery.common.rc:recovery/root/init.recovery.hikey960.rc
95endif
96