blob: b99bddf2d7fa9c09fc4d8ef6a7b3f2912bd48ba4 [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
56$(warning Build defined as $(BUILD_ID) ($(BUILD_NUMBER)))
57
Bharath756d7dd2021-08-07 23:53:55 +053058
Luca Weisse7ef1c82022-07-13 13:13:20 +020059# Define SPL for boot & vendor
60BOOT_SECURITY_PATCH := $(PLATFORM_SECURITY_PATCH)
61VENDOR_SECURITY_PATCH := $(PLATFORM_SECURITY_PATCH)
62
63
Bharath756d7dd2021-08-07 23:53:55 +053064# We don't have the calibration data as this sort of
65# data can only be generated at the factory so don't generate persist.img
66FP3_SKIP_PERSIST_IMG := true
67
Bharath80ba1872021-08-21 11:53:57 +053068
69# Operator specific overlays
70DEVICE_PACKAGE_OVERLAYS += \
71 $(LOCAL_PATH)/overlay-operators
72
Bharath756d7dd2021-08-07 23:53:55 +053073# Overlays
74DEVICE_PACKAGE_OVERLAYS += \
75 $(LOCAL_PATH)/overlay
76
77
78# A/B related defines
79AB_OTA_UPDATER := true
Luca Weissd6c3ca12022-07-13 16:24:08 +020080AB_OTA_PARTITIONS := \
81 aboot \
82 cmnlib64 \
83 cmnlib \
84 devcfg \
85 dsp \
Bharath756d7dd2021-08-07 23:53:55 +053086 dtbo \
Luca Weissd6c3ca12022-07-13 16:24:08 +020087 keymaster \
88 lksecapp \
89 mdtp \
90 modem \
91 rpm \
92 sbl1 \
93 tz \
Bharath756d7dd2021-08-07 23:53:55 +053094 vbmeta \
Luca Weissd6c3ca12022-07-13 16:24:08 +020095 boot \
96 system \
Bharath756d7dd2021-08-07 23:53:55 +053097 vendor
98
99
Bharath756d7dd2021-08-07 23:53:55 +0530100PRODUCT_PACKAGES += \
Bharath756d7dd2021-08-07 23:53:55 +0530101 update_engine_sideload
102
103
Bharath2307d3b2022-01-06 22:23:25 +0530104# APN
105PRODUCT_COPY_FILES += \
106 $(LOCAL_PATH)/apns-conf.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/apns-conf.xml
107
108
Bharath756d7dd2021-08-07 23:53:55 +0530109# AVB
110BOARD_AVB_ENABLE := true
111
112
113# Additional native libraries
114PRODUCT_COPY_FILES += \
115 $(FP_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt
116
117
Bharath12163282022-06-20 15:10:58 +0530118# OEM Unlock reporting
119PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
120 ro.oem_unlock_supported=1
121
122
Bharath756d7dd2021-08-07 23:53:55 +0530123# Atrace HAL
124PRODUCT_PACKAGES += \
125 android.hardware.atrace@1.0-service
126
127
128# Audio
Bharath756d7dd2021-08-07 23:53:55 +0530129PRODUCT_PACKAGES += \
130 android.hardware.audio@6.0 \
131 android.hardware.audio.common@6.0 \
132 android.hardware.audio.common@6.0-util \
Bharath70cf2ae2022-02-14 12:13:50 +0530133 android.hardware.audio@6.0-impl \
Bharath756d7dd2021-08-07 23:53:55 +0530134 android.hardware.audio.effect@6.0 \
Bharath70cf2ae2022-02-14 12:13:50 +0530135 android.hardware.audio.effect@6.0-impl \
Bharath756d7dd2021-08-07 23:53:55 +0530136 android.hardware.audio.service \
137 android.hardware.soundtrigger@2.1-impl \
138 audio.a2dp.default \
139 audio.primary.msm8953 \
140 audio.r_submix.default \
141 audio.usb.default \
142 libaacwrapper \
143 libaudio-resampler \
144 libautohal \
145 libqcompostprocbundle \
146 libqcomvisualizer \
147 libqcomvoiceprocessing \
148 libvolumelistener \
149 tinymix
150
151
152AUDIO_HAL_PATH := vendor/qcom/opensource/audio-hal/primary-hal
153
154# Audio files
155PRODUCT_COPY_FILES += \
Bharath756d7dd2021-08-07 23:53:55 +0530156 $(AUDIO_HAL_PATH)/configs/msm8953/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
157 $(AUDIO_HAL_PATH)/configs/msm8953/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
158 $(AUDIO_HAL_PATH)/configs/msm8953/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
159 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_intcodec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec.xml \
160 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_sku3_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_sku3_tasha.xml \
161 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_sku4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_sku4.xml \
162 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_tasha.xml \
163 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_tashalite.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_tashalite.xml \
164 $(AUDIO_HAL_PATH)/configs/msm8953/audio_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy.conf \
165 $(AUDIO_HAL_PATH)/configs/msm8953/audio_tuning_mixer.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer.txt \
166 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
167 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_mtp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_mtp.xml \
168 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_sku3_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_sku3_tasha.xml \
169 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_sku4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_sku4.xml \
170 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tasha.xml \
171 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_tashalite.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tashalite.xml \
172 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
173 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9306.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9306.xml \
174 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9330.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9330.xml \
175 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9335.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9335.xml \
176 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml
177
178
179# Audio config files
180PRODUCT_COPY_FILES += \
181 frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \
182 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
183 frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration.xml \
184 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
185 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
186 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
187
188# Custom config files
189PRODUCT_COPY_FILES += \
190 $(FP_PATH)/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml
191
192
193# Audio firmware files
194PRODUCT_COPY_FILES += \
195 $(FP_PATH)/aw/aw8898_cfg.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/aw8898_cfg.bin \
196 $(FP_PATH)/tas2557_fw/OBO_0617_music.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/tas2557_uCDSP.bin \
197 $(FP_PATH)/tas2557_fw/tas2557evm_OBO_0617.ftcfg:$(TARGET_COPY_OUT_VENDOR)/firmware/tas2557evm_aacspk_a.ftcfg
198
199
200# Audio Specific device overlays
201DEVICE_PACKAGE_OVERLAYS += $(AUDIO_HAL_PATH)/configs/common/overlay
202
203
204# Audio Specific properties
205# Properties
206-include $(LOCAL_PATH)/audio_properties.mk
207
208
209# Audio Kernel modules
210AUDIO_DLKM := audio_apr.ko
211AUDIO_DLKM += audio_q6_notifier.ko
212AUDIO_DLKM += audio_adsp_loader.ko
213AUDIO_DLKM += audio_q6.ko
214AUDIO_DLKM += audio_usf.ko
215AUDIO_DLKM += audio_pinctrl_wcd.ko
216AUDIO_DLKM += audio_swr.ko
217AUDIO_DLKM += audio_wcd_core.ko
218AUDIO_DLKM += audio_swr_ctrl.ko
219AUDIO_DLKM += audio_wsa881x.ko
220AUDIO_DLKM += audio_wsa881x_analog.ko
221AUDIO_DLKM += audio_platform.ko
222AUDIO_DLKM += audio_cpe_lsm.ko
223AUDIO_DLKM += audio_hdmi.ko
224AUDIO_DLKM += audio_stub.ko
225AUDIO_DLKM += audio_wcd9xxx.ko
226AUDIO_DLKM += audio_mbhc.ko
227AUDIO_DLKM += audio_wcd9335.ko
228AUDIO_DLKM += audio_wcd_cpe.ko
229AUDIO_DLKM += audio_digital_cdc.ko
230AUDIO_DLKM += audio_analog_cdc.ko
231AUDIO_DLKM += audio_native.ko
232AUDIO_DLKM += audio_machine_sdm450.ko
233AUDIO_DLKM += audio_machine_ext_sdm450.ko
234PRODUCT_PACKAGES += $(AUDIO_DLKM)
235
236
Bharath9cdcce22021-12-08 15:43:43 +0530237# Automation/ATS
238PRODUCT_PACKAGES += \
239 automation_setup \
240 automation_adb_setup
241
242
Bharathfe661fb2021-08-16 18:56:32 +0530243# ANT
244PRODUCT_PACKAGES += \
245 AntHalService \
246 antradio_app \
247 com.dsi.ant@1.0 \
Bharath70cf2ae2022-02-14 12:13:50 +0530248 com.dsi.ant@1.0.vendor \
Bharathfe661fb2021-08-16 18:56:32 +0530249 libantradio
250
Bharath756d7dd2021-08-07 23:53:55 +0530251# Bluetooth
Bharathfe661fb2021-08-16 18:56:32 +0530252PRODUCT_PACKAGES += \
Bharathfe661fb2021-08-16 18:56:32 +0530253 audio.bluetooth.default \
254 android.hardware.bluetooth.audio@2.0-impl \
255 android.hardware.bluetooth@1.0 \
256 vendor.qti.hardware.bluetooth_audio@2.0 \
257 vendor.qti.hardware.bluetooth_audio@2.1.vendor \
258 vendor.qti.hardware.btconfigstore@1.0.vendor
259
260# Bluetooth Permissions
261PRODUCT_COPY_FILES += \
262 frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
263 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 +0530264
265
Bharath12163282022-06-20 15:10:58 +0530266# Board platforms lists to be used for
267# TARGET_BOARD_PLATFORM specific featurization
268QCOM_BOARD_PLATFORMS += msm8953
269
270
Bharath756d7dd2021-08-07 23:53:55 +0530271# Boot
272PRODUCT_PACKAGES += \
273 android.hardware.boot@1.0-impl \
274 android.hardware.boot@1.0-impl.recovery \
275 android.hardware.boot@1.0-service \
276 bootctrl.msm8953 \
Bharathe341d1d2022-04-06 09:49:27 +0530277 bootctrl.msm8953.recovery \
Bharath756d7dd2021-08-07 23:53:55 +0530278 update_engine \
279 update_engine_client \
280 update_engine_sideload \
281 update_verifier
282
Bharath12163282022-06-20 15:10:58 +0530283# MSM updater library
284PRODUCT_PACKAGES += librecovery_updater_msm
285
286
287# Skip boot jars check
288SKIP_BOOT_JARS_CHECK := true
289
Bharath756d7dd2021-08-07 23:53:55 +0530290
291# Boot animation
292TARGET_SCREEN_HEIGHT := 2160
293TARGET_SCREEN_WIDTH := 1080
294
295
296PRODUCT_COPY_FILES += \
297 vendor/fairphone/media/bootanimation/bootanimation.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation.zip
298
299
300# Camera
Bharathcbfb0a92021-08-19 21:13:50 +0530301PRODUCT_PACKAGES += \
302 android.frameworks.displayservice@1.0.vendor \
303 android.hidl.base@1.0.vendor \
304 android.hardware.camera.device@3.5 \
305 android.hardware.camera.provider@2.4 \
306 android.hardware.camera.provider@2.4-external \
307 android.hardware.camera.provider@2.4-impl \
308 android.hardware.camera.provider@2.4-legacy \
309 android.hardware.camera.provider@2.4-service \
310 android.hardware.camera.provider@2.6 \
311 camera.device@1.0-impl \
312 camera.device@3.5-impl \
313 camera.device@3.6-external-impl \
314 camera.msm8953 \
315 cameraconfig.txt \
316 libcamera2ndk_vendor \
317 libhal_dbg \
318 libjni_burstpmk \
319 libjni_imageutil \
320 libjni_snapcammosaic \
321 libjni_snapcamtinyplanet \
322 libmm-qcamera \
323 libmmcamera_interface \
324 libmmjpeg_interface \
325 libmmlib2d_interface \
326 libqomx_core \
327 libxml2 \
328 mm-qcamera-app \
329 vendor.qti.hardware.camera.device@1.0 \
330 vendor.qti.hardware.camera.device@1.0.vendor
331
332# Fairphone Camera
333PRODUCT_PACKAGES += \
334 FairphoneCamera
335
336# Arcsoft camera libraries
337PRODUCT_PACKAGES += \
338 libarcimageprocess \
339 libarcsoft_aiscenedetection \
340 libarcsoft_hdr_detection \
341 libarcsoft_high_dynamic_range \
342 libarcsoft_low_light_hdr \
343 libarcsoft_low_light_shot \
344 libarcsoft_object_tracking \
345 libarcsoft_panorama_burstcapture \
346 libarcsoft_singlecam_bokeh \
347 libarcsoft_videoautozoom \
348 libarcsoft_videostabs \
349 libmpbase \
350 libmpbase.vendor
351
352# Feature flags for camera
353PRODUCT_COPY_FILES += \
354 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
355 frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
356 frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
357 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 +0530358
359
360# Component overrides
Bharathe025dac2022-08-02 15:02:41 +0530361PRODUCT_COPY_FILES += \
Bharath756d7dd2021-08-07 23:53:55 +0530362 $(FP_PATH)/configs/component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/component-overrides.xml
363
364
Bharath12163282022-06-20 15:10:58 +0530365# Charger
366PRODUCT_PACKAGES += \
367 charger \
368 charger_res_images
369
370
371# Chromium
372PRODUCT_PACKAGES += \
373 libwebviewchromium_loader \
374 libwebviewchromium_plat_support
375
376
377# Curl
378PRODUCT_PACKAGES += \
379 curl \
380 libcurl
381
382
383# Data/rmnetctrl
384PRODUCT_PACKAGES += \
385 librmnetctl
386
leolee75d66582020-10-21 15:26:49 +0800387# IPV4
388PRODUCT_PROPERTY_OVERRIDES += \
389 persist.vendor.data.profile_update=true
390
Bharatha701c6b2022-07-25 17:26:28 +0530391PRODUCT_PROPERTY_OVERRIDES += ro.telephony.iwlan_operation_mode=legacy
392
Bharath12163282022-06-20 15:10:58 +0530393
Bharath756d7dd2021-08-07 23:53:55 +0530394# Display
395PRODUCT_PACKAGES += \
396 android.hardware.graphics.allocator@2.0-impl \
397 android.hardware.graphics.allocator@2.0-service \
398 android.hardware.graphics.composer@2.1-service \
399 android.hardware.graphics.mapper@2.0-impl-2.1 \
400 android.hardware.memtrack@1.0-impl \
401 android.hardware.memtrack@1.0-service \
402 gralloc.default \
403 gralloc.msm8953 \
404 hwcomposer.msm8953 \
Bharath12163282022-06-20 15:10:58 +0530405 libcomposerextn.qti \
Bharath756d7dd2021-08-07 23:53:55 +0530406 libdisplayconfig \
Bharath12163282022-06-20 15:10:58 +0530407 libdisplayconfig.qti \
408 libdrm \
409 libgralloc.qti \
410 liblayerext.qti \
Bharath756d7dd2021-08-07 23:53:55 +0530411 libqdMetaData \
Bharath12163282022-06-20 15:10:58 +0530412 libqdMetaData.system \
413 libqdutils \
414 libsmomo.qti \
415 libsmomoconfig.qti \
Bharath756d7dd2021-08-07 23:53:55 +0530416 libvulkan \
Bharath12163282022-06-20 15:10:58 +0530417 memtrack.msm8953 \
Bharath756d7dd2021-08-07 23:53:55 +0530418 vendor.qti.hardware.display.composer@3.0
419
420
421# Vendor Display
422# Disable skip validate
423PRODUCT_PROPERTY_OVERRIDES += \
424 vendor.display.disable_skip_validate=1
425
Bharatha701c6b2022-07-25 17:26:28 +0530426PRODUCT_PROPERTY_OVERRIDES += ro.hardware.vulkan=adreno
427PRODUCT_PROPERTY_OVERRIDES += ro.hardware.egl=adreno
428
Bharath756d7dd2021-08-07 23:53:55 +0530429
430# Display Properties
431PRODUCT_AAPT_CONFIG := normal
432PRODUCT_AAPT_PREF_CONFIG := xxhdpi
433
434
435# DRM
436PRODUCT_PACKAGES += \
437 android.hardware.drm@1.3-service.clearkey
438
439
Pradeep Chenthatib4c3c102021-10-19 20:07:52 +0530440# Elabel
441PRODUCT_PACKAGES += \
442 eLabel.html.gz \
443 eLabel1.png \
444 eLabel2.png \
445 FAIRPHONE.html.gz \
446 FAIRPHONE.png
447
448
Bharath756d7dd2021-08-07 23:53:55 +0530449# Enable vndk-sp Libraries
450PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true
451TARGET_USES_MKE2FS := true
452
453PRODUCT_PACKAGES += \
454 vndk_package
455
456
457# Encryption
458PRODUCT_PROPERTY_OVERRIDES += ro.crypto.allow_encrypt_override=true
459PRODUCT_PROPERTY_OVERRIDES += ro.crypto.volume.filenames_mode=aes-256-cts
460
461
Bharath12163282022-06-20 15:10:58 +0530462# E2fsck
463PRODUCT_PACKAGES += \
464 e2fsck
465
Bharath44ee36f2022-05-02 15:37:19 +0530466# ExFAT binaries
467PRODUCT_COPY_FILES += \
468 $(FP_PATH)/tuxera/exfatck:$(TARGET_COPY_OUT_SYSTEM)/bin/exfatck \
469 $(FP_PATH)/tuxera/exfatdebug:$(TARGET_COPY_OUT_SYSTEM)/bin/exfatdebug \
470 $(FP_PATH)/tuxera/exfatlabel:$(TARGET_COPY_OUT_SYSTEM)/bin/exfatlabel \
471 $(FP_PATH)/tuxera/exfatvsn:$(TARGET_COPY_OUT_SYSTEM)/bin/exfatvsn \
472 $(FP_PATH)/tuxera/mkexfat:$(TARGET_COPY_OUT_SYSTEM)/bin/mkexfat
473
474
Bharathe341d1d2022-04-06 09:49:27 +0530475# Fastbootd
476PRODUCT_PACKAGES += fastbootd
477
478
Bharath756d7dd2021-08-07 23:53:55 +0530479# FBE support
480PRODUCT_COPY_FILES += \
481 $(FP_PATH)/init.qti.qseecomd.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.qti.qseecomd.sh
482
483
Bharath1710e062021-08-20 11:30:47 +0530484# Feature flags and permissions
485PRODUCT_COPY_FILES += \
486 frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
487 frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
488 frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
489 frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
490 frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
491 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
492 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
493 frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \
494 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 +0530495 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 +0530496 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
497 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
498 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 +0530499 frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \
500 frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml \
501 frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \
502 frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/android.software.verified_boot.xml \
Bharathdf89a7d2022-06-27 20:12:06 +0530503 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 +0530504 frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
505
Bharath1dcb6512021-08-20 00:41:08 +0530506# Fingerprint
507PRODUCT_PACKAGES += \
508 android.hardware.biometrics.fingerprint@2.1 \
509 android.hardware.biometrics.fingerprint@2.1-service \
510 elan_device.rc \
511 fingerprint.default
512
513# Fingerprint files
514include $(FP_PATH)/elan_lib/fingerprint/elan_lib.mk
515
516# Fingerprint feature flag
517PRODUCT_COPY_FILES += \
518 frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
519
520
Bharath756d7dd2021-08-07 23:53:55 +0530521# Framework Detect
522PRODUCT_PACKAGES += \
523 libqti_vndfwk_detect \
524 libqti_vndfwk_detect.vendor \
525 libvndfwk_detect_jni.qti \
526 libvndfwk_detect_jni.qti.vendor \
527 vndservicemanager
528
Bharath12163282022-06-20 15:10:58 +0530529# FRP
530PRODUCT_PROPERTY_OVERRIDES += ro.frp.pst=/dev/block/bootdevice/by-name/config
531
Bharath756d7dd2021-08-07 23:53:55 +0530532
533# HIDL
534PRODUCT_PACKAGES += \
535 android.hidl.base@1.0 \
536 libhidltransport \
537 libhidltransport.vendor \
538 libhwbinder \
539 libhwbinder.vendor
540
541
Bharath1710e062021-08-20 11:30:47 +0530542# GPS
543BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := default
Luca Weissa8a60262022-02-28 15:00:31 +0100544LOC_HIDL_VERSION := 4.0
Bharath1710e062021-08-20 11:30:47 +0530545
546PRODUCT_PACKAGES += \
Bharath70cf2ae2022-02-14 12:13:50 +0530547 android.hardware.gnss@2.1-impl-qti \
Bharath1710e062021-08-20 11:30:47 +0530548 android.hardware.gnss@2.1-service-qti \
549 libbatching \
550 libgeofencing \
551 libgnss \
552 libjson \
553 libwifi-hal-ctrl \
554 libgps.utils
555
556PRODUCT_PACKAGES += \
557 flp.conf \
558 gps.conf
559
560# gps/location secuity configuration file
561PRODUCT_COPY_FILES += \
562 $(FP_PATH)/configs/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config
563
564# Permissions
565PRODUCT_COPY_FILES += \
566 frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml
567
Bharath12163282022-06-20 15:10:58 +0530568PRODUCT_PROPERTY_OVERRIDES += \
569 persist.backup.ntpServer=0.pool.ntp.org
570
Bharath1710e062021-08-20 11:30:47 +0530571
Bharath756d7dd2021-08-07 23:53:55 +0530572# Health
573PRODUCT_PACKAGES += \
574 android.hardware.health@2.1-impl \
575 android.hardware.health@2.1-impl.recovery \
576 android.hardware.health@2.1-service
577
578# IMS
579PRODUCT_PACKAGES += \
580 ims-ext-common \
581 ims_ext_common.xml \
582 ConfURIDialer
583
Bharath12163282022-06-20 15:10:58 +0530584
585# Init
586PRODUCT_PACKAGES += \
587 fstab.qcom \
588 init.class_main.sh \
589 init.crda.sh \
590 init.mdm.sh \
591 init.qcom.class_core.sh \
592 init.qcom.coex.sh \
593 init.qcom.early_boot.sh \
594 init.qcom.efs.sync.sh \
595 init.qcom.factory.rc \
596 init.qcom.post_boot.sh \
597 init.qcom.rc \
598 init.qcom.sdio.sh \
599 init.qcom.sensors.sh \
600 init.qcom.sh \
601 init.qcom.usb.rc \
602 init.qcom.usb.sh \
603 init.recovery.qcom.rc \
604 init.target.rc \
605 init.veth_ipa_config.sh \
606 qca6234-service.sh \
607 ueventd.qcom.rc \
608 vold.fstab
609
610#intialise PRODUCT_PACKAGES_DEBUG list for debug modules
Luca Weiss2327bfb2022-07-13 09:47:07 +0200611PRODUCT_PACKAGES_DEBUG += init.qcom.testscripts.sh
Bharath12163282022-06-20 15:10:58 +0530612
613#Add init.qcom.test.rc to PRODUCT_PACKAGES_DEBUG list
614PRODUCT_PACKAGES_DEBUG += init.qcom.test.rc
615PRODUCT_PACKAGES_DEBUG += init.qcom.debug.sh
616
617ifneq ($(strip $(TARGET_BUILD_VARIANT)),user)
618PRODUCT_COPY_FILES += \
619 device/qcom/common/rootdir/etc/init.qcom.testscripts.sh:$(TARGET_COPY_OUT_PRODUCT)/etc/init.qcom.testscripts.sh
620endif
621
622PRODUCT_PACKAGES_DEBUG += \
623 init.qcom.debug.sh \
624 init.qcom.debug-sdm660.sh \
625 init.qcom.debug-sdm710.sh \
626 init.qti.debug-msmnile-apps.sh \
627 init.qti.debug-msmnile-modem.sh \
628 init.qti.debug-msmnile-slpi.sh \
629 init.qti.debug-talos.sh \
630 init.qti.debug-msmnile.sh \
631 init.qti.debug-kona.sh \
632 init.qti.debug-lito.sh \
633 init.qti.debug-trinket.sh \
634 init.qti.debug-atoll.sh \
635 init.qti.debug-lagoon.sh \
636 init.qti.debug-bengal.sh
637
638
639# IP and iptables
640PRODUCT_PACKAGES += \
641 ip \
642 libiprouteutil \
643 iptables \
644 ip-up-vpn \
645 libext
646
647
Bharath756d7dd2021-08-07 23:53:55 +0530648# IPACM
649PRODUCT_PACKAGES += \
650 ipacm \
651 IPACM_cfg.xml \
652 libipanat \
653 liboffloadhal \
654 libqsap_sdk
655
656# IRQ
657PRODUCT_COPY_FILES += \
658 $(FP_PATH)/configs/msm_irqbalance.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance.conf \
659 $(FP_PATH)/configs/msm_irqbalance_little_big.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance_little_big.conf
660
661
662# Kernel modules
663# Kernel modules install path
664KERNEL_MODULES_INSTALL := dlkm
665KERNEL_MODULES_OUT := out/target/product/$(PRODUCT_NAME)/$(KERNEL_MODULES_INSTALL)/lib/modules
Bharath12163282022-06-20 15:10:58 +0530666KERNEL_TO_BUILD_ROOT_OFFSET := ../../
667
668
669# Key layouts
670PRODUCT_PACKAGES += \
671 ft5x06_ts.kl \
672 gpio-keys.kl \
673 synaptics_dsx.kl \
674 synaptics_dsxv26.kl \
675 synaptics_rmi4_i2c.kl
Bharath756d7dd2021-08-07 23:53:55 +0530676
677
Bharatha701c6b2022-07-25 17:26:28 +0530678# Keystore
679PRODUCT_PROPERTY_OVERRIDES += ro.hardware.keystore_desede=true
680
681
Bharath756d7dd2021-08-07 23:53:55 +0530682# LED packages
683PRODUCT_PACKAGES += \
684 android.hardware.light@2.0-impl \
685 android.hardware.light@2.0-service \
686 lights.msm8953
687
688
689# Media / StagefrightCodec 2.0
690PRODUCT_PROPERTY_OVERRIDES += debug.stagefright.omx_default_rank=0
691
Bharathe3615be2021-08-18 22:25:42 +0530692# Enable features in video HAL that can compile only on this platform
Bharath12163282022-06-20 15:10:58 +0530693MSM_VIDC_TARGET_LIST := msm8953
Bharathe3615be2021-08-18 22:25:42 +0530694TARGET_USES_MEDIA_EXTENSIONS := true
695
696
697# media_profiles and media_codecs xmls for msm8953
698PRODUCT_COPY_FILES += \
699 $(FP_PATH)/media/media_profiles_8953.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/media_profiles.xml \
700 $(FP_PATH)/media/media_profiles_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml \
701 $(FP_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
702 $(FP_PATH)/media/media_codecs_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor.xml \
703 $(FP_PATH)/media/media_codecs_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_8953.xml \
704 $(FP_PATH)/media/media_codecs_performance_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
705 $(FP_PATH)/media/media_codecs_performance_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_8953.xml \
706 $(FP_PATH)/media/media_profiles_8953_v1.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/media_profiles_8953_v1.xml \
707 $(FP_PATH)/media/media_profiles_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_8953_v1.xml \
708 $(FP_PATH)/media/media_codecs_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_v1.xml \
709 $(FP_PATH)/media/media_codecs_performance_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_v1.xml \
710 $(FP_PATH)/media/media_codecs_vendor_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_audio.xml \
Bharath12163282022-06-20 15:10:58 +0530711 device/qcom/common/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
712 device/qcom/common/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml
713
714PRODUCT_COPY_FILES += \
715 frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
716 frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
717 frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
718 frameworks/av/media/libstagefright/data/media_codecs_google_video_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video_le.xml \
719 frameworks/av/media/libstagefright/data/media_codecs_google_c2.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2.xml \
720 frameworks/av/media/libstagefright/data/media_codecs_google_c2_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_c2_audio.xml \
721 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 +0530722
Bharath756d7dd2021-08-07 23:53:55 +0530723
724# NFC
Bharath1710e062021-08-20 11:30:47 +0530725PRODUCT_PACKAGES += \
726 NfcNci \
727 Tag \
728 com.android.nfc_extras \
729 com.nxp.nfc.nq \
730 com.nxp.nfc.nq.xml \
731 libnqnfc-nci \
732 libnqnfc_nci_jni \
733 nfc_nci.nqx.default.hw \
734 vendor.nxp.hardware.nfc@2.0-service
735
736# Permissions
737PRODUCT_COPY_FILES += \
738 frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
739 frameworks/native/data/etc/com.android.nfc_extras.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.android.nfc_extras.xml \
740 frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
741 frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
742 frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
743 frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \
744 frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
745 vendor/nxp/opensource/halimpl/halimpl/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci.conf \
746 vendor/nxp/opensource/halimpl/SN100x/halimpl/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci_SN100.conf
Bharath756d7dd2021-08-07 23:53:55 +0530747
748
749# OMX
750PRODUCT_PACKAGES += \
751 libavservices_minijail.vendor \
752 libc2dcolorconvert \
753 libOmxAacEnc \
754 libOmxAmrEnc \
755 libOmxCore \
756 libOmxEvrcEnc \
757 libOmxQcelp13Enc \
758 libOmxVdec \
759 libOmxVenc \
760 libqomx_core \
761 libaacwrapper \
762 libmm-omxcore \
763 libstagefrighthw \
764 libstagefright_softomx.vendor
765
766
767#
768# system prop for opengles version
769#
770# 196608 is decimal for 0x30000 to report major/minor versions as 3/0
771# 196609 is decimal for 0x30001 to report major/minor versions as 3/1
772# 196610 is decimal for 0x30002 to report major/minor versions as 3/2
773PRODUCT_PROPERTY_OVERRIDES += \
774 ro.opengles.version=196610
775
776
Bharath12163282022-06-20 15:10:58 +0530777# AOSP Packages
778PRODUCT_PACKAGES += \
779 DeskClock \
780 Calendar \
781 CalendarProvider \
782 Camera2 \
783 CertInstaller \
784 Gallery2 \
785 LatinIME \
786 Launcher3 \
787 LiveWallpapersPicker \
788 Music \
789 netutils-wrapper-1.0 \
790 Provision \
791 Protips \
792 QuickSearchBox \
793 Settings \
794 Stk \
795 SystemUI \
796
797
Bharath756d7dd2021-08-07 23:53:55 +0530798# Perf
799PRODUCT_COPY_FILES += \
800 $(FP_PATH)/configs/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml
801
Bharath12163282022-06-20 15:10:58 +0530802PRODUCT_PROPERTY_OVERRIDES += \
803 persist.vendor.qcomsysd.enabled=1 \
804 ro.vendor.extension_library=libqti-perfd-client.so \
805 sys.vendor.shutdown.waittime=500
806
Bharath756d7dd2021-08-07 23:53:55 +0530807
808# Power
809PRODUCT_PACKAGES += \
810 android.hardware.power@1.0-impl \
811 android.hardware.power@1.0-service \
812 power.qcom
813
814
Bharath756d7dd2021-08-07 23:53:55 +0530815# privapp-permissions whitelisting
816PRODUCT_PROPERTY_OVERRIDES += ro.control_privapp_permissions=enforce
817
818
819# Protobuf
820PRODUCT_PACKAGES += \
821 libprotobuf-cpp-full \
822 libprotobuf-cpp-full-vendorcompat \
823 libprotobuf-cpp-lite-vendorcompat
824
825
Bharath12163282022-06-20 15:10:58 +0530826# include additional QCOM build utilities
827-include device/qcom/common/utils.mk
828
Bharath756d7dd2021-08-07 23:53:55 +0530829# RIL properties
830PRODUCT_PROPERTY_OVERRIDES += rild.libpath=/vendor/lib64/libril-qc-qmi-1.so
831PRODUCT_PROPERTY_OVERRIDES += vendor.rild.libpath=/vendor/lib64/libril-qc-qmi-1.so
832#vendor prop to disable advanced network scanning
833PRODUCT_PROPERTY_OVERRIDES += \
834 persist.vendor.radio.enableadvancedscan=false
835
Bharath12163282022-06-20 15:10:58 +0530836# Enable Dual SIM by default
837PRODUCT_PROPERTY_OVERRIDES += persist.radio.multisim.config=dsds
838
839PRODUCT_PROPERTY_OVERRIDES += \
840 persist.vendor.radio.apm_sim_not_pwdn=1 \
841 persist.vendor.radio.sib16_support=1 \
842 persist.vendor.radio.custom_ecc=1 \
843 persist.vendor.radio.rat_on=combine \
844 persist.vendor.radio.procedure_bytes=SKIP
845
Bharath756d7dd2021-08-07 23:53:55 +0530846
847# RenderScript
848PRODUCT_PACKAGES += \
849 android.hardware.renderscript@1.0-impl
850
851
852# SDCard
853# default is nosdcard, S/W button enabled in resource
854PRODUCT_CHARACTERISTICS := nosdcard
855
856
857# Seccomp
858PRODUCT_COPY_FILES += \
859 $(FP_PATH)/seccomp/mediacodec-seccomp.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy \
860 $(FP_PATH)/seccomp/mediaextractor-seccomp.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediaextractor.policy
861
862
Bharath1710e062021-08-20 11:30:47 +0530863# Secure Element
864PRODUCT_PACKAGES += \
865 android.hardware.secure_element@1.2
866
867
Bharathca82a242022-08-18 19:48:51 +0530868# Sound Recorder
869PRODUCT_PACKAGES += \
870 QtiSoundRecorder
871
872
Bharath756d7dd2021-08-07 23:53:55 +0530873# System helper
874PRODUCT_PACKAGES += \
875 vendor.qti.hardware.systemhelper@1.0
876
877
878# Service tracker
879PRODUCT_PACKAGES += \
880 vendor.qti.hardware.servicetracker@1.2.vendor
881
882
Bharatha60665d2021-08-19 09:37:22 +0530883# Sensors
884PRODUCT_PACKAGES += \
885 sensors.FP3 \
886 android.hardware.sensors@1.0-impl \
887 android.hardware.sensors@1.0-service \
888 libsensorndkbridge
889
890# Sensor HAL conf file
891PRODUCT_COPY_FILES += \
892 $(FP_PATH)/configs/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf
893
894# Feature definition files for msm8953
895PRODUCT_COPY_FILES += \
896 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
897 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
898 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
899 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
900 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
901 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
902 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml
903
904
Bharath756d7dd2021-08-07 23:53:55 +0530905# Telephony Permissions
Bharath12163282022-06-20 15:10:58 +0530906# whitelisted app
907PRODUCT_COPY_FILES += \
908 device/qcom/common/qti_whitelist.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/sysconfig/qti_whitelist.xml
909
910PRODUCT_COPY_FILES += \
911 device/qcom/common/privapp-permissions-qti.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-qti.xml
912
913# Telephony wrappers
914PRODUCT_PACKAGES += \
915 qti-telephony-hidl-wrapper \
916 qti_telephony_hidl_wrapper.xml \
917 qti-telephony-utils \
918 qti_telephony_utils.xml
Bharath756d7dd2021-08-07 23:53:55 +0530919
920
921# Thermal
922PRODUCT_PACKAGES += \
923 android.hardware.thermal@1.0-impl \
924 android.hardware.thermal@1.0-service
925
926
927# Tinyxml
928PRODUCT_PACKAGES += \
929 libtinyxml
930
931# USB
932PRODUCT_PACKAGES += \
933 android.hardware.usb@1.0-service
934
935-include vendor/qcom/opensource/usb/vendor_product.mk
936
937
938# Vendor move
939PRODUCT_VENDOR_MOVE_ENABLED := true
940
941
942# Vibrator
943PRODUCT_PACKAGES += \
944 android.hardware.vibrator@1.0-impl \
Bharath12163282022-06-20 15:10:58 +0530945 android.hardware.vibrator@1.0-service \
946 vendor.qti.hardware.vibrator.service
947
948PRODUCT_COPY_FILES += \
949 vendor/qcom/opensource/vibrator/excluded-input-devices.xml:$(TARGET_COPY_OUT_VENDOR)/etc/excluded-input-devices.xml
Bharath756d7dd2021-08-07 23:53:55 +0530950
951
Bharathed255712021-08-14 20:37:05 +0530952# WiFi
953# WLAN drivers
954PRODUCT_COPY_FILES += \
955 $(FP_PATH)/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_qcom_cfg.ini \
956 $(FP_PATH)/wifi/WCNSS_wlan_dictionary.dat:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_wlan_dictionary.dat \
957 $(FP_PATH)/wifi/WCNSS_qcom_wlan_nv.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/wlan/prima/WCNSS_qcom_wlan_nv.bin # From Android 10
958
959# Flag to check if wcnss_service is built from source
960TARGET_USE_WCNSS_HAL := false
961
962# If building from source then drop proprietary dependency
963ifeq ($(TARGET_USE_WCNSS_HAL),true)
964TARGET_USES_QCOM_WCNSS_QMI := false
Bharath70cf2ae2022-02-14 12:13:50 +0530965
966PRODUCT_PACKAGES += \
967 libwcnss_qmi \
968 wcnss_service
Bharathed255712021-08-14 20:37:05 +0530969endif
970
971# WiFi HAL
972PRODUCT_PACKAGES += \
973 android.hardware.wifi@1.0-service
974
Bharath12163282022-06-20 15:10:58 +0530975# WLAN DLKM
976PRODUCT_PACKAGES += \
977 pronto_wlan.ko
978
Bharathed255712021-08-14 20:37:05 +0530979# WiFi Components
980PRODUCT_PACKAGES += \
981 hostapd \
982 hostapd.accept \
983 hostapd.deny \
984 hostapd_cli \
985 hostapd_default.conf \
986 libnl \
987 libqsap_sdk \
Bharathed255712021-08-14 20:37:05 +0530988 libwifi-hal-qcom \
989 libwpa_client \
990 p2p_supplicant_overlay.conf \
991 vendor.qti.hardware.wifi.supplicant@1.0.vendor \
Bharathed255712021-08-14 20:37:05 +0530992 wificond \
993 wpa_cli \
994 wpa_supplicant.conf \
995 wpa_supplicant \
996 wpa_supplicant_overlay.conf \
997 WifiOverlay \
998 TetheringConfigOverlay
999
1000
Bharath12163282022-06-20 15:10:58 +05301001# Zlib
1002PRODUCT_HOST_PACKAGES += minigzip
1003
1004
1005#soong namespace for qssi vs vendor differentiation
1006SOONG_CONFIG_NAMESPACES += qssi_vs_vendor
1007SOONG_CONFIG_qssi_vs_vendor += qssi_or_vendor
1008SOONG_CONFIG_qssi_vs_vendor_qssi_or_vendor := vendor
1009
1010SOONG_CONFIG_NAMESPACES += aosp_vs_qva
1011SOONG_CONFIG_aosp_vs_qva += aosp_or_qva
1012ifeq ($(TARGET_FWK_SUPPORTS_FULL_VALUEADDS),true)
1013SOONG_CONFIG_aosp_vs_qva_aosp_or_qva := qva
1014else
1015SOONG_CONFIG_aosp_vs_qva_aosp_or_qva := aosp
1016endif
1017
1018SOONG_CONFIG_NAMESPACES += qtidisplaycommonsys
1019# Soong Keys
1020SOONG_CONFIG_qtidisplaycommonsys := displayconfig_enabled
1021# Soong Values
1022SOONG_CONFIG_qtidisplaycommonsys_displayconfig_enabled := true
1023
1024
Bharath756d7dd2021-08-07 23:53:55 +05301025# Call the proprietary setup
Bharatha3a85a72022-05-23 17:50:24 +05301026ifeq ($(FP3_PROPRIETARY_PATH),)
1027FP3_PROPRIETARY_PATH := device/fairphone/fp3-proprietary
1028$(warning Using default blobs path: $(FP3_PROPRIETARY_PATH).)
1029endif
1030
Bharath8808e702022-08-04 14:48:24 +05301031DEVICE_BLOB_VERSION := 4.A.0016.2
Francesco Salvatore03117482019-02-28 16:39:11 +01001032
1033GET_BLOBS_CMD = vendor/fairphone/tools/bin/get_blobs.py --device FP3 --build-id $(DEVICE_BLOB_VERSION) --blobs-dir $(FP3_PROPRIETARY_PATH)
1034
1035# Check the presence of proprietary blobs
1036ifeq ("$(wildcard $(FP3_PROPRIETARY_PATH)/device-vendor.mk)","")
1037define BLOBS_INSTRUCTION
1038Cannot find FP3 binary blobs.
1039Please run
1040 $(GET_BLOBS_CMD)
1041and accept the terms of agreement.
1042endef
1043$(error $(BLOBS_INSTRUCTION))
1044endif
1045
Bharath756d7dd2021-08-07 23:53:55 +05301046# Call this in the end so that flags if required can be utilized.
Bharatha3a85a72022-05-23 17:50:24 +05301047$(call inherit-product, $(FP3_PROPRIETARY_PATH)/device-vendor.mk)
1048
Bharath12163282022-06-20 15:10:58 +05301049# Build some more display components to vendor
1050$(call inherit-product, vendor/qcom/opensource/commonsys-intf/display/config/display-interfaces-product.mk)
Bharath756d7dd2021-08-07 23:53:55 +05301051###################################################################################