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