blob: 964e2dd63489ca1cbcce05250bb55d2ad5e21260 [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
18# Call the vendor setup
19$(call inherit-product-if-exists, vendor/fairphone/fp3-common/device-vendor.mk)
20
21$(call inherit-product, build/make/target/product/product_launched_with_p.mk)
22
23$(call inherit-product, frameworks/native/build/phone-xhdpi-4096-dalvik-heap.mk)
24
25$(call inherit-product, device/fairphone/fp3-common/common/common64.mk)
26
27PRODUCT_NAME := FP3
28PRODUCT_DEVICE := FP3
29PRODUCT_MODEL := FP3
30PRODUCT_MANUFACTURER := Fairphone
31PRODUCT_BRAND := Fairphone
32
33
34# Allow using custom and expressive names for our Android flavors while in fact
35# targeting the same model with all of them.
36PRODUCT_BUILD_PROP_OVERRIDES += PRODUCT_MODEL=FP3 PRODUCT_NAME=FP3
37
38# vendor/qcom/proprietary/common/config/device-vendor.mk --> PRODUCT_LIST
39TARGET_BASE_PRODUCT := FP3
40TARGET_VENDOR := fairphone
41
42TARGET_SYSTEM_PROP := device/$(TARGET_VENDOR)/$(PRODUCT_NAME)/system.prop
43
44
45# We don't have the calibration data as this sort of
46# data can only be generated at the factory so don't generate persist.img
47FP3_SKIP_PERSIST_IMG := true
48
49# Overlays
50DEVICE_PACKAGE_OVERLAYS += \
51 $(LOCAL_PATH)/overlay
52
53
54# A/B related defines
55AB_OTA_UPDATER := true
56AB_OTA_PARTITIONS += \
57 boot \
58 dtbo \
59 system \
60 vbmeta \
61 vendor
62
63
64AB_OTA_POSTINSTALL_CONFIG += \
65 RUN_POSTINSTALL_vendor=true \
66 POSTINSTALL_PATH_vendor=bin/checkpoint_gc \
67 FILESYSTEM_TYPE_vendor=ext4 \
68 POSTINSTALL_OPTIONAL_vendor=true
69
70PRODUCT_PACKAGES += \
71 checkpoint_gc \
72 update_engine_sideload
73
74
75# AVB
76BOARD_AVB_ENABLE := true
77
78
79# Additional native libraries
80PRODUCT_COPY_FILES += \
81 $(FP_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt
82
83
84# Atrace HAL
85PRODUCT_PACKAGES += \
86 android.hardware.atrace@1.0-service
87
88
89# Audio
90# AV Enhancement
91TARGET_ENABLE_QC_AV_ENHANCEMENTS := true
92
93
94PRODUCT_PACKAGES += \
95 android.hardware.audio@6.0 \
96 android.hardware.audio.common@6.0 \
97 android.hardware.audio.common@6.0-util \
98 android.hardware.audio@6.0-impl:32 \
99 android.hardware.audio.effect@6.0 \
100 android.hardware.audio.effect@6.0-impl:32 \
101 android.hardware.audio.service \
102 android.hardware.soundtrigger@2.1-impl \
103 audio.a2dp.default \
104 audio.primary.msm8953 \
105 audio.r_submix.default \
106 audio.usb.default \
107 libaacwrapper \
108 libaudio-resampler \
109 libautohal \
110 libqcompostprocbundle \
111 libqcomvisualizer \
112 libqcomvoiceprocessing \
113 libvolumelistener \
114 tinymix
115
116
117AUDIO_HAL_PATH := vendor/qcom/opensource/audio-hal/primary-hal
118
119# Audio files
120PRODUCT_COPY_FILES += \
Bharath756d7dd2021-08-07 23:53:55 +0530121 $(AUDIO_HAL_PATH)/configs/msm8953/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
122 $(AUDIO_HAL_PATH)/configs/msm8953/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
123 $(AUDIO_HAL_PATH)/configs/msm8953/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
124 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_intcodec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec.xml \
125 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_sku3_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_sku3_tasha.xml \
126 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_sku4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_sku4.xml \
127 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_tasha.xml \
128 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_tashalite.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_tashalite.xml \
129 $(AUDIO_HAL_PATH)/configs/msm8953/audio_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy.conf \
130 $(AUDIO_HAL_PATH)/configs/msm8953/audio_tuning_mixer.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer.txt \
131 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
132 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_mtp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_mtp.xml \
133 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_sku3_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_sku3_tasha.xml \
134 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_sku4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_sku4.xml \
135 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tasha.xml \
136 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_tashalite.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tashalite.xml \
137 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
138 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9306.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9306.xml \
139 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9330.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9330.xml \
140 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9335.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9335.xml \
141 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml
142
143
144# Audio config files
145PRODUCT_COPY_FILES += \
146 frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \
147 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
148 frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration.xml \
149 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
150 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
151 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
152
153# Custom config files
154PRODUCT_COPY_FILES += \
155 $(FP_PATH)/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml
156
157
158# Audio firmware files
159PRODUCT_COPY_FILES += \
160 $(FP_PATH)/aw/aw8898_cfg.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/aw8898_cfg.bin \
161 $(FP_PATH)/tas2557_fw/OBO_0617_music.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/tas2557_uCDSP.bin \
162 $(FP_PATH)/tas2557_fw/tas2557evm_OBO_0617.ftcfg:$(TARGET_COPY_OUT_VENDOR)/firmware/tas2557evm_aacspk_a.ftcfg
163
164
165# Audio Specific device overlays
166DEVICE_PACKAGE_OVERLAYS += $(AUDIO_HAL_PATH)/configs/common/overlay
167
168
169# Audio Specific properties
170# Properties
171-include $(LOCAL_PATH)/audio_properties.mk
172
173
174# Audio Kernel modules
175AUDIO_DLKM := audio_apr.ko
176AUDIO_DLKM += audio_q6_notifier.ko
177AUDIO_DLKM += audio_adsp_loader.ko
178AUDIO_DLKM += audio_q6.ko
179AUDIO_DLKM += audio_usf.ko
180AUDIO_DLKM += audio_pinctrl_wcd.ko
181AUDIO_DLKM += audio_swr.ko
182AUDIO_DLKM += audio_wcd_core.ko
183AUDIO_DLKM += audio_swr_ctrl.ko
184AUDIO_DLKM += audio_wsa881x.ko
185AUDIO_DLKM += audio_wsa881x_analog.ko
186AUDIO_DLKM += audio_platform.ko
187AUDIO_DLKM += audio_cpe_lsm.ko
188AUDIO_DLKM += audio_hdmi.ko
189AUDIO_DLKM += audio_stub.ko
190AUDIO_DLKM += audio_wcd9xxx.ko
191AUDIO_DLKM += audio_mbhc.ko
192AUDIO_DLKM += audio_wcd9335.ko
193AUDIO_DLKM += audio_wcd_cpe.ko
194AUDIO_DLKM += audio_digital_cdc.ko
195AUDIO_DLKM += audio_analog_cdc.ko
196AUDIO_DLKM += audio_native.ko
197AUDIO_DLKM += audio_machine_sdm450.ko
198AUDIO_DLKM += audio_machine_ext_sdm450.ko
199PRODUCT_PACKAGES += $(AUDIO_DLKM)
200
201
Bharath9cdcce22021-12-08 15:43:43 +0530202# Automation/ATS
203PRODUCT_PACKAGES += \
204 automation_setup \
205 automation_adb_setup
206
207
Bharathfe661fb2021-08-16 18:56:32 +0530208# ANT
209PRODUCT_PACKAGES += \
210 AntHalService \
211 antradio_app \
212 com.dsi.ant@1.0 \
213 libantradio
214
Bharath756d7dd2021-08-07 23:53:55 +0530215# Bluetooth
Bharathfe661fb2021-08-16 18:56:32 +0530216PRODUCT_PACKAGES += \
217 libbt-vendor \
218 audio.bluetooth.default \
219 android.hardware.bluetooth.audio@2.0-impl \
220 android.hardware.bluetooth@1.0 \
221 vendor.qti.hardware.bluetooth_audio@2.0 \
222 vendor.qti.hardware.bluetooth_audio@2.1.vendor \
223 vendor.qti.hardware.btconfigstore@1.0.vendor
224
225# Bluetooth Permissions
226PRODUCT_COPY_FILES += \
227 frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
228 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 +0530229
230
231# Boot
232PRODUCT_PACKAGES += \
233 android.hardware.boot@1.0-impl \
234 android.hardware.boot@1.0-impl.recovery \
235 android.hardware.boot@1.0-service \
236 bootctrl.msm8953 \
237 update_engine \
238 update_engine_client \
239 update_engine_sideload \
240 update_verifier
241
242
243# Boot animation
244TARGET_SCREEN_HEIGHT := 2160
245TARGET_SCREEN_WIDTH := 1080
246
247
248PRODUCT_COPY_FILES += \
249 vendor/fairphone/media/bootanimation/bootanimation.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation.zip
250
251
252# Camera
253
254
255# Component overrides
256# TODO: Check if this is required.
257#PRODUCT_COPY_FILES += \
258 $(FP_PATH)/configs/component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/component-overrides.xml
259
260
261# Display
262PRODUCT_PACKAGES += \
263 android.hardware.graphics.allocator@2.0-impl \
264 android.hardware.graphics.allocator@2.0-service \
265 android.hardware.graphics.composer@2.1-service \
266 android.hardware.graphics.mapper@2.0-impl-2.1 \
267 android.hardware.memtrack@1.0-impl \
268 android.hardware.memtrack@1.0-service \
269 gralloc.default \
270 gralloc.msm8953 \
271 hwcomposer.msm8953 \
272 memtrack.msm8953 \
273 libdisplayconfig \
274 libqdutils \
275 libqdMetaData \
276 libvulkan \
277 vendor.qti.hardware.display.composer@3.0
278
279
280# Vendor Display
281# Disable skip validate
282PRODUCT_PROPERTY_OVERRIDES += \
283 vendor.display.disable_skip_validate=1
284
285
286# Display Properties
287PRODUCT_AAPT_CONFIG := normal
288PRODUCT_AAPT_PREF_CONFIG := xxhdpi
289
290
291# DRM
292PRODUCT_PACKAGES += \
293 android.hardware.drm@1.3-service.clearkey
294
295
296# Enable vndk-sp Libraries
297PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true
298TARGET_USES_MKE2FS := true
299
300PRODUCT_PACKAGES += \
301 vndk_package
302
303
304# Encryption
305PRODUCT_PROPERTY_OVERRIDES += ro.crypto.allow_encrypt_override=true
306PRODUCT_PROPERTY_OVERRIDES += ro.crypto.volume.filenames_mode=aes-256-cts
307
308
309# FBE support
310PRODUCT_COPY_FILES += \
311 $(FP_PATH)/init.qti.qseecomd.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.qti.qseecomd.sh
312
313
Bharath1710e062021-08-20 11:30:47 +0530314# Feature flags and permissions
315PRODUCT_COPY_FILES += \
316 frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
317 frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
318 frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
319 frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
320 frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
321 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
322 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
323 frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \
324 frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-0.xml \
325 frameworks/native/data/etc/android.hardware.vulkan.version-1_0_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_0_3.xml \
326 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
327 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
328 frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \
329 frameworks/native/data/etc/android.software.device_id_attestation.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_id_attestation.xml \
330 frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \
331 frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml \
332 frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \
333 frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/android.software.verified_boot.xml \
334 frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
335
Bharath1dcb6512021-08-20 00:41:08 +0530336# Fingerprint
337PRODUCT_PACKAGES += \
338 android.hardware.biometrics.fingerprint@2.1 \
339 android.hardware.biometrics.fingerprint@2.1-service \
340 elan_device.rc \
341 fingerprint.default
342
343# Fingerprint files
344include $(FP_PATH)/elan_lib/fingerprint/elan_lib.mk
345
346# Fingerprint feature flag
347PRODUCT_COPY_FILES += \
348 frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
349
350
Bharath756d7dd2021-08-07 23:53:55 +0530351# Framework Detect
352PRODUCT_PACKAGES += \
353 libqti_vndfwk_detect \
354 libqti_vndfwk_detect.vendor \
355 libvndfwk_detect_jni.qti \
356 libvndfwk_detect_jni.qti.vendor \
357 vndservicemanager
358
359
360# HIDL
361PRODUCT_PACKAGES += \
362 android.hidl.base@1.0 \
363 libhidltransport \
364 libhidltransport.vendor \
365 libhwbinder \
366 libhwbinder.vendor
367
368
Bharath1710e062021-08-20 11:30:47 +0530369# GPS
370BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := default
371
372PRODUCT_PACKAGES += \
373 android.hardware.gnss@2.1-impl-qti:64 \
374 android.hardware.gnss@2.1-service-qti \
375 libbatching \
376 libgeofencing \
377 libgnss \
378 libjson \
379 libwifi-hal-ctrl \
380 libgps.utils
381
382PRODUCT_PACKAGES += \
383 flp.conf \
384 gps.conf
385
386# gps/location secuity configuration file
387PRODUCT_COPY_FILES += \
388 $(FP_PATH)/configs/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config
389
390# Permissions
391PRODUCT_COPY_FILES += \
392 frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml
393
394
Bharath756d7dd2021-08-07 23:53:55 +0530395# Health
396PRODUCT_PACKAGES += \
397 android.hardware.health@2.1-impl \
398 android.hardware.health@2.1-impl.recovery \
399 android.hardware.health@2.1-service
400
401# IMS
402PRODUCT_PACKAGES += \
403 ims-ext-common \
404 ims_ext_common.xml \
405 ConfURIDialer
406
407# IPACM
408PRODUCT_PACKAGES += \
409 ipacm \
410 IPACM_cfg.xml \
411 libipanat \
412 liboffloadhal \
413 libqsap_sdk
414
415# IRQ
416PRODUCT_COPY_FILES += \
417 $(FP_PATH)/configs/msm_irqbalance.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance.conf \
418 $(FP_PATH)/configs/msm_irqbalance_little_big.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance_little_big.conf
419
420
421# Kernel modules
422# Kernel modules install path
423KERNEL_MODULES_INSTALL := dlkm
424KERNEL_MODULES_OUT := out/target/product/$(PRODUCT_NAME)/$(KERNEL_MODULES_INSTALL)/lib/modules
425
426
427# LED packages
428PRODUCT_PACKAGES += \
429 android.hardware.light@2.0-impl \
430 android.hardware.light@2.0-service \
431 lights.msm8953
432
433
434# Media / StagefrightCodec 2.0
435PRODUCT_PROPERTY_OVERRIDES += debug.stagefright.omx_default_rank=0
436
Bharathe3615be2021-08-18 22:25:42 +0530437# Enable features in video HAL that can compile only on this platform
438TARGET_USES_MEDIA_EXTENSIONS := true
439
440
441# media_profiles and media_codecs xmls for msm8953
442PRODUCT_COPY_FILES += \
443 $(FP_PATH)/media/media_profiles_8953.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/media_profiles.xml \
444 $(FP_PATH)/media/media_profiles_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml \
445 $(FP_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
446 $(FP_PATH)/media/media_codecs_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor.xml \
447 $(FP_PATH)/media/media_codecs_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_8953.xml \
448 $(FP_PATH)/media/media_codecs_performance_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
449 $(FP_PATH)/media/media_codecs_performance_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_8953.xml \
450 $(FP_PATH)/media/media_profiles_8953_v1.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/media_profiles_8953_v1.xml \
451 $(FP_PATH)/media/media_profiles_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_8953_v1.xml \
452 $(FP_PATH)/media/media_codecs_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_v1.xml \
453 $(FP_PATH)/media/media_codecs_performance_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_v1.xml \
454 $(FP_PATH)/media/media_codecs_vendor_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_audio.xml \
455 device/qcom/common/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml
456
Bharath756d7dd2021-08-07 23:53:55 +0530457
458# NFC
Bharath1710e062021-08-20 11:30:47 +0530459PRODUCT_PACKAGES += \
460 NfcNci \
461 Tag \
462 com.android.nfc_extras \
463 com.nxp.nfc.nq \
464 com.nxp.nfc.nq.xml \
465 libnqnfc-nci \
466 libnqnfc_nci_jni \
467 nfc_nci.nqx.default.hw \
468 vendor.nxp.hardware.nfc@2.0-service
469
470# Permissions
471PRODUCT_COPY_FILES += \
472 frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
473 frameworks/native/data/etc/com.android.nfc_extras.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.android.nfc_extras.xml \
474 frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
475 frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
476 frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
477 frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \
478 frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
479 vendor/nxp/opensource/halimpl/halimpl/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci.conf \
480 vendor/nxp/opensource/halimpl/SN100x/halimpl/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci_SN100.conf
Bharath756d7dd2021-08-07 23:53:55 +0530481
482
483# OMX
484PRODUCT_PACKAGES += \
485 libavservices_minijail.vendor \
486 libc2dcolorconvert \
487 libOmxAacEnc \
488 libOmxAmrEnc \
489 libOmxCore \
490 libOmxEvrcEnc \
491 libOmxQcelp13Enc \
492 libOmxVdec \
493 libOmxVenc \
494 libqomx_core \
495 libaacwrapper \
496 libmm-omxcore \
497 libstagefrighthw \
498 libstagefright_softomx.vendor
499
500
501#
502# system prop for opengles version
503#
504# 196608 is decimal for 0x30000 to report major/minor versions as 3/0
505# 196609 is decimal for 0x30001 to report major/minor versions as 3/1
506# 196610 is decimal for 0x30002 to report major/minor versions as 3/2
507PRODUCT_PROPERTY_OVERRIDES += \
508 ro.opengles.version=196610
509
510
511# Perf
512PRODUCT_COPY_FILES += \
513 $(FP_PATH)/configs/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml
514
515
516# Power
517PRODUCT_PACKAGES += \
518 android.hardware.power@1.0-impl \
519 android.hardware.power@1.0-service \
520 power.qcom
521
522
Bharath756d7dd2021-08-07 23:53:55 +0530523# privapp-permissions whitelisting
524PRODUCT_PROPERTY_OVERRIDES += ro.control_privapp_permissions=enforce
525
526
527# Protobuf
528PRODUCT_PACKAGES += \
529 libprotobuf-cpp-full \
530 libprotobuf-cpp-full-vendorcompat \
531 libprotobuf-cpp-lite-vendorcompat
532
533
534# RIL properties
535PRODUCT_PROPERTY_OVERRIDES += rild.libpath=/vendor/lib64/libril-qc-qmi-1.so
536PRODUCT_PROPERTY_OVERRIDES += vendor.rild.libpath=/vendor/lib64/libril-qc-qmi-1.so
537#vendor prop to disable advanced network scanning
538PRODUCT_PROPERTY_OVERRIDES += \
539 persist.vendor.radio.enableadvancedscan=false
540
541
542# RenderScript
543PRODUCT_PACKAGES += \
544 android.hardware.renderscript@1.0-impl
545
546
547# SDCard
548# default is nosdcard, S/W button enabled in resource
549PRODUCT_CHARACTERISTICS := nosdcard
550
551
552# Seccomp
553PRODUCT_COPY_FILES += \
554 $(FP_PATH)/seccomp/mediacodec-seccomp.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy \
555 $(FP_PATH)/seccomp/mediaextractor-seccomp.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediaextractor.policy
556
557
Bharath1710e062021-08-20 11:30:47 +0530558# Secure Element
559PRODUCT_PACKAGES += \
560 android.hardware.secure_element@1.2
561
562
Bharath756d7dd2021-08-07 23:53:55 +0530563# System helper
564PRODUCT_PACKAGES += \
565 vendor.qti.hardware.systemhelper@1.0
566
567
568# Service tracker
569PRODUCT_PACKAGES += \
570 vendor.qti.hardware.servicetracker@1.2.vendor
571
572
Bharatha60665d2021-08-19 09:37:22 +0530573# Sensors
574PRODUCT_PACKAGES += \
575 sensors.FP3 \
576 android.hardware.sensors@1.0-impl \
577 android.hardware.sensors@1.0-service \
578 libsensorndkbridge
579
580# Sensor HAL conf file
581PRODUCT_COPY_FILES += \
582 $(FP_PATH)/configs/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf
583
584# Feature definition files for msm8953
585PRODUCT_COPY_FILES += \
586 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
587 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
588 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
589 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
590 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
591 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
592 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml
593
594
Bharath756d7dd2021-08-07 23:53:55 +0530595# Telephony Permissions
596
597
598# Thermal
599PRODUCT_PACKAGES += \
600 android.hardware.thermal@1.0-impl \
601 android.hardware.thermal@1.0-service
602
603
604# Tinyxml
605PRODUCT_PACKAGES += \
606 libtinyxml
607
608# USB
609PRODUCT_PACKAGES += \
610 android.hardware.usb@1.0-service
611
612-include vendor/qcom/opensource/usb/vendor_product.mk
613
614
615# Vendor move
616PRODUCT_VENDOR_MOVE_ENABLED := true
617
618
619# Vibrator
620PRODUCT_PACKAGES += \
621 android.hardware.vibrator@1.0-impl \
622 android.hardware.vibrator@1.0-service
623
624
Bharathed255712021-08-14 20:37:05 +0530625# WiFi
626# WLAN drivers
627PRODUCT_COPY_FILES += \
628 $(FP_PATH)/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_qcom_cfg.ini \
629 $(FP_PATH)/wifi/WCNSS_wlan_dictionary.dat:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_wlan_dictionary.dat \
630 $(FP_PATH)/wifi/WCNSS_qcom_wlan_nv.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/wlan/prima/WCNSS_qcom_wlan_nv.bin # From Android 10
631
632# Flag to check if wcnss_service is built from source
633TARGET_USE_WCNSS_HAL := false
634
635# If building from source then drop proprietary dependency
636ifeq ($(TARGET_USE_WCNSS_HAL),true)
637TARGET_USES_QCOM_WCNSS_QMI := false
638endif
639
640# WiFi HAL
641PRODUCT_PACKAGES += \
642 android.hardware.wifi@1.0-service
643
644# WiFi Components
645PRODUCT_PACKAGES += \
646 hostapd \
647 hostapd.accept \
648 hostapd.deny \
649 hostapd_cli \
650 hostapd_default.conf \
651 libnl \
652 libqsap_sdk \
653 libwcnss_qmi \
654 libwifi-hal-qcom \
655 libwpa_client \
656 p2p_supplicant_overlay.conf \
657 vendor.qti.hardware.wifi.supplicant@1.0.vendor \
658 wcnss_service \
659 wificond \
660 wpa_cli \
661 wpa_supplicant.conf \
662 wpa_supplicant \
663 wpa_supplicant_overlay.conf \
664 WifiOverlay \
665 TetheringConfigOverlay
666
667
Bharath756d7dd2021-08-07 23:53:55 +0530668# Call the proprietary setup
669# Call this in the end so that flags if required can be utilized.
670$(call inherit-product, device/fairphone/fp3-proprietary/device-vendor.mk)
671
672###################################################################################
673# This is the End of target.mk file.
674# Now, Pickup other split product.mk files:
675###################################################################################
Bharath1710e062021-08-20 11:30:47 +0530676$(call inherit-product-if-exists, hardware/qcom/gps/gps_vendor_product.mk)
Bharath756d7dd2021-08-07 23:53:55 +0530677$(call inherit-product-if-exists, vendor/qcom/opensource/commonsys-intf/display/config/display-product-system.mk)
678$(call inherit-product-if-exists, vendor/qcom/opensource/commonsys-intf/display/config/display-interfaces-product.mk)
679$(call inherit-product-if-exists, vendor/qcom/opensource/usb/vendor_product.mk)
680$(call inherit-product-if-exists, vendor/qcom/opensource/vibrator/vibrator-vendor-product.mk)
681###################################################################################