blob: 37007e9369563724cf9cc3d693e0124efb06864c [file] [log] [blame]
Bharath756d7dd2021-08-07 23:53:55 +05301# Copyright 2021-2022 Fairphone B.V.
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14#
15
16FP_PATH := device/fairphone/FP3
17
lindaguo(103996)47226c12020-06-22 17:27:43 +080018# Disable data roaming by default
19PRODUCT_PROPERTY_OVERRIDES += \
20 ro.com.android.dataroaming=false
21
Bharath756d7dd2021-08-07 23:53:55 +053022# Call the vendor setup
23$(call inherit-product-if-exists, vendor/fairphone/fp3-common/device-vendor.mk)
24
25$(call inherit-product, build/make/target/product/product_launched_with_p.mk)
26
27$(call inherit-product, frameworks/native/build/phone-xhdpi-4096-dalvik-heap.mk)
28
Bharath12163282022-06-20 15:10:58 +053029# Inherit generic AOSP content for telephony based 64-bit devices
30$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
31$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
Bharath756d7dd2021-08-07 23:53:55 +053032
33PRODUCT_NAME := FP3
34PRODUCT_DEVICE := FP3
35PRODUCT_MODEL := FP3
36PRODUCT_MANUFACTURER := Fairphone
37PRODUCT_BRAND := Fairphone
38
39
40# Allow using custom and expressive names for our Android flavors while in fact
41# targeting the same model with all of them.
Bharath6a7439e2022-02-21 17:35:49 +053042PRODUCT_BUILD_PROP_OVERRIDES += PRODUCT_MODEL=FP3 PRODUCT_NAME=FP3 TARGET_PRODUCT=FP3
Bharath756d7dd2021-08-07 23:53:55 +053043
Bharath756d7dd2021-08-07 23:53:55 +053044
Bharathdccdc592022-03-31 12:10:41 +053045TARGET_SYSTEM_PROP := $(FP_PATH)/system.prop
Bharath756d7dd2021-08-07 23:53:55 +053046
Borjan Tchakaloff17a5b5f2018-05-11 11:35:06 +020047# Define the build number based on the product flavour and on the build manifest
48# revision
49ifneq (,$(strip $(PRODUCT_FLAVOR)))
50 _BUILD_MANIFEST_REV := $(shell (git -C $(TOPDIR).repo/manifests rev-parse --short=8 HEAD))
51 BUILD_NUMBER := $(PRODUCT_FLAVOR)-$(_BUILD_MANIFEST_REV)
52 HAS_BUILD_NUMBER := true
53else
54 $(error PRODUCT_FLAVOR must be defined)
55endif
Borjan Tchakaloff17a5b5f2018-05-11 11:35:06 +020056
Bharath756d7dd2021-08-07 23:53:55 +053057
Luca Weisse7ef1c82022-07-13 13:13:20 +020058# Define SPL for boot & vendor
59BOOT_SECURITY_PATCH := $(PLATFORM_SECURITY_PATCH)
60VENDOR_SECURITY_PATCH := $(PLATFORM_SECURITY_PATCH)
61
62
Wilson Sung54b067e2021-03-03 18:08:45 +080063# Set system properties identifying the chipset
64PRODUCT_VENDOR_PROPERTIES += ro.soc.manufacturer=QTI
65PRODUCT_VENDOR_PROPERTIES += ro.soc.model=SDM450
66
67
Bharath756d7dd2021-08-07 23:53:55 +053068# We don't have the calibration data as this sort of
69# data can only be generated at the factory so don't generate persist.img
70FP3_SKIP_PERSIST_IMG := true
71
Bharath80ba1872021-08-21 11:53:57 +053072
73# Operator specific overlays
74DEVICE_PACKAGE_OVERLAYS += \
75 $(LOCAL_PATH)/overlay-operators
76
Bharath756d7dd2021-08-07 23:53:55 +053077# Overlays
78DEVICE_PACKAGE_OVERLAYS += \
79 $(LOCAL_PATH)/overlay
80
81
82# A/B related defines
83AB_OTA_UPDATER := true
Luca Weissd6c3ca12022-07-13 16:24:08 +020084AB_OTA_PARTITIONS := \
85 aboot \
86 cmnlib64 \
87 cmnlib \
88 devcfg \
89 dsp \
Bharath756d7dd2021-08-07 23:53:55 +053090 dtbo \
Luca Weissd6c3ca12022-07-13 16:24:08 +020091 keymaster \
92 lksecapp \
93 mdtp \
94 modem \
95 rpm \
96 sbl1 \
97 tz \
Bharath756d7dd2021-08-07 23:53:55 +053098 vbmeta \
Luca Weissd6c3ca12022-07-13 16:24:08 +020099 boot \
100 system \
Bharath756d7dd2021-08-07 23:53:55 +0530101 vendor
102
103
Bharath756d7dd2021-08-07 23:53:55 +0530104PRODUCT_PACKAGES += \
Bharath756d7dd2021-08-07 23:53:55 +0530105 update_engine_sideload
106
Bharath776a9712022-03-18 00:00:41 +0530107# Dynamic Partition
108# Enable retrofit dynamic partitions for FP3
109PRODUCT_USE_DYNAMIC_PARTITIONS := true
110PRODUCT_RETROFIT_DYNAMIC_PARTITIONS := true
111
112# Additional OTA partitions
113ifeq ($(PRODUCT_USE_DYNAMIC_PARTITIONS), true)
114AB_OTA_PARTITIONS += \
115 odm \
116 product \
117 system_ext
118
119# Check OTA update status
120PRODUCT_PACKAGES += check_dynamic_partitions
121
122# Ramdisk fstab file
123PRODUCT_PACKAGES += fstab_ramdisk.qcom
124
125AB_OTA_POSTINSTALL_CONFIG += \
126 RUN_POSTINSTALL_product=true \
127 POSTINSTALL_PATH_product=bin/check_dynamic_partitions \
128 FILESYSTEM_TYPE_product=ext4 \
129 POSTINSTALL_OPTIONAL_product=false
130
131endif
Bharath756d7dd2021-08-07 23:53:55 +0530132
Bharath2307d3b2022-01-06 22:23:25 +0530133# APN
134PRODUCT_COPY_FILES += \
135 $(LOCAL_PATH)/apns-conf.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/apns-conf.xml
136
137
Bharath756d7dd2021-08-07 23:53:55 +0530138# AVB
139BOARD_AVB_ENABLE := true
140
141
142# Additional native libraries
143PRODUCT_COPY_FILES += \
144 $(FP_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt
145
146
Bharath12163282022-06-20 15:10:58 +0530147# OEM Unlock reporting
148PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
149 ro.oem_unlock_supported=1
150
151
Bharath756d7dd2021-08-07 23:53:55 +0530152# Atrace HAL
153PRODUCT_PACKAGES += \
154 android.hardware.atrace@1.0-service
155
156
157# Audio
Bharath756d7dd2021-08-07 23:53:55 +0530158PRODUCT_PACKAGES += \
159 android.hardware.audio@6.0 \
160 android.hardware.audio.common@6.0 \
161 android.hardware.audio.common@6.0-util \
Bharath70cf2ae2022-02-14 12:13:50 +0530162 android.hardware.audio@6.0-impl \
Bharath756d7dd2021-08-07 23:53:55 +0530163 android.hardware.audio.effect@6.0 \
Bharath70cf2ae2022-02-14 12:13:50 +0530164 android.hardware.audio.effect@6.0-impl \
Bharath756d7dd2021-08-07 23:53:55 +0530165 android.hardware.audio.service \
166 android.hardware.soundtrigger@2.1-impl \
167 audio.a2dp.default \
168 audio.primary.msm8953 \
169 audio.r_submix.default \
170 audio.usb.default \
171 libaacwrapper \
172 libaudio-resampler \
173 libautohal \
174 libqcompostprocbundle \
175 libqcomvisualizer \
176 libqcomvoiceprocessing \
177 libvolumelistener \
178 tinymix
179
180
Bharathf96fea32022-10-05 09:43:16 +0530181AUDIO_HAL_PATH := hardware/qcom/audio
Bharath756d7dd2021-08-07 23:53:55 +0530182
183# Audio files
184PRODUCT_COPY_FILES += \
Bharath756d7dd2021-08-07 23:53:55 +0530185 $(AUDIO_HAL_PATH)/configs/msm8953/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
186 $(AUDIO_HAL_PATH)/configs/msm8953/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
187 $(AUDIO_HAL_PATH)/configs/msm8953/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
188 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_intcodec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec.xml \
189 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_sku3_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_sku3_tasha.xml \
190 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_sku4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_sku4.xml \
191 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_tasha.xml \
192 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_tashalite.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_tashalite.xml \
193 $(AUDIO_HAL_PATH)/configs/msm8953/audio_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy.conf \
194 $(AUDIO_HAL_PATH)/configs/msm8953/audio_tuning_mixer.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer.txt \
195 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
196 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_mtp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_mtp.xml \
197 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_sku3_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_sku3_tasha.xml \
198 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_sku4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_sku4.xml \
199 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tasha.xml \
200 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_tashalite.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tashalite.xml \
201 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
202 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9306.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9306.xml \
203 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9330.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9330.xml \
204 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9335.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9335.xml \
205 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml
206
207
208# Audio config files
209PRODUCT_COPY_FILES += \
210 frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \
211 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
212 frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration.xml \
213 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
214 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
215 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
216
217# Custom config files
218PRODUCT_COPY_FILES += \
219 $(FP_PATH)/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml
220
221
222# Audio firmware files
223PRODUCT_COPY_FILES += \
224 $(FP_PATH)/aw/aw8898_cfg.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/aw8898_cfg.bin \
225 $(FP_PATH)/tas2557_fw/OBO_0617_music.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/tas2557_uCDSP.bin \
226 $(FP_PATH)/tas2557_fw/tas2557evm_OBO_0617.ftcfg:$(TARGET_COPY_OUT_VENDOR)/firmware/tas2557evm_aacspk_a.ftcfg
227
228
229# Audio Specific device overlays
230DEVICE_PACKAGE_OVERLAYS += $(AUDIO_HAL_PATH)/configs/common/overlay
231
232
233# Audio Specific properties
234# Properties
235-include $(LOCAL_PATH)/audio_properties.mk
236
237
238# Audio Kernel modules
239AUDIO_DLKM := audio_apr.ko
240AUDIO_DLKM += audio_q6_notifier.ko
241AUDIO_DLKM += audio_adsp_loader.ko
242AUDIO_DLKM += audio_q6.ko
243AUDIO_DLKM += audio_usf.ko
244AUDIO_DLKM += audio_pinctrl_wcd.ko
245AUDIO_DLKM += audio_swr.ko
246AUDIO_DLKM += audio_wcd_core.ko
247AUDIO_DLKM += audio_swr_ctrl.ko
248AUDIO_DLKM += audio_wsa881x.ko
249AUDIO_DLKM += audio_wsa881x_analog.ko
250AUDIO_DLKM += audio_platform.ko
251AUDIO_DLKM += audio_cpe_lsm.ko
252AUDIO_DLKM += audio_hdmi.ko
253AUDIO_DLKM += audio_stub.ko
254AUDIO_DLKM += audio_wcd9xxx.ko
255AUDIO_DLKM += audio_mbhc.ko
256AUDIO_DLKM += audio_wcd9335.ko
257AUDIO_DLKM += audio_wcd_cpe.ko
258AUDIO_DLKM += audio_digital_cdc.ko
259AUDIO_DLKM += audio_analog_cdc.ko
260AUDIO_DLKM += audio_native.ko
261AUDIO_DLKM += audio_machine_sdm450.ko
262AUDIO_DLKM += audio_machine_ext_sdm450.ko
263PRODUCT_PACKAGES += $(AUDIO_DLKM)
264
265
Bharath9cdcce22021-12-08 15:43:43 +0530266# Automation/ATS
267PRODUCT_PACKAGES += \
268 automation_setup \
269 automation_adb_setup
270
271
Bharathfe661fb2021-08-16 18:56:32 +0530272# ANT
273PRODUCT_PACKAGES += \
274 AntHalService \
275 antradio_app \
276 com.dsi.ant@1.0 \
Bharath70cf2ae2022-02-14 12:13:50 +0530277 com.dsi.ant@1.0.vendor \
Bharathfe661fb2021-08-16 18:56:32 +0530278 libantradio
279
Bharath756d7dd2021-08-07 23:53:55 +0530280# Bluetooth
Bharathfe661fb2021-08-16 18:56:32 +0530281PRODUCT_PACKAGES += \
Bharathfe661fb2021-08-16 18:56:32 +0530282 audio.bluetooth.default \
283 android.hardware.bluetooth.audio@2.0-impl \
284 android.hardware.bluetooth@1.0 \
285 vendor.qti.hardware.bluetooth_audio@2.0 \
Bharath19ec3492022-03-14 10:22:26 +0530286 vendor.qti.hardware.bluetooth_audio@2.1.vendor
Bharathfe661fb2021-08-16 18:56:32 +0530287
288# Bluetooth Permissions
289PRODUCT_COPY_FILES += \
290 frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
291 frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml
Bharath756d7dd2021-08-07 23:53:55 +0530292
293
Bharath12163282022-06-20 15:10:58 +0530294# Board platforms lists to be used for
295# TARGET_BOARD_PLATFORM specific featurization
296QCOM_BOARD_PLATFORMS += msm8953
297
298
Bharath756d7dd2021-08-07 23:53:55 +0530299# Boot
300PRODUCT_PACKAGES += \
301 android.hardware.boot@1.0-impl \
302 android.hardware.boot@1.0-impl.recovery \
303 android.hardware.boot@1.0-service \
304 bootctrl.msm8953 \
Bharathe341d1d2022-04-06 09:49:27 +0530305 bootctrl.msm8953.recovery \
Bharath756d7dd2021-08-07 23:53:55 +0530306 update_engine \
307 update_engine_client \
308 update_engine_sideload \
309 update_verifier
310
Bharath12163282022-06-20 15:10:58 +0530311# MSM updater library
312PRODUCT_PACKAGES += librecovery_updater_msm
313
314
315# Skip boot jars check
316SKIP_BOOT_JARS_CHECK := true
317
Bharath756d7dd2021-08-07 23:53:55 +0530318
319# Boot animation
320TARGET_SCREEN_HEIGHT := 2160
321TARGET_SCREEN_WIDTH := 1080
322
323
324PRODUCT_COPY_FILES += \
325 vendor/fairphone/media/bootanimation/bootanimation.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation.zip
326
327
328# Camera
Bharathcbfb0a92021-08-19 21:13:50 +0530329PRODUCT_PACKAGES += \
330 android.frameworks.displayservice@1.0.vendor \
331 android.hidl.base@1.0.vendor \
332 android.hardware.camera.device@3.5 \
333 android.hardware.camera.provider@2.4 \
334 android.hardware.camera.provider@2.4-external \
335 android.hardware.camera.provider@2.4-impl \
336 android.hardware.camera.provider@2.4-legacy \
337 android.hardware.camera.provider@2.4-service \
338 android.hardware.camera.provider@2.6 \
339 camera.device@1.0-impl \
340 camera.device@3.5-impl \
341 camera.device@3.6-external-impl \
342 camera.msm8953 \
Bharathcbfb0a92021-08-19 21:13:50 +0530343 libcamera2ndk_vendor \
344 libhal_dbg \
345 libjni_burstpmk \
346 libjni_imageutil \
347 libjni_snapcammosaic \
348 libjni_snapcamtinyplanet \
349 libmm-qcamera \
350 libmmcamera_interface \
351 libmmjpeg_interface \
352 libmmlib2d_interface \
353 libqomx_core \
354 libxml2 \
355 mm-qcamera-app \
356 vendor.qti.hardware.camera.device@1.0 \
357 vendor.qti.hardware.camera.device@1.0.vendor
358
359# Fairphone Camera
360PRODUCT_PACKAGES += \
361 FairphoneCamera
362
363# Arcsoft camera libraries
364PRODUCT_PACKAGES += \
365 libarcimageprocess \
366 libarcsoft_aiscenedetection \
367 libarcsoft_hdr_detection \
368 libarcsoft_high_dynamic_range \
369 libarcsoft_low_light_hdr \
370 libarcsoft_low_light_shot \
371 libarcsoft_object_tracking \
372 libarcsoft_panorama_burstcapture \
373 libarcsoft_singlecam_bokeh \
374 libarcsoft_videoautozoom \
375 libarcsoft_videostabs \
376 libmpbase \
377 libmpbase.vendor
378
379# Feature flags for camera
380PRODUCT_COPY_FILES += \
381 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
382 frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
383 frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
384 frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml
Bharath756d7dd2021-08-07 23:53:55 +0530385
386
387# Component overrides
Bharathe025dac2022-08-02 15:02:41 +0530388PRODUCT_COPY_FILES += \
Bharath756d7dd2021-08-07 23:53:55 +0530389 $(FP_PATH)/configs/component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/component-overrides.xml
390
391
Bharath12163282022-06-20 15:10:58 +0530392# Charger
393PRODUCT_PACKAGES += \
394 charger \
395 charger_res_images
396
397
398# Chromium
399PRODUCT_PACKAGES += \
400 libwebviewchromium_loader \
401 libwebviewchromium_plat_support
402
403
404# Curl
405PRODUCT_PACKAGES += \
406 curl \
407 libcurl
408
409
410# Data/rmnetctrl
411PRODUCT_PACKAGES += \
412 librmnetctl
413
leolee75d66582020-10-21 15:26:49 +0800414# IPV4
415PRODUCT_PROPERTY_OVERRIDES += \
416 persist.vendor.data.profile_update=true
417
Bharatha701c6b2022-07-25 17:26:28 +0530418PRODUCT_PROPERTY_OVERRIDES += ro.telephony.iwlan_operation_mode=legacy
419
Bharath12163282022-06-20 15:10:58 +0530420
Bharath756d7dd2021-08-07 23:53:55 +0530421# Display
422PRODUCT_PACKAGES += \
423 android.hardware.graphics.allocator@2.0-impl \
424 android.hardware.graphics.allocator@2.0-service \
425 android.hardware.graphics.composer@2.1-service \
426 android.hardware.graphics.mapper@2.0-impl-2.1 \
427 android.hardware.memtrack@1.0-impl \
428 android.hardware.memtrack@1.0-service \
429 gralloc.default \
430 gralloc.msm8953 \
431 hwcomposer.msm8953 \
Bharath756d7dd2021-08-07 23:53:55 +0530432 libdisplayconfig \
Bharath12163282022-06-20 15:10:58 +0530433 libdisplayconfig.qti \
434 libdrm \
435 libgralloc.qti \
Bharath756d7dd2021-08-07 23:53:55 +0530436 libqdMetaData \
Bharath12163282022-06-20 15:10:58 +0530437 libqdutils \
Bharath756d7dd2021-08-07 23:53:55 +0530438 libvulkan \
Bharath12163282022-06-20 15:10:58 +0530439 memtrack.msm8953 \
Bharath756d7dd2021-08-07 23:53:55 +0530440 vendor.qti.hardware.display.composer@3.0
441
442
443# Vendor Display
444# Disable skip validate
445PRODUCT_PROPERTY_OVERRIDES += \
446 vendor.display.disable_skip_validate=1
447
Bharatha701c6b2022-07-25 17:26:28 +0530448PRODUCT_PROPERTY_OVERRIDES += ro.hardware.vulkan=adreno
449PRODUCT_PROPERTY_OVERRIDES += ro.hardware.egl=adreno
450
Bharath756d7dd2021-08-07 23:53:55 +0530451
452# Display Properties
453PRODUCT_AAPT_CONFIG := normal
454PRODUCT_AAPT_PREF_CONFIG := xxhdpi
455
456
457# DRM
458PRODUCT_PACKAGES += \
Edwin Wong8de56c72021-03-25 00:19:58 -0700459 android.hardware.drm@1.4-service.clearkey
Bharath756d7dd2021-08-07 23:53:55 +0530460
461
Pradeep Chenthatib4c3c102021-10-19 20:07:52 +0530462# Elabel
463PRODUCT_PACKAGES += \
464 eLabel.html.gz \
465 eLabel1.png \
466 eLabel2.png \
467 FAIRPHONE.html.gz \
468 FAIRPHONE.png
469
470
Bharath756d7dd2021-08-07 23:53:55 +0530471# Enable vndk-sp Libraries
472PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true
473TARGET_USES_MKE2FS := true
474
475PRODUCT_PACKAGES += \
476 vndk_package
477
478
479# Encryption
480PRODUCT_PROPERTY_OVERRIDES += ro.crypto.allow_encrypt_override=true
481PRODUCT_PROPERTY_OVERRIDES += ro.crypto.volume.filenames_mode=aes-256-cts
482
483
Bharath12163282022-06-20 15:10:58 +0530484# E2fsck
485PRODUCT_PACKAGES += \
486 e2fsck
487
Bharath44ee36f2022-05-02 15:37:19 +0530488# ExFAT binaries
489PRODUCT_COPY_FILES += \
490 $(FP_PATH)/tuxera/exfatck:$(TARGET_COPY_OUT_SYSTEM)/bin/exfatck \
491 $(FP_PATH)/tuxera/exfatdebug:$(TARGET_COPY_OUT_SYSTEM)/bin/exfatdebug \
492 $(FP_PATH)/tuxera/exfatlabel:$(TARGET_COPY_OUT_SYSTEM)/bin/exfatlabel \
493 $(FP_PATH)/tuxera/exfatvsn:$(TARGET_COPY_OUT_SYSTEM)/bin/exfatvsn \
494 $(FP_PATH)/tuxera/mkexfat:$(TARGET_COPY_OUT_SYSTEM)/bin/mkexfat
495
496
Bharathe341d1d2022-04-06 09:49:27 +0530497# Fastbootd
498PRODUCT_PACKAGES += fastbootd
499
500
Bharath756d7dd2021-08-07 23:53:55 +0530501# FBE support
502PRODUCT_COPY_FILES += \
503 $(FP_PATH)/init.qti.qseecomd.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.qti.qseecomd.sh
504
505
Bharath1710e062021-08-20 11:30:47 +0530506# Feature flags and permissions
507PRODUCT_COPY_FILES += \
508 frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
509 frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
510 frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
511 frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
512 frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
513 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
514 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
515 frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \
516 frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-0.xml \
Bharath0c86f4b2022-02-14 16:38:53 +0530517 frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_1.xml \
Bharath1710e062021-08-20 11:30:47 +0530518 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
519 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
520 frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \
Bharath1710e062021-08-20 11:30:47 +0530521 frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \
522 frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml \
523 frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \
Gillian Lin59f821d2021-06-15 22:33:15 +0800524 frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml \
Bharathdf89a7d2022-06-27 20:12:06 +0530525 frameworks/native/data/etc/android.software.vulkan.deqp.level-2019-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml \
Bharath1710e062021-08-20 11:30:47 +0530526 frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
527
Bharath1dcb6512021-08-20 00:41:08 +0530528# Fingerprint
529PRODUCT_PACKAGES += \
530 android.hardware.biometrics.fingerprint@2.1 \
531 android.hardware.biometrics.fingerprint@2.1-service \
532 elan_device.rc \
533 fingerprint.default
534
535# Fingerprint files
536include $(FP_PATH)/elan_lib/fingerprint/elan_lib.mk
537
538# Fingerprint feature flag
539PRODUCT_COPY_FILES += \
540 frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
541
542
Bharath756d7dd2021-08-07 23:53:55 +0530543# Framework Detect
544PRODUCT_PACKAGES += \
545 libqti_vndfwk_detect \
546 libqti_vndfwk_detect.vendor \
547 libvndfwk_detect_jni.qti \
548 libvndfwk_detect_jni.qti.vendor \
549 vndservicemanager
550
Bharath12163282022-06-20 15:10:58 +0530551# FRP
552PRODUCT_PROPERTY_OVERRIDES += ro.frp.pst=/dev/block/bootdevice/by-name/config
553
Bharath756d7dd2021-08-07 23:53:55 +0530554
555# HIDL
556PRODUCT_PACKAGES += \
557 android.hidl.base@1.0 \
558 libhidltransport \
559 libhidltransport.vendor \
560 libhwbinder \
561 libhwbinder.vendor
562
563
Bharath1710e062021-08-20 11:30:47 +0530564# GPS
565BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := default
Luca Weissa8a60262022-02-28 15:00:31 +0100566LOC_HIDL_VERSION := 4.0
Bharath1710e062021-08-20 11:30:47 +0530567
568PRODUCT_PACKAGES += \
Bharath70cf2ae2022-02-14 12:13:50 +0530569 android.hardware.gnss@2.1-impl-qti \
Bharath1710e062021-08-20 11:30:47 +0530570 android.hardware.gnss@2.1-service-qti \
571 libbatching \
572 libgeofencing \
573 libgnss \
574 libjson \
575 libwifi-hal-ctrl \
576 libgps.utils
577
578PRODUCT_PACKAGES += \
579 flp.conf \
580 gps.conf
581
582# gps/location secuity configuration file
583PRODUCT_COPY_FILES += \
584 $(FP_PATH)/configs/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config
585
586# Permissions
587PRODUCT_COPY_FILES += \
588 frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml
589
Bharath12163282022-06-20 15:10:58 +0530590PRODUCT_PROPERTY_OVERRIDES += \
591 persist.backup.ntpServer=0.pool.ntp.org
592
Bharath1710e062021-08-20 11:30:47 +0530593
Bharath756d7dd2021-08-07 23:53:55 +0530594# Health
595PRODUCT_PACKAGES += \
596 android.hardware.health@2.1-impl \
597 android.hardware.health@2.1-impl.recovery \
598 android.hardware.health@2.1-service
599
600# IMS
601PRODUCT_PACKAGES += \
602 ims-ext-common \
603 ims_ext_common.xml \
604 ConfURIDialer
605
Bharath12163282022-06-20 15:10:58 +0530606
607# Init
608PRODUCT_PACKAGES += \
609 fstab.qcom \
610 init.class_main.sh \
611 init.crda.sh \
Karsten Tauschee270bad2022-08-22 15:41:19 +0200612 init.legacy_prop.rc \
Bharath12163282022-06-20 15:10:58 +0530613 init.mdm.sh \
614 init.qcom.class_core.sh \
615 init.qcom.coex.sh \
616 init.qcom.early_boot.sh \
617 init.qcom.efs.sync.sh \
618 init.qcom.factory.rc \
619 init.qcom.post_boot.sh \
620 init.qcom.rc \
621 init.qcom.sdio.sh \
622 init.qcom.sensors.sh \
623 init.qcom.sh \
624 init.qcom.usb.rc \
625 init.qcom.usb.sh \
626 init.recovery.qcom.rc \
627 init.target.rc \
628 init.veth_ipa_config.sh \
629 qca6234-service.sh \
630 ueventd.qcom.rc \
631 vold.fstab
632
633#intialise PRODUCT_PACKAGES_DEBUG list for debug modules
Luca Weiss2327bfb2022-07-13 09:47:07 +0200634PRODUCT_PACKAGES_DEBUG += init.qcom.testscripts.sh
Bharath12163282022-06-20 15:10:58 +0530635
636#Add init.qcom.test.rc to PRODUCT_PACKAGES_DEBUG list
637PRODUCT_PACKAGES_DEBUG += init.qcom.test.rc
638PRODUCT_PACKAGES_DEBUG += init.qcom.debug.sh
639
640ifneq ($(strip $(TARGET_BUILD_VARIANT)),user)
641PRODUCT_COPY_FILES += \
Bharath8e773362022-10-05 09:42:57 +0530642 $(FP_PATH)/rootdir/etc/init.qcom.testscripts.sh:$(TARGET_COPY_OUT_PRODUCT)/etc/init.qcom.testscripts.sh
Bharath12163282022-06-20 15:10:58 +0530643endif
644
645PRODUCT_PACKAGES_DEBUG += \
646 init.qcom.debug.sh \
647 init.qcom.debug-sdm660.sh \
648 init.qcom.debug-sdm710.sh \
649 init.qti.debug-msmnile-apps.sh \
650 init.qti.debug-msmnile-modem.sh \
651 init.qti.debug-msmnile-slpi.sh \
652 init.qti.debug-talos.sh \
653 init.qti.debug-msmnile.sh \
654 init.qti.debug-kona.sh \
655 init.qti.debug-lito.sh \
656 init.qti.debug-trinket.sh \
657 init.qti.debug-atoll.sh \
658 init.qti.debug-lagoon.sh \
659 init.qti.debug-bengal.sh
660
661
662# IP and iptables
663PRODUCT_PACKAGES += \
664 ip \
665 libiprouteutil \
666 iptables \
667 ip-up-vpn \
668 libext
669
670
Bharath756d7dd2021-08-07 23:53:55 +0530671# IPACM
672PRODUCT_PACKAGES += \
673 ipacm \
674 IPACM_cfg.xml \
675 libipanat \
676 liboffloadhal \
677 libqsap_sdk
678
679# IRQ
680PRODUCT_COPY_FILES += \
681 $(FP_PATH)/configs/msm_irqbalance.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance.conf \
682 $(FP_PATH)/configs/msm_irqbalance_little_big.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance_little_big.conf
683
684
685# Kernel modules
686# Kernel modules install path
687KERNEL_MODULES_INSTALL := dlkm
688KERNEL_MODULES_OUT := out/target/product/$(PRODUCT_NAME)/$(KERNEL_MODULES_INSTALL)/lib/modules
Bharath12163282022-06-20 15:10:58 +0530689KERNEL_TO_BUILD_ROOT_OFFSET := ../../
690
691
692# Key layouts
693PRODUCT_PACKAGES += \
694 ft5x06_ts.kl \
695 gpio-keys.kl \
696 synaptics_dsx.kl \
697 synaptics_dsxv26.kl \
698 synaptics_rmi4_i2c.kl
Bharath756d7dd2021-08-07 23:53:55 +0530699
700
Bharatha701c6b2022-07-25 17:26:28 +0530701# Keystore
702PRODUCT_PROPERTY_OVERRIDES += ro.hardware.keystore_desede=true
703
704
Bharath756d7dd2021-08-07 23:53:55 +0530705# LED packages
706PRODUCT_PACKAGES += \
707 android.hardware.light@2.0-impl \
708 android.hardware.light@2.0-service \
709 lights.msm8953
710
711
712# Media / StagefrightCodec 2.0
713PRODUCT_PROPERTY_OVERRIDES += debug.stagefright.omx_default_rank=0
714
Bharathe3615be2021-08-18 22:25:42 +0530715# Enable features in video HAL that can compile only on this platform
Bharath12163282022-06-20 15:10:58 +0530716MSM_VIDC_TARGET_LIST := msm8953
Bharathe3615be2021-08-18 22:25:42 +0530717TARGET_USES_MEDIA_EXTENSIONS := true
718
719
720# media_profiles and media_codecs xmls for msm8953
721PRODUCT_COPY_FILES += \
722 $(FP_PATH)/media/media_profiles_8953.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/media_profiles.xml \
723 $(FP_PATH)/media/media_profiles_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml \
724 $(FP_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
725 $(FP_PATH)/media/media_codecs_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor.xml \
726 $(FP_PATH)/media/media_codecs_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_8953.xml \
727 $(FP_PATH)/media/media_codecs_performance_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
728 $(FP_PATH)/media/media_codecs_performance_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_8953.xml \
729 $(FP_PATH)/media/media_profiles_8953_v1.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/media_profiles_8953_v1.xml \
730 $(FP_PATH)/media/media_profiles_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_8953_v1.xml \
731 $(FP_PATH)/media/media_codecs_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_v1.xml \
732 $(FP_PATH)/media/media_codecs_performance_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_v1.xml \
733 $(FP_PATH)/media/media_codecs_vendor_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_audio.xml \
Bharath8e773362022-10-05 09:42:57 +0530734 $(FP_PATH)/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
735 $(FP_PATH)/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml
Bharath12163282022-06-20 15:10:58 +0530736
737PRODUCT_COPY_FILES += \
738 frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
739 frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
740 frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
741 frameworks/av/media/libstagefright/data/media_codecs_google_video_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video_le.xml \
742 frameworks/av/media/libstagefright/data/media_codecs_google_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2.xml \
743 frameworks/av/media/libstagefright/data/media_codecs_google_c2_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_audio.xml \
744 frameworks/av/media/libstagefright/data/media_codecs_google_c2_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_video.xml
Bharathe3615be2021-08-18 22:25:42 +0530745
Bharath756d7dd2021-08-07 23:53:55 +0530746
747# NFC
Bharath1710e062021-08-20 11:30:47 +0530748PRODUCT_PACKAGES += \
Bharathcaaa78e2022-09-06 10:18:06 +0530749 NQNfcNci \
Bharath1710e062021-08-20 11:30:47 +0530750 Tag \
751 com.android.nfc_extras \
752 com.nxp.nfc.nq \
753 com.nxp.nfc.nq.xml \
754 libnqnfc-nci \
755 libnqnfc_nci_jni \
756 nfc_nci.nqx.default.hw \
757 vendor.nxp.hardware.nfc@2.0-service
758
759# Permissions
760PRODUCT_COPY_FILES += \
761 frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
762 frameworks/native/data/etc/com.android.nfc_extras.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.android.nfc_extras.xml \
763 frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
764 frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
765 frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
766 frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \
767 frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
768 vendor/nxp/opensource/halimpl/halimpl/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci.conf \
769 vendor/nxp/opensource/halimpl/SN100x/halimpl/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci_SN100.conf
Bharath756d7dd2021-08-07 23:53:55 +0530770
771
772# OMX
773PRODUCT_PACKAGES += \
774 libavservices_minijail.vendor \
775 libc2dcolorconvert \
776 libOmxAacEnc \
777 libOmxAmrEnc \
778 libOmxCore \
779 libOmxEvrcEnc \
780 libOmxQcelp13Enc \
781 libOmxVdec \
782 libOmxVenc \
783 libqomx_core \
784 libaacwrapper \
785 libmm-omxcore \
786 libstagefrighthw \
787 libstagefright_softomx.vendor
788
789
790#
791# system prop for opengles version
792#
793# 196608 is decimal for 0x30000 to report major/minor versions as 3/0
794# 196609 is decimal for 0x30001 to report major/minor versions as 3/1
795# 196610 is decimal for 0x30002 to report major/minor versions as 3/2
796PRODUCT_PROPERTY_OVERRIDES += \
797 ro.opengles.version=196610
798
799
Bharath12163282022-06-20 15:10:58 +0530800# AOSP Packages
801PRODUCT_PACKAGES += \
802 DeskClock \
803 Calendar \
804 CalendarProvider \
805 Camera2 \
806 CertInstaller \
807 Gallery2 \
808 LatinIME \
809 Launcher3 \
810 LiveWallpapersPicker \
811 Music \
812 netutils-wrapper-1.0 \
813 Provision \
814 Protips \
815 QuickSearchBox \
816 Settings \
817 Stk \
818 SystemUI \
819
820
Bharath756d7dd2021-08-07 23:53:55 +0530821# Perf
822PRODUCT_COPY_FILES += \
823 $(FP_PATH)/configs/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml
824
Bharath12163282022-06-20 15:10:58 +0530825PRODUCT_PROPERTY_OVERRIDES += \
826 persist.vendor.qcomsysd.enabled=1 \
827 ro.vendor.extension_library=libqti-perfd-client.so \
828 sys.vendor.shutdown.waittime=500
829
Bharath756d7dd2021-08-07 23:53:55 +0530830
831# Power
832PRODUCT_PACKAGES += \
833 android.hardware.power@1.0-impl \
834 android.hardware.power@1.0-service \
835 power.qcom
836
837
Bharath756d7dd2021-08-07 23:53:55 +0530838# privapp-permissions whitelisting
839PRODUCT_PROPERTY_OVERRIDES += ro.control_privapp_permissions=enforce
840
841
842# Protobuf
843PRODUCT_PACKAGES += \
844 libprotobuf-cpp-full \
845 libprotobuf-cpp-full-vendorcompat \
846 libprotobuf-cpp-lite-vendorcompat
847
848
Bharath12163282022-06-20 15:10:58 +0530849# include additional QCOM build utilities
Bharath8e773362022-10-05 09:42:57 +0530850include $(FP_PATH)/utils.mk
Bharath12163282022-06-20 15:10:58 +0530851
Bharath756d7dd2021-08-07 23:53:55 +0530852# RIL properties
Bharath756d7dd2021-08-07 23:53:55 +0530853PRODUCT_PROPERTY_OVERRIDES += vendor.rild.libpath=/vendor/lib64/libril-qc-qmi-1.so
854#vendor prop to disable advanced network scanning
855PRODUCT_PROPERTY_OVERRIDES += \
856 persist.vendor.radio.enableadvancedscan=false
857
Bharath12163282022-06-20 15:10:58 +0530858# Enable Dual SIM by default
859PRODUCT_PROPERTY_OVERRIDES += persist.radio.multisim.config=dsds
860
861PRODUCT_PROPERTY_OVERRIDES += \
862 persist.vendor.radio.apm_sim_not_pwdn=1 \
863 persist.vendor.radio.sib16_support=1 \
864 persist.vendor.radio.custom_ecc=1 \
865 persist.vendor.radio.rat_on=combine \
866 persist.vendor.radio.procedure_bytes=SKIP
867
Bharath756d7dd2021-08-07 23:53:55 +0530868
869# RenderScript
870PRODUCT_PACKAGES += \
871 android.hardware.renderscript@1.0-impl
872
873
874# SDCard
875# default is nosdcard, S/W button enabled in resource
876PRODUCT_CHARACTERISTICS := nosdcard
877
878
879# Seccomp
880PRODUCT_COPY_FILES += \
881 $(FP_PATH)/seccomp/mediacodec-seccomp.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy \
882 $(FP_PATH)/seccomp/mediaextractor-seccomp.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediaextractor.policy
883
884
Bharath1710e062021-08-20 11:30:47 +0530885# Secure Element
886PRODUCT_PACKAGES += \
887 android.hardware.secure_element@1.2
888
889
Bharathca82a242022-08-18 19:48:51 +0530890# Sound Recorder
891PRODUCT_PACKAGES += \
892 QtiSoundRecorder
893
894
Bharath756d7dd2021-08-07 23:53:55 +0530895# System helper
896PRODUCT_PACKAGES += \
897 vendor.qti.hardware.systemhelper@1.0
898
899
900# Service tracker
901PRODUCT_PACKAGES += \
902 vendor.qti.hardware.servicetracker@1.2.vendor
903
904
Bharatha60665d2021-08-19 09:37:22 +0530905# Sensors
906PRODUCT_PACKAGES += \
907 sensors.FP3 \
908 android.hardware.sensors@1.0-impl \
909 android.hardware.sensors@1.0-service \
910 libsensorndkbridge
911
912# Sensor HAL conf file
913PRODUCT_COPY_FILES += \
914 $(FP_PATH)/configs/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf
915
916# Feature definition files for msm8953
917PRODUCT_COPY_FILES += \
918 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
919 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
920 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
921 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
922 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
923 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
924 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml
925
926
Bharath756d7dd2021-08-07 23:53:55 +0530927# Telephony Permissions
Bharath12163282022-06-20 15:10:58 +0530928# whitelisted app
929PRODUCT_COPY_FILES += \
Bharath8e773362022-10-05 09:42:57 +0530930 $(FP_PATH)/configs/qti_whitelist.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/sysconfig/qti_whitelist.xml
Bharath12163282022-06-20 15:10:58 +0530931
932PRODUCT_COPY_FILES += \
Bharath8e773362022-10-05 09:42:57 +0530933 $(FP_PATH)/configs/privapp-permissions-qti.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-qti.xml
Bharath12163282022-06-20 15:10:58 +0530934
935# Telephony wrappers
936PRODUCT_PACKAGES += \
937 qti-telephony-hidl-wrapper \
938 qti_telephony_hidl_wrapper.xml \
939 qti-telephony-utils \
940 qti_telephony_utils.xml
Bharath756d7dd2021-08-07 23:53:55 +0530941
942
943# Thermal
944PRODUCT_PACKAGES += \
945 android.hardware.thermal@1.0-impl \
946 android.hardware.thermal@1.0-service
947
948
949# Tinyxml
950PRODUCT_PACKAGES += \
951 libtinyxml
952
953# USB
954PRODUCT_PACKAGES += \
955 android.hardware.usb@1.0-service
956
957-include vendor/qcom/opensource/usb/vendor_product.mk
958
959
960# Vendor move
961PRODUCT_VENDOR_MOVE_ENABLED := true
962
963
964# Vibrator
965PRODUCT_PACKAGES += \
966 android.hardware.vibrator@1.0-impl \
Bharath12163282022-06-20 15:10:58 +0530967 android.hardware.vibrator@1.0-service \
968 vendor.qti.hardware.vibrator.service
969
970PRODUCT_COPY_FILES += \
971 vendor/qcom/opensource/vibrator/excluded-input-devices.xml:$(TARGET_COPY_OUT_VENDOR)/etc/excluded-input-devices.xml
Bharath756d7dd2021-08-07 23:53:55 +0530972
973
Bharathed255712021-08-14 20:37:05 +0530974# WiFi
975# WLAN drivers
976PRODUCT_COPY_FILES += \
977 $(FP_PATH)/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_qcom_cfg.ini \
978 $(FP_PATH)/wifi/WCNSS_wlan_dictionary.dat:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_wlan_dictionary.dat \
979 $(FP_PATH)/wifi/WCNSS_qcom_wlan_nv.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/wlan/prima/WCNSS_qcom_wlan_nv.bin # From Android 10
980
981# Flag to check if wcnss_service is built from source
982TARGET_USE_WCNSS_HAL := false
983
984# If building from source then drop proprietary dependency
985ifeq ($(TARGET_USE_WCNSS_HAL),true)
986TARGET_USES_QCOM_WCNSS_QMI := false
Bharath70cf2ae2022-02-14 12:13:50 +0530987
988PRODUCT_PACKAGES += \
989 libwcnss_qmi \
990 wcnss_service
Bharathed255712021-08-14 20:37:05 +0530991endif
992
993# WiFi HAL
994PRODUCT_PACKAGES += \
995 android.hardware.wifi@1.0-service
996
Bharath12163282022-06-20 15:10:58 +0530997# WLAN DLKM
998PRODUCT_PACKAGES += \
999 pronto_wlan.ko
1000
Bharathed255712021-08-14 20:37:05 +05301001# WiFi Components
1002PRODUCT_PACKAGES += \
1003 hostapd \
1004 hostapd.accept \
1005 hostapd.deny \
1006 hostapd_cli \
1007 hostapd_default.conf \
1008 libnl \
1009 libqsap_sdk \
Bharathed255712021-08-14 20:37:05 +05301010 libwifi-hal-qcom \
1011 libwpa_client \
1012 p2p_supplicant_overlay.conf \
1013 vendor.qti.hardware.wifi.supplicant@1.0.vendor \
Bharathed255712021-08-14 20:37:05 +05301014 wificond \
1015 wpa_cli \
1016 wpa_supplicant.conf \
1017 wpa_supplicant \
1018 wpa_supplicant_overlay.conf \
1019 WifiOverlay \
1020 TetheringConfigOverlay
1021
1022
Bharath12163282022-06-20 15:10:58 +05301023# Zlib
1024PRODUCT_HOST_PACKAGES += minigzip
1025
1026
1027#soong namespace for qssi vs vendor differentiation
1028SOONG_CONFIG_NAMESPACES += qssi_vs_vendor
1029SOONG_CONFIG_qssi_vs_vendor += qssi_or_vendor
1030SOONG_CONFIG_qssi_vs_vendor_qssi_or_vendor := vendor
1031
1032SOONG_CONFIG_NAMESPACES += aosp_vs_qva
1033SOONG_CONFIG_aosp_vs_qva += aosp_or_qva
1034ifeq ($(TARGET_FWK_SUPPORTS_FULL_VALUEADDS),true)
1035SOONG_CONFIG_aosp_vs_qva_aosp_or_qva := qva
1036else
1037SOONG_CONFIG_aosp_vs_qva_aosp_or_qva := aosp
1038endif
1039
1040SOONG_CONFIG_NAMESPACES += qtidisplaycommonsys
1041# Soong Keys
1042SOONG_CONFIG_qtidisplaycommonsys := displayconfig_enabled
1043# Soong Values
1044SOONG_CONFIG_qtidisplaycommonsys_displayconfig_enabled := true
1045
1046
Bharath756d7dd2021-08-07 23:53:55 +05301047# Call the proprietary setup
Bharatha3a85a72022-05-23 17:50:24 +05301048FP3_PROPRIETARY_PATH := device/fairphone/fp3-proprietary
Bharatha3a85a72022-05-23 17:50:24 +05301049
Karsten Tauscheff99b112022-09-19 12:04:31 +02001050DEVICE_BLOB_VERSION := 4.A.0017.2
Francesco Salvatore03117482019-02-28 16:39:11 +01001051
1052GET_BLOBS_CMD = vendor/fairphone/tools/bin/get_blobs.py --device FP3 --build-id $(DEVICE_BLOB_VERSION) --blobs-dir $(FP3_PROPRIETARY_PATH)
1053
1054# Check the presence of proprietary blobs
1055ifeq ("$(wildcard $(FP3_PROPRIETARY_PATH)/device-vendor.mk)","")
1056define BLOBS_INSTRUCTION
1057Cannot find FP3 binary blobs.
1058Please run
1059 $(GET_BLOBS_CMD)
1060and accept the terms of agreement.
1061endef
1062$(error $(BLOBS_INSTRUCTION))
1063endif
1064
Bharath756d7dd2021-08-07 23:53:55 +05301065# Call this in the end so that flags if required can be utilized.
Bharatha3a85a72022-05-23 17:50:24 +05301066$(call inherit-product, $(FP3_PROPRIETARY_PATH)/device-vendor.mk)
1067
Bharath12163282022-06-20 15:10:58 +05301068# Build some more display components to vendor
1069$(call inherit-product, vendor/qcom/opensource/commonsys-intf/display/config/display-interfaces-product.mk)
Bharath756d7dd2021-08-07 23:53:55 +05301070###################################################################################