1
1
#
2
- # Copyright (C) 2022 The Android Open Source Project
3
- # Copyright (C) 2022 SebaUbuntu's TWRP device tree generator
4
- #
2
+ # Copyright (C) 2023 The Android Open Source Project
3
+ #
5
4
# SPDX-License-Identifier: Apache-2.0
6
5
#
7
6
8
7
DEVICE_PATH := device/micromax/E7544
9
8
10
- # For building with minimal manifest
11
- ALLOW_MISSING_DEPENDENCIES := true
12
-
13
-
14
- # Enable virtual A/B OTA
15
- # $(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota.mk)
16
9
17
- # Installs gsi keys into ramdisk, to boot a developer GSI with verified boot.
18
- # $(call inherit-product, $(SRC_TARGET_DIR)/product/gsi_keys.mk)
10
+ ALLOW_MISSING_DEPENDENCIES := true
11
+ BUILD_BROKEN_DUP_RULES := true
12
+ BUILD_BROKEN_USES_BUILD_COPY_HEADERS := true
13
+ BUILD_BROKEN_PREBUILT_ELF_FILES := true
14
+ BUILD_BROKEN_ELF_PREBUILT_PRODUCT_COPY_FILES := true
15
+ BUILD_BROKEN_MISSING_REQUIRED_MODULES := true
16
+ RELAX_USES_LIBRARY_CHECK =true
19
17
20
18
# A/B
21
19
ifeq ($(TARGET_IS_VAB ) ,true)
@@ -24,6 +22,8 @@ AB_OTA_PARTITIONS += \
24
22
vbmeta \
25
23
vbmeta_system \
26
24
vbmeta_vendor \
25
+ vbmeta_product \
26
+ vbmeta_system_ext \
27
27
dtbo \
28
28
boot \
29
29
system \
35
35
# Recovery
36
36
TARGET_NO_RECOVERY := true
37
37
BOARD_USES_RECOVERY_AS_BOOT := true
38
-
38
+ TARGET_RECOVERY_DEVICE_MODULES += \
39
+ libcap \
40
+ libion \
41
+ libxml2
42
+ TW_RECOVERY_ADDITIONAL_RELINK_LIBRARY_FILES += \
43
+ $(TARGET_OUT_SHARED_LIBRARIES ) /libcap.so \
44
+ $(TARGET_OUT_SHARED_LIBRARIES ) /libion.so \
45
+ $(TARGET_OUT_SHARED_LIBRARIES ) /libxml2.so
46
+
47
+ # Additional Libraries
48
+ TARGET_RECOVERY_DEVICE_MODULES += \
49
+ libandroidicu
50
+ $(OUT_DIR ) /target/product/$(PRODUCT_DEVICE ) /obj/SHARED_LIBRARIES/libandroidicu_intermediates/libandroidicu.so :$(TARGET_COPY_OUT_RECOVERY ) /root/system/lib64/libandroidicu.so
51
+
52
+
39
53
# Architecture
40
54
TARGET_ARCH := arm64
41
55
TARGET_ARCH_VARIANT := armv8-a
@@ -51,8 +65,10 @@ TARGET_2ND_CPU_ABI2 := armeabi
51
65
TARGET_2ND_CPU_VARIANT := generic
52
66
TARGET_2ND_CPU_VARIANT_RUNTIME := cortex-a55
53
67
54
- # APEX
55
- DEXPREOPT_GENERATE_APEX_IMAGE := true
68
+ # 64-bit
69
+ TARGET_SUPPORTS_64_BIT_APPS := true
70
+ TARGET_IS_64_BIT := true
71
+ TARGET_USES_64_BIT_BINDER := true
56
72
57
73
# Bootloader
58
74
TARGET_BOOTLOADER_BOARD_NAME := ums512_1h10
@@ -67,6 +83,7 @@ BOARD_KERNEL_CMDLINE := console=ttyS1,115200n8 buildvariant=user
67
83
BOARD_KERNEL_PAGESIZE := 2048
68
84
BOARD_RAMDISK_OFFSET := 0x05400000
69
85
BOARD_KERNEL_TAGS_OFFSET := 0x00000100
86
+ BOARD_DTB_OFFSET := 0x01f00000
70
87
BOARD_MKBOOTIMG_ARGS += --header_version $(BOARD_BOOTIMG_HEADER_VERSION )
71
88
BOARD_MKBOOTIMG_ARGS += --ramdisk_offset $(BOARD_RAMDISK_OFFSET )
72
89
BOARD_MKBOOTIMG_ARGS += --tags_offset $(BOARD_KERNEL_TAGS_OFFSET )
@@ -79,9 +96,8 @@ TARGET_KERNEL_SOURCE := kernel/micromax/E7544
79
96
TARGET_FORCE_PREBUILT_KERNEL := true
80
97
ifeq ($(TARGET_FORCE_PREBUILT_KERNEL ) ,true)
81
98
TARGET_PREBUILT_KERNEL := $(DEVICE_PATH ) /prebuilt/kernel
82
- TARGET_PREBUILT_DTB := $(DEVICE_PATH ) /prebuilt/dtb.img
99
+ TARGET_PREBUILT_DTB := $(DEVICE_PATH ) /prebuilt/dtb
83
100
BOARD_MKBOOTIMG_ARGS += --dtb $(TARGET_PREBUILT_DTB )
84
- BOARD_INCLUDE_DTB_IN_BOOTIMG :=
85
101
endif
86
102
87
103
# Partitions
@@ -90,18 +106,40 @@ BOARD_BOOTIMAGE_PARTITION_SIZE := 67108864
90
106
BOARD_RECOVERYIMAGE_PARTITION_SIZE := 67108864
91
107
BOARD_HAS_LARGE_FILESYSTEM := true
92
108
BOARD_SYSTEMIMAGE_PARTITION_TYPE := ext4
93
- BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := ext4
94
109
BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
110
+ BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE := ext4
111
+ BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE := ext4
95
112
TARGET_COPY_OUT_VENDOR := vendor
96
113
BOARD_SUPER_PARTITION_SIZE := 9126805504 # TODO: Fix hardcoded value
97
114
BOARD_SUPER_PARTITION_GROUPS := micromax_dynamic_partitions
98
115
BOARD_MICROMAX_DYNAMIC_PARTITIONS_PARTITION_LIST := system system_ext vendor product
99
116
BOARD_MICROMAX_DYNAMIC_PARTITIONS_SIZE := 9122611200 # TODO: Fix hardcoded value
117
+ BOARD_ROOT_EXTRA_SYMLINKS := \
118
+ /vendor/bt_firmware:/bt_firmware \
119
+ /mnt/vendor/socko:/socko \
120
+ /mnt/sdcard/:sdcrad \
121
+ /system/product/:product \
122
+ /system/system_ext/:system_ext
123
+
124
+
125
+ # AVB
126
+ BOARD_AVB_ENABLE := true
127
+ BOARD_AVB_VBMETA_SYSTEM := system
128
+ BOARD_AVB_BOOT_KEY_PATH := external/avb/test/data/testkey_rsa4096.pem
129
+ BOARD_AVB_BOOT_ALGORITHM := SHA256_RSA4096
130
+ BOARD_AVB_BOOT_ROLLBACK_INDEX := $(PLATFORM_SECURITY_PATCH_TIMESTAMP )
131
+ BOARD_AVB_BOOT_ROLLBACK_INDEX_LOCATION := 2
100
132
101
133
# UserIMG
102
134
TARGET_USERIMAGES_USE_EXT4 := true
103
135
TARGET_USERIMAGES_USE_F2FS := true
104
136
137
+ # File systems
138
+ BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE := f2fs
139
+
140
+ # System as root
141
+ BOARD_SUPPRESS_SECURE_ERASE := true
142
+
105
143
# Partitions (listed in the file) to be wiped under recovery.
106
144
TARGET_RECOVERY_WIPE := $(DEVICE_PATH ) /recovery/root/system/etc/recovery.wipe
107
145
@@ -110,10 +148,7 @@ TARGET_USES_MKE2FS := true
110
148
111
149
# Decryption
112
150
TW_INCLUDE_CRYPTO := true
113
- TW_INCLUDE_CRYPTO_FBE := true
114
- TW_INCLUDE_FBE_METADATA_DECRYPT := true
115
151
BOARD_USES_METADATA_PARTITION := true
116
- BOARD_USES_QCOM_FBE_DECRYPTION := true
117
152
TW_USE_FSCRYPT_POLICY := 1
118
153
119
154
# Platform
@@ -125,8 +160,9 @@ TARGET_NO_BOOTLOADER := false
125
160
126
161
# Recovery
127
162
TARGET_RECOVERY_PIXEL_FORMAT := RGBX_8888
128
- TARGET_USERIMAGES_USE_EXT4 := true
129
- TARGET_USERIMAGES_USE_F2FS := true
163
+
164
+ # Properties
165
+ TARGET_SYSTEM_PROP += $(DEVICE_PATH ) /system.prop
130
166
131
167
# Verified Boot
132
168
BOARD_AVB_ENABLE := true
@@ -142,9 +178,28 @@ TW_THEME := portrait_hdpi
142
178
TW_EXTRA_LANGUAGES := true
143
179
TW_SCREEN_BLANK_ON_BOOT := true
144
180
TW_INPUT_BLACKLIST := "hbtp_vm"
181
+ TW_BRIGHTNESS_PATH := "/sys/devices/platform/backlight/backlight/sprd_backlight/brightness"
182
+ TW_USE_TOOLBOX := true
183
+ TW_INCLUDE_REPACKTOOLS := true
184
+ TW_INCLUDE_FASTBOOTD := true
145
185
TW_USE_TOOLBOX := true
146
186
TW_INCLUDE_REPACKTOOLS := true
147
187
TW_INCLUDE_FASTBOOTD := true
188
+ RECOVERY_SDCARD_ON_DATA := true
189
+ TW_USE_EXTERNAL_STORAGE := true
190
+ TW_EXCLUDE_DEFAULT_USB_INIT := true
191
+ TW_EXCLUDE_TWRPAPP := true
192
+ TW_INCLUDE_NTFS_3G := true
193
+ TW_NO_BIND_SYSTEM := true
194
+ TW_NO_SCREEN_BLANK := true
195
+ TW_SCREEN_BLANK_ON_BOOT := true
196
+ TW_NO_SCREEN_TIMEOUT := true
197
+
198
+
199
+ # resetprop and magiskboot
200
+ TW_INCLUDE_RESETPROP := true
201
+ TW_INCLUDE_REPACKTOOLS := true
202
+ TW_INCLUDE_LIBRESETPROP := true
148
203
149
204
# Security patch level
150
205
VENDOR_SECURITY_PATCH := 2021-08-01
@@ -156,15 +211,26 @@ TARGET_USES_LOGD := true
156
211
157
212
TARGET_RECOVERY_FSTAB := $(DEVICE_PATH ) /recovery/root/system/etc/recovery.fstab
158
213
214
+ # Workaround for error copying vendor files to recovery ramdisk
215
+ BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
216
+ TARGET_COPY_OUT_VENDOR := vendor
217
+ TARGET_COPY_OUT_PRODUCT := product
218
+ TARGET_COPY_OUT_SYSTEM_EXT := system_ext
219
+
159
220
# Metadata
160
221
BOARD_USES_METADATA_PARTITION := true
161
- TW_INCLUDE_FBE_METADATA_DECRYPT := true
222
+ BOARD_ROOT_EXTRA_FOLDERS += metadata
223
+ BOARD_EXT4_SHARE_DUP_BLOCKS := true
162
224
163
- # Decryption
164
- TW_INCLUDE_CRYPTO := true
165
- TW_INCLUDE_CRYPTO_FBE := true
166
- BOARD_USES_QCOM_FBE_DECRYPTION := true
167
- TW_USE_FSCRYPT_POLICY := 1
225
+ # PBRP Specific Build Flags
226
+ PB_DISABLE_DEFAULT_TREBLE_COMP := false
227
+ PB_DISABLE_DEFAULT_DM_VERITY := true
228
+ PB_DEVICE_RATIO := "20:9"
229
+
230
+ # Other flags
231
+ TW_NO_LEGACY_PROPS := true
232
+ TW_OVERRIDE_SYSTEM_PROPS := "ro.build.version.sdk"
233
+ TW_NO_SCREEN_BLANK := true
168
234
169
235
# Kernel module loading
170
- TW_LOAD_VENDOR_MODULES := "incrementalfs.ko kheaders.ko trace_irqsoff_bytedancy.ko trace_noschedule_bytedancy.ko trace_runqlat_bytedancy.ko"
236
+ TW_LOAD_VENDOR_MODULES := "incrementalfs.ko kheaders.ko trace_irqsoff_bytedancy.ko trace_noschedule_bytedancy.ko trace_runqlat_bytedancy.ko"
0 commit comments