blob: 9e4b875ab9472838046a94f154884a574c9a21f4 [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.
Bharath6a7439e2022-02-21 17:35:49 +053036PRODUCT_BUILD_PROP_OVERRIDES += PRODUCT_MODEL=FP3 PRODUCT_NAME=FP3 TARGET_PRODUCT=FP3
Bharath756d7dd2021-08-07 23:53:55 +053037
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
Borjan Tchakaloff17a5b5f2018-05-11 11:35:06 +020044# Define the build number based on the product flavour and on the build manifest
45# revision
46ifneq (,$(strip $(PRODUCT_FLAVOR)))
47 _BUILD_MANIFEST_REV := $(shell (git -C $(TOPDIR).repo/manifests rev-parse --short=8 HEAD))
48 BUILD_NUMBER := $(PRODUCT_FLAVOR)-$(_BUILD_MANIFEST_REV)
49 HAS_BUILD_NUMBER := true
50else
51 $(error PRODUCT_FLAVOR must be defined)
52endif
53$(warning Build defined as $(BUILD_ID) ($(BUILD_NUMBER)))
54
Bharath756d7dd2021-08-07 23:53:55 +053055
56# We don't have the calibration data as this sort of
57# data can only be generated at the factory so don't generate persist.img
58FP3_SKIP_PERSIST_IMG := true
59
Bharath80ba1872021-08-21 11:53:57 +053060
61# Operator specific overlays
62DEVICE_PACKAGE_OVERLAYS += \
63 $(LOCAL_PATH)/overlay-operators
64
Bharath756d7dd2021-08-07 23:53:55 +053065# Overlays
66DEVICE_PACKAGE_OVERLAYS += \
67 $(LOCAL_PATH)/overlay
68
69
70# A/B related defines
71AB_OTA_UPDATER := true
72AB_OTA_PARTITIONS += \
73 boot \
74 dtbo \
75 system \
76 vbmeta \
77 vendor
78
79
80AB_OTA_POSTINSTALL_CONFIG += \
81 RUN_POSTINSTALL_vendor=true \
82 POSTINSTALL_PATH_vendor=bin/checkpoint_gc \
83 FILESYSTEM_TYPE_vendor=ext4 \
84 POSTINSTALL_OPTIONAL_vendor=true
85
86PRODUCT_PACKAGES += \
87 checkpoint_gc \
88 update_engine_sideload
89
90
Bharath2307d3b2022-01-06 22:23:25 +053091# APN
92PRODUCT_COPY_FILES += \
93 $(LOCAL_PATH)/apns-conf.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/apns-conf.xml
94
95
Bharath756d7dd2021-08-07 23:53:55 +053096# AVB
97BOARD_AVB_ENABLE := true
98
99
100# Additional native libraries
101PRODUCT_COPY_FILES += \
102 $(FP_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt
103
104
105# Atrace HAL
106PRODUCT_PACKAGES += \
107 android.hardware.atrace@1.0-service
108
109
110# Audio
111# AV Enhancement
112TARGET_ENABLE_QC_AV_ENHANCEMENTS := true
113
114
115PRODUCT_PACKAGES += \
116 android.hardware.audio@6.0 \
117 android.hardware.audio.common@6.0 \
118 android.hardware.audio.common@6.0-util \
119 android.hardware.audio@6.0-impl:32 \
120 android.hardware.audio.effect@6.0 \
121 android.hardware.audio.effect@6.0-impl:32 \
122 android.hardware.audio.service \
123 android.hardware.soundtrigger@2.1-impl \
124 audio.a2dp.default \
125 audio.primary.msm8953 \
126 audio.r_submix.default \
127 audio.usb.default \
128 libaacwrapper \
129 libaudio-resampler \
130 libautohal \
131 libqcompostprocbundle \
132 libqcomvisualizer \
133 libqcomvoiceprocessing \
134 libvolumelistener \
135 tinymix
136
137
138AUDIO_HAL_PATH := vendor/qcom/opensource/audio-hal/primary-hal
139
140# Audio files
141PRODUCT_COPY_FILES += \
Bharath756d7dd2021-08-07 23:53:55 +0530142 $(AUDIO_HAL_PATH)/configs/msm8953/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
143 $(AUDIO_HAL_PATH)/configs/msm8953/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
144 $(AUDIO_HAL_PATH)/configs/msm8953/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
145 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_intcodec.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_intcodec.xml \
146 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_sku3_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_sku3_tasha.xml \
147 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_sku4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_sku4.xml \
148 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_tasha.xml \
149 $(AUDIO_HAL_PATH)/configs/msm8953/audio_platform_info_tashalite.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info_tashalite.xml \
150 $(AUDIO_HAL_PATH)/configs/msm8953/audio_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy.conf \
151 $(AUDIO_HAL_PATH)/configs/msm8953/audio_tuning_mixer.txt:$(TARGET_COPY_OUT_VENDOR)/etc/audio_tuning_mixer.txt \
152 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
153 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_mtp.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_mtp.xml \
154 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_sku3_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_sku3_tasha.xml \
155 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_sku4.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_sku4.xml \
156 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_tasha.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tasha.xml \
157 $(AUDIO_HAL_PATH)/configs/msm8953/mixer_paths_tashalite.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths_tashalite.xml \
158 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths.xml \
159 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9306.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9306.xml \
160 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9330.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9330.xml \
161 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_mixer_paths_wcd9335.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_mixer_paths_wcd9335.xml \
162 $(AUDIO_HAL_PATH)/configs/msm8953/sound_trigger_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sound_trigger_platform_info.xml
163
164
165# Audio config files
166PRODUCT_COPY_FILES += \
167 frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \
168 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
169 frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration.xml \
170 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
171 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
172 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
173
174# Custom config files
175PRODUCT_COPY_FILES += \
176 $(FP_PATH)/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml
177
178
179# Audio firmware files
180PRODUCT_COPY_FILES += \
181 $(FP_PATH)/aw/aw8898_cfg.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/aw8898_cfg.bin \
182 $(FP_PATH)/tas2557_fw/OBO_0617_music.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/tas2557_uCDSP.bin \
183 $(FP_PATH)/tas2557_fw/tas2557evm_OBO_0617.ftcfg:$(TARGET_COPY_OUT_VENDOR)/firmware/tas2557evm_aacspk_a.ftcfg
184
185
186# Audio Specific device overlays
187DEVICE_PACKAGE_OVERLAYS += $(AUDIO_HAL_PATH)/configs/common/overlay
188
189
190# Audio Specific properties
191# Properties
192-include $(LOCAL_PATH)/audio_properties.mk
193
194
195# Audio Kernel modules
196AUDIO_DLKM := audio_apr.ko
197AUDIO_DLKM += audio_q6_notifier.ko
198AUDIO_DLKM += audio_adsp_loader.ko
199AUDIO_DLKM += audio_q6.ko
200AUDIO_DLKM += audio_usf.ko
201AUDIO_DLKM += audio_pinctrl_wcd.ko
202AUDIO_DLKM += audio_swr.ko
203AUDIO_DLKM += audio_wcd_core.ko
204AUDIO_DLKM += audio_swr_ctrl.ko
205AUDIO_DLKM += audio_wsa881x.ko
206AUDIO_DLKM += audio_wsa881x_analog.ko
207AUDIO_DLKM += audio_platform.ko
208AUDIO_DLKM += audio_cpe_lsm.ko
209AUDIO_DLKM += audio_hdmi.ko
210AUDIO_DLKM += audio_stub.ko
211AUDIO_DLKM += audio_wcd9xxx.ko
212AUDIO_DLKM += audio_mbhc.ko
213AUDIO_DLKM += audio_wcd9335.ko
214AUDIO_DLKM += audio_wcd_cpe.ko
215AUDIO_DLKM += audio_digital_cdc.ko
216AUDIO_DLKM += audio_analog_cdc.ko
217AUDIO_DLKM += audio_native.ko
218AUDIO_DLKM += audio_machine_sdm450.ko
219AUDIO_DLKM += audio_machine_ext_sdm450.ko
220PRODUCT_PACKAGES += $(AUDIO_DLKM)
221
222
Bharath9cdcce22021-12-08 15:43:43 +0530223# Automation/ATS
224PRODUCT_PACKAGES += \
225 automation_setup \
226 automation_adb_setup
227
228
Bharathfe661fb2021-08-16 18:56:32 +0530229# ANT
230PRODUCT_PACKAGES += \
231 AntHalService \
232 antradio_app \
233 com.dsi.ant@1.0 \
234 libantradio
235
Bharath756d7dd2021-08-07 23:53:55 +0530236# Bluetooth
Bharathfe661fb2021-08-16 18:56:32 +0530237PRODUCT_PACKAGES += \
238 libbt-vendor \
239 audio.bluetooth.default \
240 android.hardware.bluetooth.audio@2.0-impl \
241 android.hardware.bluetooth@1.0 \
242 vendor.qti.hardware.bluetooth_audio@2.0 \
243 vendor.qti.hardware.bluetooth_audio@2.1.vendor \
244 vendor.qti.hardware.btconfigstore@1.0.vendor
245
246# Bluetooth Permissions
247PRODUCT_COPY_FILES += \
248 frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
249 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 +0530250
251
252# Boot
253PRODUCT_PACKAGES += \
254 android.hardware.boot@1.0-impl \
255 android.hardware.boot@1.0-impl.recovery \
256 android.hardware.boot@1.0-service \
257 bootctrl.msm8953 \
258 update_engine \
259 update_engine_client \
260 update_engine_sideload \
261 update_verifier
262
263
264# Boot animation
265TARGET_SCREEN_HEIGHT := 2160
266TARGET_SCREEN_WIDTH := 1080
267
268
269PRODUCT_COPY_FILES += \
270 vendor/fairphone/media/bootanimation/bootanimation.zip:$(TARGET_COPY_OUT_PRODUCT)/media/bootanimation.zip
271
272
273# Camera
Bharathcbfb0a92021-08-19 21:13:50 +0530274# Flag to check if Camera HAL binaries are built from source
275TARGET_USE_CAMERA_HAL := false
276
277PRODUCT_PACKAGES += \
278 android.frameworks.displayservice@1.0.vendor \
279 android.hidl.base@1.0.vendor \
280 android.hardware.camera.device@3.5 \
281 android.hardware.camera.provider@2.4 \
282 android.hardware.camera.provider@2.4-external \
283 android.hardware.camera.provider@2.4-impl \
284 android.hardware.camera.provider@2.4-legacy \
285 android.hardware.camera.provider@2.4-service \
286 android.hardware.camera.provider@2.6 \
287 camera.device@1.0-impl \
288 camera.device@3.5-impl \
289 camera.device@3.6-external-impl \
290 camera.msm8953 \
291 cameraconfig.txt \
292 libcamera2ndk_vendor \
293 libhal_dbg \
294 libjni_burstpmk \
295 libjni_imageutil \
296 libjni_snapcammosaic \
297 libjni_snapcamtinyplanet \
298 libmm-qcamera \
299 libmmcamera_interface \
300 libmmjpeg_interface \
301 libmmlib2d_interface \
302 libqomx_core \
303 libxml2 \
304 mm-qcamera-app \
305 vendor.qti.hardware.camera.device@1.0 \
306 vendor.qti.hardware.camera.device@1.0.vendor
307
308# Fairphone Camera
309PRODUCT_PACKAGES += \
310 FairphoneCamera
311
312# Arcsoft camera libraries
313PRODUCT_PACKAGES += \
314 libarcimageprocess \
315 libarcsoft_aiscenedetection \
316 libarcsoft_hdr_detection \
317 libarcsoft_high_dynamic_range \
318 libarcsoft_low_light_hdr \
319 libarcsoft_low_light_shot \
320 libarcsoft_object_tracking \
321 libarcsoft_panorama_burstcapture \
322 libarcsoft_singlecam_bokeh \
323 libarcsoft_videoautozoom \
324 libarcsoft_videostabs \
325 libmpbase \
326 libmpbase.vendor
327
328# Feature flags for camera
329PRODUCT_COPY_FILES += \
330 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
331 frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
332 frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
333 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 +0530334
335
336# Component overrides
337# TODO: Check if this is required.
338#PRODUCT_COPY_FILES += \
339 $(FP_PATH)/configs/component-overrides.xml:$(TARGET_COPY_OUT_VENDOR)/etc/sysconfig/component-overrides.xml
340
341
342# Display
343PRODUCT_PACKAGES += \
344 android.hardware.graphics.allocator@2.0-impl \
345 android.hardware.graphics.allocator@2.0-service \
346 android.hardware.graphics.composer@2.1-service \
347 android.hardware.graphics.mapper@2.0-impl-2.1 \
348 android.hardware.memtrack@1.0-impl \
349 android.hardware.memtrack@1.0-service \
350 gralloc.default \
351 gralloc.msm8953 \
352 hwcomposer.msm8953 \
353 memtrack.msm8953 \
354 libdisplayconfig \
355 libqdutils \
356 libqdMetaData \
357 libvulkan \
358 vendor.qti.hardware.display.composer@3.0
359
360
361# Vendor Display
362# Disable skip validate
363PRODUCT_PROPERTY_OVERRIDES += \
364 vendor.display.disable_skip_validate=1
365
366
367# Display Properties
368PRODUCT_AAPT_CONFIG := normal
369PRODUCT_AAPT_PREF_CONFIG := xxhdpi
370
371
372# DRM
373PRODUCT_PACKAGES += \
374 android.hardware.drm@1.3-service.clearkey
375
376
Pradeep Chenthatib4c3c102021-10-19 20:07:52 +0530377# Elabel
378PRODUCT_PACKAGES += \
379 eLabel.html.gz \
380 eLabel1.png \
381 eLabel2.png \
382 FAIRPHONE.html.gz \
383 FAIRPHONE.png
384
385
Bharath756d7dd2021-08-07 23:53:55 +0530386# Enable vndk-sp Libraries
387PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true
388TARGET_USES_MKE2FS := true
389
390PRODUCT_PACKAGES += \
391 vndk_package
392
393
394# Encryption
395PRODUCT_PROPERTY_OVERRIDES += ro.crypto.allow_encrypt_override=true
396PRODUCT_PROPERTY_OVERRIDES += ro.crypto.volume.filenames_mode=aes-256-cts
397
398
399# FBE support
400PRODUCT_COPY_FILES += \
401 $(FP_PATH)/init.qti.qseecomd.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.qti.qseecomd.sh
402
403
Bharath1710e062021-08-20 11:30:47 +0530404# Feature flags and permissions
405PRODUCT_COPY_FILES += \
406 frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
407 frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
408 frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
409 frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
410 frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
411 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
412 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
413 frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \
414 frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-0.xml \
415 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 \
416 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
417 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
418 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 +0530419 frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \
420 frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml \
421 frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \
422 frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/android.software.verified_boot.xml \
423 frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
424
Bharath1dcb6512021-08-20 00:41:08 +0530425# Fingerprint
426PRODUCT_PACKAGES += \
427 android.hardware.biometrics.fingerprint@2.1 \
428 android.hardware.biometrics.fingerprint@2.1-service \
429 elan_device.rc \
430 fingerprint.default
431
432# Fingerprint files
433include $(FP_PATH)/elan_lib/fingerprint/elan_lib.mk
434
435# Fingerprint feature flag
436PRODUCT_COPY_FILES += \
437 frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml
438
439
Bharath756d7dd2021-08-07 23:53:55 +0530440# Framework Detect
441PRODUCT_PACKAGES += \
442 libqti_vndfwk_detect \
443 libqti_vndfwk_detect.vendor \
444 libvndfwk_detect_jni.qti \
445 libvndfwk_detect_jni.qti.vendor \
446 vndservicemanager
447
448
449# HIDL
450PRODUCT_PACKAGES += \
451 android.hidl.base@1.0 \
452 libhidltransport \
453 libhidltransport.vendor \
454 libhwbinder \
455 libhwbinder.vendor
456
457
Bharath1710e062021-08-20 11:30:47 +0530458# GPS
459BOARD_VENDOR_QCOM_GPS_LOC_API_HARDWARE := default
460
461PRODUCT_PACKAGES += \
462 android.hardware.gnss@2.1-impl-qti:64 \
463 android.hardware.gnss@2.1-service-qti \
464 libbatching \
465 libgeofencing \
466 libgnss \
467 libjson \
468 libwifi-hal-ctrl \
469 libgps.utils
470
471PRODUCT_PACKAGES += \
472 flp.conf \
473 gps.conf
474
475# gps/location secuity configuration file
476PRODUCT_COPY_FILES += \
477 $(FP_PATH)/configs/sec_config:$(TARGET_COPY_OUT_VENDOR)/etc/sec_config
478
479# Permissions
480PRODUCT_COPY_FILES += \
481 frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml
482
483
Bharath756d7dd2021-08-07 23:53:55 +0530484# Health
485PRODUCT_PACKAGES += \
486 android.hardware.health@2.1-impl \
487 android.hardware.health@2.1-impl.recovery \
488 android.hardware.health@2.1-service
489
490# IMS
491PRODUCT_PACKAGES += \
492 ims-ext-common \
493 ims_ext_common.xml \
494 ConfURIDialer
495
496# IPACM
497PRODUCT_PACKAGES += \
498 ipacm \
499 IPACM_cfg.xml \
500 libipanat \
501 liboffloadhal \
502 libqsap_sdk
503
504# IRQ
505PRODUCT_COPY_FILES += \
506 $(FP_PATH)/configs/msm_irqbalance.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance.conf \
507 $(FP_PATH)/configs/msm_irqbalance_little_big.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance_little_big.conf
508
509
510# Kernel modules
511# Kernel modules install path
512KERNEL_MODULES_INSTALL := dlkm
513KERNEL_MODULES_OUT := out/target/product/$(PRODUCT_NAME)/$(KERNEL_MODULES_INSTALL)/lib/modules
514
515
516# LED packages
517PRODUCT_PACKAGES += \
518 android.hardware.light@2.0-impl \
519 android.hardware.light@2.0-service \
520 lights.msm8953
521
522
523# Media / StagefrightCodec 2.0
524PRODUCT_PROPERTY_OVERRIDES += debug.stagefright.omx_default_rank=0
525
Bharathe3615be2021-08-18 22:25:42 +0530526# Enable features in video HAL that can compile only on this platform
527TARGET_USES_MEDIA_EXTENSIONS := true
528
529
530# media_profiles and media_codecs xmls for msm8953
531PRODUCT_COPY_FILES += \
532 $(FP_PATH)/media/media_profiles_8953.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/media_profiles.xml \
533 $(FP_PATH)/media/media_profiles_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml \
534 $(FP_PATH)/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
535 $(FP_PATH)/media/media_codecs_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor.xml \
536 $(FP_PATH)/media/media_codecs_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_8953.xml \
537 $(FP_PATH)/media/media_codecs_performance_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
538 $(FP_PATH)/media/media_codecs_performance_8953.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_8953.xml \
539 $(FP_PATH)/media/media_profiles_8953_v1.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/media_profiles_8953_v1.xml \
540 $(FP_PATH)/media/media_profiles_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_8953_v1.xml \
541 $(FP_PATH)/media/media_codecs_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_v1.xml \
542 $(FP_PATH)/media/media_codecs_performance_8953_v1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance_v1.xml \
543 $(FP_PATH)/media/media_codecs_vendor_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_vendor_audio.xml \
544 device/qcom/common/media/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml
545
Bharath756d7dd2021-08-07 23:53:55 +0530546
547# NFC
Bharath1710e062021-08-20 11:30:47 +0530548PRODUCT_PACKAGES += \
549 NfcNci \
550 Tag \
551 com.android.nfc_extras \
552 com.nxp.nfc.nq \
553 com.nxp.nfc.nq.xml \
554 libnqnfc-nci \
555 libnqnfc_nci_jni \
556 nfc_nci.nqx.default.hw \
557 vendor.nxp.hardware.nfc@2.0-service
558
559# Permissions
560PRODUCT_COPY_FILES += \
561 frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
562 frameworks/native/data/etc/com.android.nfc_extras.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.android.nfc_extras.xml \
563 frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
564 frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
565 frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
566 frameworks/native/data/etc/android.hardware.nfc.ese.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.ese.xml \
567 frameworks/native/data/etc/android.hardware.nfc.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.uicc.xml \
568 vendor/nxp/opensource/halimpl/halimpl/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci.conf \
569 vendor/nxp/opensource/halimpl/SN100x/halimpl/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci_SN100.conf
Bharath756d7dd2021-08-07 23:53:55 +0530570
571
572# OMX
573PRODUCT_PACKAGES += \
574 libavservices_minijail.vendor \
575 libc2dcolorconvert \
576 libOmxAacEnc \
577 libOmxAmrEnc \
578 libOmxCore \
579 libOmxEvrcEnc \
580 libOmxQcelp13Enc \
581 libOmxVdec \
582 libOmxVenc \
583 libqomx_core \
584 libaacwrapper \
585 libmm-omxcore \
586 libstagefrighthw \
587 libstagefright_softomx.vendor
588
589
590#
591# system prop for opengles version
592#
593# 196608 is decimal for 0x30000 to report major/minor versions as 3/0
594# 196609 is decimal for 0x30001 to report major/minor versions as 3/1
595# 196610 is decimal for 0x30002 to report major/minor versions as 3/2
596PRODUCT_PROPERTY_OVERRIDES += \
597 ro.opengles.version=196610
598
599
600# Perf
601PRODUCT_COPY_FILES += \
602 $(FP_PATH)/configs/powerhint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerhint.xml
603
604
605# Power
606PRODUCT_PACKAGES += \
607 android.hardware.power@1.0-impl \
608 android.hardware.power@1.0-service \
609 power.qcom
610
611
Bharath756d7dd2021-08-07 23:53:55 +0530612# privapp-permissions whitelisting
613PRODUCT_PROPERTY_OVERRIDES += ro.control_privapp_permissions=enforce
614
615
616# Protobuf
617PRODUCT_PACKAGES += \
618 libprotobuf-cpp-full \
619 libprotobuf-cpp-full-vendorcompat \
620 libprotobuf-cpp-lite-vendorcompat
621
622
623# RIL properties
624PRODUCT_PROPERTY_OVERRIDES += rild.libpath=/vendor/lib64/libril-qc-qmi-1.so
625PRODUCT_PROPERTY_OVERRIDES += vendor.rild.libpath=/vendor/lib64/libril-qc-qmi-1.so
626#vendor prop to disable advanced network scanning
627PRODUCT_PROPERTY_OVERRIDES += \
628 persist.vendor.radio.enableadvancedscan=false
629
630
631# RenderScript
632PRODUCT_PACKAGES += \
633 android.hardware.renderscript@1.0-impl
634
635
636# SDCard
637# default is nosdcard, S/W button enabled in resource
638PRODUCT_CHARACTERISTICS := nosdcard
639
640
641# Seccomp
642PRODUCT_COPY_FILES += \
643 $(FP_PATH)/seccomp/mediacodec-seccomp.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy \
644 $(FP_PATH)/seccomp/mediaextractor-seccomp.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediaextractor.policy
645
646
Bharath1710e062021-08-20 11:30:47 +0530647# Secure Element
648PRODUCT_PACKAGES += \
649 android.hardware.secure_element@1.2
650
651
Bharath756d7dd2021-08-07 23:53:55 +0530652# System helper
653PRODUCT_PACKAGES += \
654 vendor.qti.hardware.systemhelper@1.0
655
656
657# Service tracker
658PRODUCT_PACKAGES += \
659 vendor.qti.hardware.servicetracker@1.2.vendor
660
661
Bharatha60665d2021-08-19 09:37:22 +0530662# Sensors
663PRODUCT_PACKAGES += \
664 sensors.FP3 \
665 android.hardware.sensors@1.0-impl \
666 android.hardware.sensors@1.0-service \
667 libsensorndkbridge
668
669# Sensor HAL conf file
670PRODUCT_COPY_FILES += \
671 $(FP_PATH)/configs/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf
672
673# Feature definition files for msm8953
674PRODUCT_COPY_FILES += \
675 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
676 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
677 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
678 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
679 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
680 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
681 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml
682
683
Bharath756d7dd2021-08-07 23:53:55 +0530684# Telephony Permissions
685
686
687# Thermal
688PRODUCT_PACKAGES += \
689 android.hardware.thermal@1.0-impl \
690 android.hardware.thermal@1.0-service
691
692
693# Tinyxml
694PRODUCT_PACKAGES += \
695 libtinyxml
696
697# USB
698PRODUCT_PACKAGES += \
699 android.hardware.usb@1.0-service
700
701-include vendor/qcom/opensource/usb/vendor_product.mk
702
703
704# Vendor move
705PRODUCT_VENDOR_MOVE_ENABLED := true
706
707
708# Vibrator
709PRODUCT_PACKAGES += \
710 android.hardware.vibrator@1.0-impl \
711 android.hardware.vibrator@1.0-service
712
713
Bharathed255712021-08-14 20:37:05 +0530714# WiFi
715# WLAN drivers
716PRODUCT_COPY_FILES += \
717 $(FP_PATH)/wifi/WCNSS_qcom_cfg.ini:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_qcom_cfg.ini \
718 $(FP_PATH)/wifi/WCNSS_wlan_dictionary.dat:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/WCNSS_wlan_dictionary.dat \
719 $(FP_PATH)/wifi/WCNSS_qcom_wlan_nv.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/wlan/prima/WCNSS_qcom_wlan_nv.bin # From Android 10
720
721# Flag to check if wcnss_service is built from source
722TARGET_USE_WCNSS_HAL := false
723
724# If building from source then drop proprietary dependency
725ifeq ($(TARGET_USE_WCNSS_HAL),true)
726TARGET_USES_QCOM_WCNSS_QMI := false
727endif
728
729# WiFi HAL
730PRODUCT_PACKAGES += \
731 android.hardware.wifi@1.0-service
732
733# WiFi Components
734PRODUCT_PACKAGES += \
735 hostapd \
736 hostapd.accept \
737 hostapd.deny \
738 hostapd_cli \
739 hostapd_default.conf \
740 libnl \
741 libqsap_sdk \
742 libwcnss_qmi \
743 libwifi-hal-qcom \
744 libwpa_client \
745 p2p_supplicant_overlay.conf \
746 vendor.qti.hardware.wifi.supplicant@1.0.vendor \
747 wcnss_service \
748 wificond \
749 wpa_cli \
750 wpa_supplicant.conf \
751 wpa_supplicant \
752 wpa_supplicant_overlay.conf \
753 WifiOverlay \
754 TetheringConfigOverlay
755
756
Bharath756d7dd2021-08-07 23:53:55 +0530757# Call the proprietary setup
758# Call this in the end so that flags if required can be utilized.
759$(call inherit-product, device/fairphone/fp3-proprietary/device-vendor.mk)
760
761###################################################################################
762# This is the End of target.mk file.
763# Now, Pickup other split product.mk files:
764###################################################################################
Bharath1710e062021-08-20 11:30:47 +0530765$(call inherit-product-if-exists, hardware/qcom/gps/gps_vendor_product.mk)
Bharath756d7dd2021-08-07 23:53:55 +0530766$(call inherit-product-if-exists, vendor/qcom/opensource/commonsys-intf/display/config/display-product-system.mk)
767$(call inherit-product-if-exists, vendor/qcom/opensource/commonsys-intf/display/config/display-interfaces-product.mk)
768$(call inherit-product-if-exists, vendor/qcom/opensource/usb/vendor_product.mk)
769$(call inherit-product-if-exists, vendor/qcom/opensource/vibrator/vibrator-vendor-product.mk)
770###################################################################################