blob: 5d5a4b7bd0de14406970dc05d3fb70fb4e437ee8 [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
ReStranger01481d92025-10-01 01:03:03 +03007# Inherit from those products. Most specific first.
8$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
9$(call inherit-product, $(SRC_TARGET_DIR)/product/full_base_telephony.mk)
10
11# Add common definitions for Qualcomm
12$(call inherit-product, hardware/qcom-caf/common/common.mk)
13
Nahhk7117b472025-03-19 06:23:56 -050014# Enable project quotas and casefolding for emulated storage without sdcardfs
15$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)
16
17# Installs gsi keys into ramdisk, to boot a GSI with verified boot.
18$(call inherit-product, $(SRC_TARGET_DIR)/product/developer_gsi_keys.mk)
19
20# Enforce generic ramdisk allow list
21$(call inherit-product, $(SRC_TARGET_DIR)/product/generic_ramdisk.mk)
22
23# Setup dalvik vm configs
24$(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk)
25
26# A/B
27$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota/launch_with_vendor_ramdisk.mk)
28
Nikita Savchenko1d9c8172025-08-26 22:03:31 +000029AB_OTA_POSTINSTALL_CONFIG += \
30 RUN_POSTINSTALL_system=true \
31 POSTINSTALL_PATH_system=system/bin/otapreopt_script \
32 FILESYSTEM_TYPE_system=ext4 \
33 POSTINSTALL_OPTIONAL_system=true
34
35AB_OTA_POSTINSTALL_CONFIG += \
36 RUN_POSTINSTALL_vendor=true \
37 POSTINSTALL_PATH_vendor=bin/checkpoint_gc \
38 FILESYSTEM_TYPE_vendor=ext4 \
39 POSTINSTALL_OPTIONAL_vendor=true
40
41PRODUCT_PACKAGES += \
42 checkpoint_gc \
43 otapreopt_script
44
Nikita Savchenkod4df4e52025-06-29 22:28:29 +000045# Audio
46PRODUCT_PACKAGES += \
47 android.hardware.audio@7.0-impl \
48 android.hardware.audio.effect@7.0-impl \
49 android.hardware.audio.service \
50 android.hardware.bluetooth.audio-impl \
51 android.hardware.soundtrigger@2.3-impl \
52 audioadsprpcd \
53 audio.bluetooth.default \
54 audio.r_submix.default \
55 audio.primary.bengal \
56 audio.usb.default \
57 lib_bt_aptx \
58 lib_bt_ble \
59 lib_bt_bundle \
60 libagmmixer \
61 libagmclient \
62 libagm_compress_plugin \
63 libagm_mixer_plugin \
64 libagm_pcm_plugin \
65 libfmpal \
66 libpalclient \
67 libqcompostprocbundle \
68 libqcomvisualizer \
69 libqcomvoiceprocessing \
70 sound_trigger.primary.bengal
71
72PRODUCT_COPY_FILES += \
73 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
74 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
75 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 \
76 frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration_7_0.xml \
77 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
78 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
79
80PRODUCT_COPY_FILES += \
81 frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \
82 frameworks/native/data/etc/android.hardware.audio.pro.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.pro.xml \
83 frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml
84
85AUDIO_HAL_DIR := hardware/qcom-caf/sm6225/audio/primary-hal
86
87PRODUCT_COPY_FILES += \
88 $(AUDIO_HAL_DIR)/configs/common/codec2/media_codecs_c2_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_c2_audio.xml \
89 $(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 \
90 $(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 \
91 $(AUDIO_HAL_DIR)/configs/bengal/card-defs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/card-defs.xml \
92 $(AUDIO_HAL_DIR)/configs/bengal/microphone_characteristics.xml:$(TARGET_COPY_OUT_VENDOR)/etc/microphone_characteristics.xml
93
94PRODUCT_COPY_FILES += \
95 $(AUDIO_HAL_DIR)/configs/common/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
Nikita Savchenko4238a062025-08-08 11:30:45 +000096 $(LOCAL_PATH)/configs/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
97 $(LOCAL_PATH)/configs/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio/audio_policy_configuration.xml
Nikita Savchenkod4df4e52025-06-29 22:28:29 +000098
99$(call soong_config_set,android_hardware_audio,run_64bit,true)
100
Nikita Savchenkoab71fa82025-07-04 16:20:48 +0000101# Bluetooth
102PRODUCT_PACKAGES += \
103 android.hardware.bluetooth.audio-impl
104
105PRODUCT_COPY_FILES += \
106 frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
107 frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml
108
Cosmin Tanislav46b640f2025-02-19 02:44:05 +0200109# Boot control
110PRODUCT_PACKAGES += \
111 android.hardware.boot-service.qti \
112 android.hardware.boot-service.qti.recovery
113
114$(call soong_config_set, ufsbsg, ufsframework, bsg)
115
Nikita Savchenkoac767ec2025-07-04 16:22:39 +0000116# Camera
117PRODUCT_COPY_FILES += \
118 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
119 frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
120 frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
121 frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml
122
Arian596224a2024-01-08 21:21:04 +0100123# Display
124PRODUCT_PACKAGES += \
125 android.hardware.graphics.mapper@4.0-impl-qti-display \
126 vendor.qti.hardware.display.allocator-service \
127 vendor.qti.hardware.display.composer-service
128
129PRODUCT_PACKAGES += \
130 init.qti.display_boot.rc \
131 init.qti.display_boot.sh
132
Nahhk0a5c32c2025-01-20 12:23:44 -0500133# Shipping API Level
134BOARD_SHIPPING_API_LEVEL := 33
135
Nikita Savchenkoa6740272025-07-04 16:40:05 +0000136# DRM
137PRODUCT_PACKAGES += \
138 android.hardware.drm-service.clearkey
139
Nikita Savchenkoeaf4d072025-06-30 08:48:15 +0000140# Fastboot
141PRODUCT_PACKAGES += \
142 fastbootd
143
Nikita Savchenko25433662025-06-30 12:56:32 +0000144# Graphics
145PRODUCT_COPY_FILES += \
146 frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
147 frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \
148 frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-1.xml \
149 frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_1.xml \
150 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 \
151 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
152
Bruno Martinsc005e022023-11-13 13:48:00 +0000153# Health
154PRODUCT_PACKAGES += \
155 android.hardware.health-service.qti \
156 android.hardware.health-service.qti_recovery
157
SGCMarkusaecfd332022-02-19 13:36:37 +0100158# Hotword Enrollement
159PRODUCT_COPY_FILES += \
160 $(LOCAL_PATH)/configs/permissions/product_privapp-permissions-hotword.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/permissions/privapp-permissions-hotword.xml
161
162PRODUCT_COPY_FILES += \
163 $(LOCAL_PATH)/configs/sysconfig/hotword-hiddenapi-package-whitelist.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/sysconfig/hotword-hiddenapi-package-whitelist.xml
164
Nikita Savchenko2e080832025-06-30 08:53:06 +0000165# IPACM
166PRODUCT_PACKAGES += \
167 ipacm \
168 IPACM_cfg.xml \
169 IPACM_Filter_cfg.xml
170
Nikita Savchenko064d2212025-08-30 21:43:16 +0000171# Keymaster
172PRODUCT_COPY_FILES += \
173 frameworks/native/data/etc/android.hardware.keystore.app_attest_key.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.keystore.app_attest_key.xml
174
Nikita Savchenko339ffc32025-08-30 21:43:39 +0000175# Network
176PRODUCT_COPY_FILES += \
177 frameworks/native/data/etc/android.software.ipsec_tunnel_migration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnel_migration.xml \
178 frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml
179
AMWolfstein94209612025-07-12 00:41:57 +0300180# Native libraries
181PRODUCT_COPY_FILES += \
182 $(LOCAL_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt \
183 $(LOCAL_PATH)/configs/public.libraries-qti.txt:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/public.libraries-qti.txt
184
Nikita Savchenko4eed85c2025-07-03 11:43:09 +0000185# Overlay
186PRODUCT_ENFORCE_RRO_TARGETS := *
187
188DEVICE_PACKAGE_OVERLAYS += \
189 $(LOCAL_PATH)/overlay-lineage
190
191PRODUCT_PACKAGES += \
192 FrameworksResCommon \
193 SettingsCommon \
194 SystemUIResCommon \
195 TelephonyResCommon \
196 WifiResCommon \
197 FrameworksResTarget \
198 WifiResTarget
199
Michael Bestas15b8b5d2025-01-13 11:03:38 +0200200# Mountpoints
Nahhka15ac6f2024-12-19 15:08:45 -0500201PRODUCT_USE_DYNAMIC_PARTITIONS := true
202
Michael Bestas15b8b5d2025-01-13 11:03:38 +0200203PRODUCT_PACKAGES += \
204 vendor_bt_firmware_mountpoint \
205 vendor_dsp_mountpoint \
206 vendor_firmware_mnt_mountpoint
207
Nikita Savchenko6cb65a72025-07-03 15:58:18 +0000208# Power
209PRODUCT_PACKAGES += \
210 android.hardware.power-service-qti
211
Bruno Martins852b90b2024-03-28 14:12:52 +0000212# QMI
213PRODUCT_PACKAGES += \
214 libvndfwk_detect_jni.qti_vendor # Needed by CNE app
215
Nikita Savchenko8a5a1482025-07-04 16:42:16 +0000216# Sensors
217PRODUCT_PACKAGES += \
218 android.hardware.sensors-service.xiaomi-multihal
219
220PRODUCT_COPY_FILES += \
221 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
222 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
223 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
224 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
225 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
226 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
227 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml
228
Nikita Savchenko043ff212025-07-03 15:55:22 +0000229# Soong namespaces
230PRODUCT_SOONG_NAMESPACES += \
231 $(LOCAL_PATH) \
232 hardware/xiaomi
233
Nikita Savchenko73404412025-06-30 11:40:00 +0000234# Telephony
235PRODUCT_PACKAGES += \
236 extphonelib \
237 extphonelib-product \
238 extphonelib.xml \
239 extphonelib_product.xml \
240 ims-ext-common \
241 ims_ext_common.xml \
242 qti-telephony-hidl-wrapper \
243 qti_telephony_hidl_wrapper.xml \
244 qti-telephony-hidl-wrapper-prd \
245 qti_telephony_hidl_wrapper_prd.xml \
246 qti-telephony-utils \
247 qti_telephony_utils.xml \
248 qti-telephony-utils-prd \
249 qti_telephony_utils_prd.xml \
danielmlc6abb652024-06-16 10:30:40 +0200250 telephony-ext \
251 xiaomi-telephony-stub
Nikita Savchenko73404412025-06-30 11:40:00 +0000252
Ariana5459552025-02-18 18:00:35 +0100253PRODUCT_PACKAGES += \
254 qcrilNrDb_vendor
255
Nikita Savchenko73404412025-06-30 11:40:00 +0000256PRODUCT_BOOT_JARS += \
danielmlc6abb652024-06-16 10:30:40 +0200257 telephony-ext \
258 xiaomi-telephony-stub
Nikita Savchenko73404412025-06-30 11:40:00 +0000259
260PRODUCT_COPY_FILES += \
261 $(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
262
263PRODUCT_COPY_FILES += \
264 frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
265 frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
266 frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
267 frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml
268
Yumi Yukimura89304f02025-02-13 14:48:54 +0800269# Thermal
270PRODUCT_PACKAGES += \
271 android.hardware.thermal-service.qti
272
Nikita Savchenko8dbe1862025-06-30 08:59:40 +0000273# Update engine
274PRODUCT_PACKAGES += \
275 update_engine \
276 update_engine_sideload \
277 update_verifier
278
Nikita Savchenkofbb92362025-06-30 09:07:29 +0000279# USB
280PRODUCT_PACKAGES += \
281 android.hardware.usb-service.qti \
Yumi Yukimura99956152024-06-25 00:19:16 +0800282 android.hardware.usb.gadget-service.qti \
Nikita Savchenkofbb92362025-06-30 09:07:29 +0000283 init.qcom.usb.rc \
Yumi Yukimura99956152024-06-25 00:19:16 +0800284 init.qcom.usb.sh \
285 usb_compositions.conf
286
Nikita Savchenkofbb92362025-06-30 09:07:29 +0000287
288PRODUCT_SOONG_NAMESPACES += \
289 vendor/qcom/opensource/usb/etc
290
291PRODUCT_COPY_FILES += \
292 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
293 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml
294
Nikita Savchenkoc211b412025-06-30 09:02:27 +0000295# Vendor service manager
296PRODUCT_PACKAGES += \
297 vndservicemanager
298
Nikita Savchenko959fd212025-07-03 14:23:46 +0000299# Verified boot
300PRODUCT_COPY_FILES += \
301 frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml
302
LuK1337bb2b4242025-01-17 10:28:23 +0100303# Vibrator
304PRODUCT_PACKAGES += \
305 vendor.qti.hardware.vibrator.service
306
307PRODUCT_COPY_FILES += \
308 vendor/qcom/opensource/vibrator/excluded-input-devices.xml:$(TARGET_COPY_OUT_VENDOR)/etc/excluded-input-devices.xml
309
Nikita Savchenko573492a2025-06-30 10:16:51 +0000310# WiFi
311PRODUCT_PACKAGES += \
312 android.hardware.wifi-service \
313 hostapd \
314 libwifi-hal-qcom \
315 wpa_supplicant \
316 wpa_supplicant.conf
317
318# WiFi firmware symlinks
319PRODUCT_PACKAGES += \
ReStranger1c5186c2025-09-29 01:03:10 +0300320 firmware_qca_cld_wlan_mac.bin_symlink \
Nikita Savchenko573492a2025-06-30 10:16:51 +0000321 firmware_qca_cld_WCNSS_qcom_cfg.ini_symlink
322
323# WiFi config files
324PRODUCT_COPY_FILES += \
325 $(LOCAL_PATH)/configs/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_qcom_cfg.ini \
326 $(LOCAL_PATH)/configs/wifi/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \
327 $(LOCAL_PATH)/configs/wifi/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf
328
Nikita Savchenkocc010d82025-08-30 21:42:31 +0000329PRODUCT_COPY_FILES += \
330 frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \
331 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
332 frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \
333 frameworks/native/data/etc/android.hardware.wifi.rtt.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.rtt.xml \
334 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml
335
Nikita Savchenko573492a2025-06-30 10:16:51 +0000336PRODUCT_VENDOR_MOVE_ENABLED := true
337
Nahhk7117b472025-03-19 06:23:56 -0500338# Inherit from vendor blobs
339$(call inherit-product, vendor/xiaomi/sm6225-common/sm6225-common-vendor.mk)