blob: a533d52cf8c1f8958b87b3decc3b4faa243eb250 [file] [log] [blame]
Nahhk7117b472025-03-19 06:23:56 -05001#
2# Copyright (C) 2025 The LineageOS Project
3#
4# SPDX-License-Identifier: Apache-2.0
5#
6
7# Enable project quotas and casefolding for emulated storage without sdcardfs
8$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)
9
10# Installs gsi keys into ramdisk, to boot a GSI with verified boot.
11$(call inherit-product, $(SRC_TARGET_DIR)/product/developer_gsi_keys.mk)
12
13# Enforce generic ramdisk allow list
14$(call inherit-product, $(SRC_TARGET_DIR)/product/generic_ramdisk.mk)
15
16# Setup dalvik vm configs
17$(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk)
18
19# A/B
20$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota/launch_with_vendor_ramdisk.mk)
21
Nikita Savchenko1d9c8172025-08-26 22:03:31 +000022AB_OTA_POSTINSTALL_CONFIG += \
23 RUN_POSTINSTALL_system=true \
24 POSTINSTALL_PATH_system=system/bin/otapreopt_script \
25 FILESYSTEM_TYPE_system=ext4 \
26 POSTINSTALL_OPTIONAL_system=true
27
28AB_OTA_POSTINSTALL_CONFIG += \
29 RUN_POSTINSTALL_vendor=true \
30 POSTINSTALL_PATH_vendor=bin/checkpoint_gc \
31 FILESYSTEM_TYPE_vendor=ext4 \
32 POSTINSTALL_OPTIONAL_vendor=true
33
34PRODUCT_PACKAGES += \
35 checkpoint_gc \
36 otapreopt_script
37
Nikita Savchenkod4df4e52025-06-29 22:28:29 +000038# Audio
39PRODUCT_PACKAGES += \
40 android.hardware.audio@7.0-impl \
41 android.hardware.audio.effect@7.0-impl \
42 android.hardware.audio.service \
43 android.hardware.bluetooth.audio-impl \
44 android.hardware.soundtrigger@2.3-impl \
45 audioadsprpcd \
46 audio.bluetooth.default \
47 audio.r_submix.default \
48 audio.primary.bengal \
49 audio.usb.default \
50 lib_bt_aptx \
51 lib_bt_ble \
52 lib_bt_bundle \
53 libagmmixer \
54 libagmclient \
55 libagm_compress_plugin \
56 libagm_mixer_plugin \
57 libagm_pcm_plugin \
58 libfmpal \
59 libpalclient \
60 libqcompostprocbundle \
61 libqcomvisualizer \
62 libqcomvoiceprocessing \
63 sound_trigger.primary.bengal
64
65PRODUCT_COPY_FILES += \
66 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
67 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
68 frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration_7_0.xml \
69 frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml \
70 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
71 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
72
73PRODUCT_COPY_FILES += \
74 frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \
75 frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml \
76 frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml
77
78AUDIO_HAL_DIR := hardware/qcom-caf/sm6225/audio/primary-hal
79
80PRODUCT_COPY_FILES += \
81 $(AUDIO_HAL_DIR)/configs/common/codec2/media_codecs_c2_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2_audio.xml \
82 $(AUDIO_HAL_DIR)/configs/common/codec2/service/1.0/c2audio.vendor.base-arm64.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/c2audio.vendor.base-arm64.policy \
83 $(AUDIO_HAL_DIR)/configs/common/codec2/service/1.0/c2audio.vendor.ext-arm64.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/c2audio.vendor.ext-arm64.policy \
84 $(AUDIO_HAL_DIR)/configs/bengal/card-defs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/card-defs.xml \
85 $(AUDIO_HAL_DIR)/configs/bengal/microphone_characteristics.xml:$(TARGET_COPY_OUT_VENDOR)/etc/microphone_characteristics.xml
86
87PRODUCT_COPY_FILES += \
88 $(AUDIO_HAL_DIR)/configs/common/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
89 $(COMMON_PATH)/configs/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
90 $(COMMON_PATH)/configs/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/audio_policy_configuration.xml
91
92$(call soong_config_set,android_hardware_audio,run_64bit,true)
93
Nikita Savchenkoab71fa82025-07-04 16:20:48 +000094# Bluetooth
95PRODUCT_PACKAGES += \
96 android.hardware.bluetooth.audio-impl
97
98PRODUCT_COPY_FILES += \
99 frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
100 frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml
101
Cosmin Tanislav46b640f2025-02-19 02:44:05 +0200102# Boot control
103PRODUCT_PACKAGES += \
104 android.hardware.boot-service.qti \
105 android.hardware.boot-service.qti.recovery
106
107$(call soong_config_set, ufsbsg, ufsframework, bsg)
108
Nikita Savchenkoac767ec2025-07-04 16:22:39 +0000109# Camera
110PRODUCT_COPY_FILES += \
111 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
112 frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
113 frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
114 frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml
115
Arian596224a2024-01-08 21:21:04 +0100116# Display
117PRODUCT_PACKAGES += \
118 android.hardware.graphics.mapper@4.0-impl-qti-display \
119 vendor.qti.hardware.display.allocator-service \
120 vendor.qti.hardware.display.composer-service
121
122PRODUCT_PACKAGES += \
123 init.qti.display_boot.rc \
124 init.qti.display_boot.sh
125
Nahhk0a5c32c2025-01-20 12:23:44 -0500126# Shipping API Level
127BOARD_SHIPPING_API_LEVEL := 33
128
Nikita Savchenkoa6740272025-07-04 16:40:05 +0000129# DRM
130PRODUCT_PACKAGES += \
131 android.hardware.drm-service.clearkey
132
Nikita Savchenkoeaf4d072025-06-30 08:48:15 +0000133# Fastboot
134PRODUCT_PACKAGES += \
135 fastbootd
136
Nikita Savchenko25433662025-06-30 12:56:32 +0000137# Graphics
138PRODUCT_COPY_FILES += \
139 frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
140 frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \
141 frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-1.xml \
142 frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_1.xml \
143 frameworks/native/data/etc/android.software.opengles.deqp.level-2021-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \
144 frameworks/native/data/etc/android.software.vulkan.deqp.level-2021-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml
145
Bruno Martinsc005e022023-11-13 13:48:00 +0000146# Health
147PRODUCT_PACKAGES += \
148 android.hardware.health-service.qti \
149 android.hardware.health-service.qti_recovery
150
SGCMarkusaecfd332022-02-19 13:36:37 +0100151# Hotword Enrollement
152PRODUCT_COPY_FILES += \
153 $(LOCAL_PATH)/configs/permissions/product_privapp-permissions-hotword.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/privapp-permissions-hotword.xml
154
155PRODUCT_COPY_FILES += \
156 $(LOCAL_PATH)/configs/sysconfig/hotword-hiddenapi-package-whitelist.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/sysconfig/hotword-hiddenapi-package-whitelist.xml
157
Nikita Savchenko2e080832025-06-30 08:53:06 +0000158# IPACM
159PRODUCT_PACKAGES += \
160 ipacm \
161 IPACM_cfg.xml \
162 IPACM_Filter_cfg.xml
163
Nikita Savchenko064d2212025-08-30 21:43:16 +0000164# Keymaster
165PRODUCT_COPY_FILES += \
166 frameworks/native/data/etc/android.hardware.keystore.app_attest_key.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.keystore.app_attest_key.xml
167
Nikita Savchenko339ffc32025-08-30 21:43:39 +0000168# Network
169PRODUCT_COPY_FILES += \
170 frameworks/native/data/etc/android.software.ipsec_tunnel_migration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnel_migration.xml \
171 frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml
172
Nikita Savchenko4eed85c2025-07-03 11:43:09 +0000173# Overlay
174PRODUCT_ENFORCE_RRO_TARGETS := *
175
176DEVICE_PACKAGE_OVERLAYS += \
177 $(LOCAL_PATH)/overlay-lineage
178
179PRODUCT_PACKAGES += \
180 FrameworksResCommon \
181 SettingsCommon \
182 SystemUIResCommon \
183 TelephonyResCommon \
184 WifiResCommon \
185 FrameworksResTarget \
186 WifiResTarget
187
Michael Bestas15b8b5d2025-01-13 11:03:38 +0200188# Mountpoints
189PRODUCT_PACKAGES += \
190 vendor_bt_firmware_mountpoint \
191 vendor_dsp_mountpoint \
192 vendor_firmware_mnt_mountpoint
193
Nikita Savchenko6cb65a72025-07-03 15:58:18 +0000194# Power
195PRODUCT_PACKAGES += \
196 android.hardware.power-service-qti
197
Nikita Savchenko8a5a1482025-07-04 16:42:16 +0000198# Sensors
199PRODUCT_PACKAGES += \
200 android.hardware.sensors-service.xiaomi-multihal
201
202PRODUCT_COPY_FILES += \
203 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
204 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
205 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
206 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
207 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
208 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
209 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml
210
Nikita Savchenko043ff212025-07-03 15:55:22 +0000211# Soong namespaces
212PRODUCT_SOONG_NAMESPACES += \
213 $(LOCAL_PATH) \
214 hardware/xiaomi
215
Nikita Savchenko73404412025-06-30 11:40:00 +0000216# Telephony
217PRODUCT_PACKAGES += \
218 extphonelib \
219 extphonelib-product \
220 extphonelib.xml \
221 extphonelib_product.xml \
222 ims-ext-common \
223 ims_ext_common.xml \
224 qti-telephony-hidl-wrapper \
225 qti_telephony_hidl_wrapper.xml \
226 qti-telephony-hidl-wrapper-prd \
227 qti_telephony_hidl_wrapper_prd.xml \
228 qti-telephony-utils \
229 qti_telephony_utils.xml \
230 qti-telephony-utils-prd \
231 qti_telephony_utils_prd.xml \
danielmlc6abb652024-06-16 10:30:40 +0200232 telephony-ext \
233 xiaomi-telephony-stub
Nikita Savchenko73404412025-06-30 11:40:00 +0000234
Ariana5459552025-02-18 18:00:35 +0100235PRODUCT_PACKAGES += \
236 qcrilNrDb_vendor
237
Nikita Savchenko73404412025-06-30 11:40:00 +0000238PRODUCT_BOOT_JARS += \
danielmlc6abb652024-06-16 10:30:40 +0200239 telephony-ext \
240 xiaomi-telephony-stub
Nikita Savchenko73404412025-06-30 11:40:00 +0000241
242PRODUCT_COPY_FILES += \
243 $(LOCAL_PATH)/configs/permissions/telephony_system-ext_privapp-permissions-qti.xml:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/permissions/telephony_system-ext_privapp-permissions-qti.xml
244
245PRODUCT_COPY_FILES += \
246 frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
247 frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
248 frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
249 frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml
250
Yumi Yukimura89304f02025-02-13 14:48:54 +0800251# Thermal
252PRODUCT_PACKAGES += \
253 android.hardware.thermal-service.qti
254
Nikita Savchenko8dbe1862025-06-30 08:59:40 +0000255# Update engine
256PRODUCT_PACKAGES += \
257 update_engine \
258 update_engine_sideload \
259 update_verifier
260
Nikita Savchenkofbb92362025-06-30 09:07:29 +0000261# USB
262PRODUCT_PACKAGES += \
263 android.hardware.usb-service.qti \
Yumi Yukimura99956152024-06-25 00:19:16 +0800264 android.hardware.usb.gadget-service.qti \
Nikita Savchenkofbb92362025-06-30 09:07:29 +0000265 init.qcom.usb.rc \
Yumi Yukimura99956152024-06-25 00:19:16 +0800266 init.qcom.usb.sh \
267 usb_compositions.conf
268
Nikita Savchenkofbb92362025-06-30 09:07:29 +0000269
270PRODUCT_SOONG_NAMESPACES += \
271 vendor/qcom/opensource/usb/etc
272
273PRODUCT_COPY_FILES += \
274 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
275 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml
276
Nikita Savchenkoc211b412025-06-30 09:02:27 +0000277# Vendor service manager
278PRODUCT_PACKAGES += \
279 vndservicemanager
280
Nikita Savchenko959fd212025-07-03 14:23:46 +0000281# Verified boot
282PRODUCT_COPY_FILES += \
283 frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml
284
LuK1337bb2b4242025-01-17 10:28:23 +0100285# Vibrator
286PRODUCT_PACKAGES += \
287 vendor.qti.hardware.vibrator.service
288
289PRODUCT_COPY_FILES += \
290 vendor/qcom/opensource/vibrator/excluded-input-devices.xml:$(TARGET_COPY_OUT_VENDOR)/etc/excluded-input-devices.xml
291
Nikita Savchenko573492a2025-06-30 10:16:51 +0000292# WiFi
293PRODUCT_PACKAGES += \
294 android.hardware.wifi-service \
295 hostapd \
296 libwifi-hal-qcom \
297 wpa_supplicant \
298 wpa_supplicant.conf
299
300# WiFi firmware symlinks
301PRODUCT_PACKAGES += \
302 firmware_qca_cld_wlan_mac.bin_symlink
303 firmware_qca_cld_WCNSS_qcom_cfg.ini_symlink
304
305# WiFi config files
306PRODUCT_COPY_FILES += \
307 $(LOCAL_PATH)/configs/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_qcom_cfg.ini \
308 $(LOCAL_PATH)/configs/wifi/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \
309 $(LOCAL_PATH)/configs/wifi/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf
310
Nikita Savchenkocc010d82025-08-30 21:42:31 +0000311PRODUCT_COPY_FILES += \
312 frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \
313 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
314 frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \
315 frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \
316 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml
317
Nikita Savchenko573492a2025-06-30 10:16:51 +0000318PRODUCT_VENDOR_MOVE_ENABLED := true
319
Nahhk7117b472025-03-19 06:23:56 -0500320# Inherit from vendor blobs
321$(call inherit-product, vendor/xiaomi/sm6225-common/sm6225-common-vendor.mk)