g12: Reserve space for GApps
[GitHub/LineageOS/G12/android_device_amlogic_g12-common.git] / BoardConfigCommon.mk
1 #
2 # Copyright (C) 2021 The LineageOS Project
3 #
4 # SPDX-License-Identifier: Apache-2.0
5 #
6
7 include vendor/amlogic/g12-common/BoardConfigVendor.mk
8
9 COMMON_PATH := device/amlogic/g12-common
10
11 ## Android Verified Boot
12 BOARD_AVB_ALGORITHM := SHA256_RSA2048
13 BOARD_AVB_ENABLE := true
14 BOARD_AVB_RECOVERY_ALGORITHM := SHA256_RSA2048
15 BOARD_AVB_RECOVERY_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem
16 BOARD_AVB_RECOVERY_ROLLBACK_INDEX := 0
17 BOARD_AVB_RECOVERY_ROLLBACK_INDEX_LOCATION := 2
18 BOARD_AVB_ROLLBACK_INDEX := 0
19 BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS += --flags 3
20
21 ## Architecture
22 TARGET_ARCH := arm
23 TARGET_ARCH_VARIANT := armv8-a
24 TARGET_CPU_ABI := armeabi-v7a
25 TARGET_CPU_ABI2 := armeabi
26 TARGET_CPU_VARIANT := cortex-a53.a57
27 TARGET_KERNEL_ARCH := arm64
28
29 ## Audio
30 BOARD_USES_ALSA_AUDIO := true
31 USE_CUSTOM_AUDIO_POLICY := 1
32
33 ## Dex Pre-Opt
34 WITH_DEXPREOPT_DEBUG_INFO := false
35
36 ## Display
37 TARGET_SCREEN_DENSITY := 320
38
39 ## HIDL
40 DEVICE_MANIFEST_FILE := $(COMMON_PATH)/manifest.xml
41 ifneq ($(TARGET_HAS_TEE),false)
42 DEVICE_MANIFEST_FILE += $(COMMON_PATH)/manifest-tee.xml
43 endif
44 DEVICE_MATRIX_FILE := $(COMMON_PATH)/compatibility_matrix.xml
45
46 ## Kernel
47 BOARD_BOOTIMG_HEADER_VERSION := 2
48 BOARD_DTB_OFFSET := 0x00e88000
49 BOARD_KERNEL_BASE := 0x01078000
50 BOARD_KERNEL_CMDLINE := androidboot.dtbo_idx=0 androidboot.boot_devices=ffe07000.emmc otg_device=1
51 BOARD_KERNEL_IMAGE_NAME := Image.gz
52 BOARD_KERNEL_OFFSET := 0x00008000
53 BOARD_KERNEL_PAGESIZE := 2048
54 BOARD_PREBUILT_DTBOIMAGE ?= $(TARGET_OUT_INTERMEDIATES)/DTBO_OBJ/arch/$(KERNEL_ARCH)/boot/dtbo.img
55 BOARD_RAMDISK_OFFSET := 0xfef10000
56 BOARD_SECOND_OFFSET := 0xfee10000
57 BOARD_TAGS_OFFSET := 0xfdf10100
58 TARGET_BOOTLOADER_IS_2ND := true
59 TARGET_KERNEL_ADDITIONAL_FLAGS := HOSTCFLAGS="-fuse-ld=lld -Wno-unused-command-line-argument"
60 TARGET_KERNEL_CLANG_COMPILE := true
61 TARGET_KERNEL_CONFIG := g12a_defconfig
62 TARGET_KERNEL_SOURCE := kernel/amlogic/linux-4.9
63 TARGET_USES_64_BIT_BINDER := true
64
65 BOARD_MKBOOTIMG_ARGS = --base $(BOARD_KERNEL_BASE) --pagesize $(BOARD_KERNEL_PAGESIZE) --kernel_offset $(BOARD_KERNEL_OFFSET) --second_offset $(BOARD_SECOND_OFFSET) --ramdisk_offset $(BOARD_RAMDISK_OFFSET) --tags_offset $(BOARD_TAGS_OFFSET) --dtb_offset $(BOARD_DTB_OFFSET) --header_version $(BOARD_BOOTIMG_HEADER_VERSION) --dtb $(PRODUCT_OUT)/dtb.img
66
67 ## LMKD
68 TARGET_LMKD_STATS_LOG := true
69
70 ## Metadata
71 BOARD_USES_METADATA_PARTITION := true
72
73 ## Partitions
74 # Dynamic
75 BOARD_AMLOGIC_DYNAMIC_PARTITIONS_PARTITION_LIST := odm product system system_ext vendor
76 BOARD_AMLOGIC_DYNAMIC_PARTITIONS_SIZE := 1673527296 # (BOARD_SUPER_PARTITION_SIZE - "Reasonable Overhead of 4 MiB" 4194304)
77 BOARD_SUPER_PARTITION_GROUPS := amlogic_dynamic_partitions
78
79 # Reservations
80 ifneq ($(WITH_GMS),true)
81 BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE := 15000000
82 BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 626000000
83 BOARD_SYSTEM_EXTIMAGE_PARTITION_RESERVED_SIZE := 15000000
84 endif
85 BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE := 5000000
86
87 # Sizes
88 BOARD_BOOTIMAGE_PARTITION_SIZE := 16777216
89 BOARD_CACHEIMAGE_PARTITION_SIZE := 838860800
90 BOARD_DTBOIMG_PARTITION_SIZE := 2097152
91 BOARD_FLASH_BLOCK_SIZE := 131072
92 BOARD_USERDATAIMAGE_PARTITION_SIZE := 4896849920
93 BOARD_RECOVERYIMAGE_PARTITION_SIZE := 25165824
94 BOARD_SUPER_PARTITION_SIZE := 1677721600
95
96 # TARGET_COPY_OUT_$PARTITION
97 TARGET_COPY_OUT_ODM := odm
98 TARGET_COPY_OUT_PRODUCT := product
99 TARGET_COPY_OUT_SYSTEM_EXT := system_ext
100 TARGET_COPY_OUT_VENDOR := vendor
101
102 # Types
103 BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
104 BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4
105 BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := ext4
106 BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4
107 BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := ext4
108 BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
109 TARGET_USERIMAGES_USE_EXT4 := true
110
111 ## Platform
112 TARGET_BOARD_PLATFORM := amlogic
113
114 ## Properties
115 TARGET_PRODUCT_PROP += $(COMMON_PATH)/product.prop
116 TARGET_SYSTEM_PROP += $(COMMON_PATH)/system.prop
117 TARGET_VENDOR_PROP += $(COMMON_PATH)/vendor.prop
118
119 ## SELinux
120 BOARD_SEPOLICY_DIRS += $(COMMON_PATH)/sepolicy/vendor
121 PRODUCT_PRIVATE_SEPOLICY_DIRS += $(COMMON_PATH)/sepolicy/private
122
123 ## Soong Namespace
124 PRODUCT_SOONG_NAMESPACES += $(COMMON_PATH)
125
126 ## Treble
127 BOARD_VNDK_VERSION := current
128 PRODUCT_FULL_TREBLE_OVERRIDE := true
129
130 ## Recovery
131 TARGET_RECOVERY_FSTAB := $(COMMON_PATH)/init-files/fstab.amlogic
132 TARGET_RECOVERY_PIXEL_FORMAT := "BGRA_8888"
133
134 ## Releasetools
135 TARGET_RELEASETOOLS_EXTENSIONS := $(COMMON_PATH)/releasetools
136
137 ## Vendor SPL
138 VENDOR_SECURITY_PATCH := 2020-10-05
139
140 ## Wi-Fi
141 BOARD_HOSTAPD_DRIVER := NL80211
142 BOARD_WPA_SUPPLICANT_DRIVER := NL80211
143 WIFI_HIDL_UNIFIED_SUPPLICANT_SERVICE_RC_ENTRY := true
144 WPA_SUPPLICANT_VERSION := VER_0_8_X