-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathdevice.mk
300 lines (238 loc) · 7.49 KB
/
device.mk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
#
# Copyright (C) 2021 The PixelExperience Project
#
# SPDX-License-Identifier: Apache-2.0
#
# Enable updating of APEXes
$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
# Enable virtual A/B OTA
$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota.mk)
# Installs gsi keys into ramdisk, to boot a developer GSI with verified boot.
$(call inherit-product, $(SRC_TARGET_DIR)/product/gsi_keys.mk)
# Setup dalvik vm configs
$(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk)
# Get non-open-source specific aspects
#$(call inherit-product, vendor/xiaomi/mojito/mojito-vendor.mk)
include kernel/xiaomi/mojito/Android.mk
# API
PRODUCT_TARGET_VNDK_VERSION := 30
PRODUCT_SHIPPING_API_LEVEL := 30
# ANT+
PRODUCT_PACKAGES += \
AntHalService-Soong
# Audio
PRODUCT_PACKAGES += \
audio.a2dp.default
# A/B
AB_OTA_POSTINSTALL_CONFIG += \
RUN_POSTINSTALL_system=true \
POSTINSTALL_PATH_system=system/bin/otapreopt_script \
FILESYSTEM_TYPE_system=ext4 \
POSTINSTALL_OPTIONAL_system=true
AB_OTA_POSTINSTALL_CONFIG += \
RUN_POSTINSTALL_vendor=true \
POSTINSTALL_PATH_vendor=bin/checkpoint_gc \
FILESYSTEM_TYPE_vendor=ext4 \
POSTINSTALL_OPTIONAL_vendor=true
PRODUCT_PACKAGES += \
otapreopt_script
# Bluetooth
#PRODUCT_PACKAGES += \
BluetoothQti \
PRODUCT_PACKAGES += \
libbluetooth_qti \
libbtconfigstore \
bt_configstore.conf
# Boot animation
TARGET_SCREEN_HEIGHT := 2400
TARGET_SCREEN_WIDTH := 1080
# Boot control
PRODUCT_PACKAGES += \
PRODUCT_PACKAGES_DEBUG += \
bootctl
# Camera
PRODUCT_PACKAGES += \
Snap \
# Configstore
PRODUCT_PACKAGES += \
# Cryptfs
#PRODUCT_PACKAGES += \
libcryptfs_hw \
# Device uses high-density artwork where available
PRODUCT_AAPT_CONFIG := normal
PRODUCT_AAPT_PREF_CONFIG := xxhdpi
# Display
PRODUCT_PACKAGES += \
libdisplayconfig.qti \
libgralloc.qti \
libqdMetaData \
libqdMetaData.system \
libvulkan \
# Dynamic partitions
PRODUCT_USE_DYNAMIC_PARTITIONS := true
PRODUCT_BUILD_SUPER_PARTITION := false
# Fastbootd
PRODUCT_PACKAGES += \
fastbootd
# Framework detect
PRODUCT_PACKAGES += \
libqti_vndfwk_detect \
libvndfwk_detect_jni.qti
# HIDL
PRODUCT_PACKAGES += \
# Init scripts
PRODUCT_PACKAGES += \
init.recovery.qcom.sh \
init.recovery.qcom.rc
# Input
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/keylayout/gpio-keys.kl:$(TARGET_COPY_OUT_SYSTEM)/usr/keylayout/gpio-keys.kl \
$(LOCAL_PATH)/keylayout/uinput-fpc.kl:$(TARGET_COPY_OUT_SYSTEM)/usr/keylayout/uinput-fpc.kl \
$(LOCAL_PATH)/keylayout/uinput-goodix.kl:$(TARGET_COPY_OUT_SYSTEM)/usr/keylayout/uinput-goodix.kl
# Lights
PRODUCT_PACKAGES += \
android.hardware.lights-service.qti
# Media
PRODUCT_PACKAGES += \
libavservices_minijail
# Net
PRODUCT_PACKAGES += \
netutils-wrapper-1.0
# Overlays
DEVICE_PACKAGE_OVERLAYS += \
$(LOCAL_PATH)/overlay
PRODUCT_PACKAGES += \
AospFrameworkResOverlay \
AospWifiResOverlay \
DevicesAndroidOverlay \
DevicesOverlay \
ElderlyNavigationBarOverlay \
FrameworksResTarget \
GestureLineOverlay \
MccMncOverlay \
MiuiBiometricResOverlay \
MiuiBluetoothOverlay \
MiuiFrameworkResOverlay \
MiuiSettingsResOverlay \
MiuiSystemUIResOverlay \
NetworkStackOverlay \
WifiResTarget
PRODUCT_PACKAGES += \
NotchBarKiller
# Perf
PRODUCT_PACKAGES += \
# Ramdisk
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/rootdir/etc/fstab.default:$(TARGET_COPY_OUT_VENDOR_RAMDISK)/first_stage_ramdisk/fstab.default
# RCS
PRODUCT_PACKAGES += \
com.android.ims.rcsmanager \
PresencePolling \
RcsService
# Soong namespaces
PRODUCT_SOONG_NAMESPACES += \
$(LOCAL_PATH) \
hardware/qcom-caf/bootctrl
# Power
PRODUCT_PACKAGES += \
android.hardware.power-service.mojito
# Telephony
PRODUCT_PACKAGES += \
ims-ext-common \
ims_ext_common.xml \
qti-telephony-hidl-wrapper \
qti_telephony_hidl_wrapper.xml \
qti-telephony-utils \
qti_telephony_utils.xml \
telephony-ext
#PRODUCT_BOOT_JARS += \
# telephony-ext
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/permissions/privapp-permissions-qti.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/privapp-permissions-qti.xml
# Thermal
PRODUCT_PACKAGES += \
# Update engine
PRODUCT_PACKAGES += \
update_engine \
update_engine_sideload \
update_verifier
PRODUCT_PACKAGES_DEBUG += \
update_engine_client
# Vendor overlay
PRODUCT_COPY_FILES += \
$(call find-copy-subdir-files,*,$(LOCAL_PATH)/vendor-overlay/,$(TARGET_COPY_OUT_PRODUCT)/vendor_overlay/$(PRODUCT_TARGET_VNDK_VERSION))
# WiFi
PRODUCT_PACKAGES += \
TetheringConfigOverlay \
WifiOverlay
# WiFi Display
PRODUCT_PACKAGES += \
libnl
#PRODUCT_BOOT_JARS += \
# WfdCommon
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/permissions/privapp-permissions-wfd.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-wfd.xml
PRODUCT_PACKAGES += \
qcom_decrypt \
qcom_decrypt_fbe
PRODUCT_SOONG_NAMESPACES += \
vendor/qcom/opensource/commonsys-intf/display
ALLOW_MISSING_DEPENDENCIES := true
# Crypto
TW_INCLUDE_CRYPTO := true
TW_INCLUDE_CRYPTO_FBE := true
TW_INCLUDE_FBE_METADATA_DECRYPT := true
PLATFORM_SECURITY_PATCH := 2099-12-31
VENDOR_SECURITY_PATCH := 2099-12-31
PLATFORM_VERSION := 16.1.0
BOARD_USES_QCOM_FBE_DECRYPTION := true
TARGET_RECOVERY_DEVICE_MODULES += libion libandroidicu [email protected] [email protected] libdisplayconfig.qti vendor.qti.hardware.vibrator.service vendor.qti.hardware.vibrator.impl libqtivibratoreffect
# TWRP specific build flags
TW_THEME := portrait_hdpi
RECOVERY_SDCARD_ON_DATA := true
TARGET_RECOVERY_QCOM_RTC_FIX := true
TW_EXCLUDE_DEFAULT_USB_INIT := true
TW_EXTRA_LANGUAGES := true
TW_INCLUDE_NTFS_3G := true
TW_USE_TOOLBOX := true
TW_INCLUDE_RESETPROP := true
TW_INCLUDE_REPACKTOOLS := true
TW_INPUT_BLACKLIST := "hbtp_vm"
TW_BRIGHTNESS_PATH := "/sys/class/backlight/panel0-backlight/brightness"
TW_DEFAULT_BRIGHTNESS := 1200
TW_Y_OFFSET := 91
TW_H_OFFSET := -91
TWRP_INCLUDE_LOGCAT := true
TARGET_USES_LOGD := true
TARGET_USES_MKE2FS := true
TW_NO_SCREEN_BLANK := true
TW_EXCLUDE_APEX := true
# Vibrator
TW_SUPPORT_INPUT_AIDL_HAPTICS := true
RECOVERY_BINARY_SOURCE_FILES += \
$(TARGET_OUT_VENDOR_EXECUTABLES)/hw/vendor.qti.hardware.vibrator.service
RECOVERY_LIBRARY_SOURCE_FILES += \
$(TARGET_OUT_SHARED_LIBRARIES)/libion.so \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/[email protected] \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/[email protected] \
$(TARGET_OUT_SYSTEM_EXT_SHARED_LIBRARIES)/libdisplayconfig.qti.so \
$(TARGET_OUT_VENDOR_SHARED_LIBRARIES)/vendor.qti.hardware.vibrator.impl.so \
$(TARGET_OUT_VENDOR_SHARED_LIBRARIES)/libqtivibratoreffect.so
PRODUCT_COPY_FILES += \
$(OUT_DIR)/target/product/mojito/obj/SHARED_LIBRARIES/libandroidicu_intermediates/libandroidicu.so:$(TARGET_COPY_OUT_RECOVERY)/root/system/lib64/libandroidicu.so
ENABLE_VIRTUAL_AB := true