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