blob: 365ac79f2dc37445a7cf8e0d35932cc859e68c01 [file] [log] [blame]
David Ng716698c2018-03-23 12:30:23 -07001# Enable AVB 2.0
2BOARD_AVB_ENABLE := true
3
Vinayak Soni3e453c72018-12-10 00:35:58 -08004# define flag to determine the kernel
5TARGET_KERNEL_VERSION := $(shell ls kernel | grep "msm-*" | sed 's/msm-//')
6
7# Set TARGET_USES_NEW_ION for 4.14 and higher kernels
8ifeq ($(TARGET_KERNEL_VERSION),$(filter $(TARGET_KERNEL_VERSION),3.18 4.4 4.9))
9TARGET_USES_NEW_ION := false
10else
11TARGET_USES_NEW_ION := true
12endif
13
14KERNEL_DEFCONFIG := sdm845_defconfig
15ifeq ($(wildcard kernel/msm-$(TARGET_KERNEL_VERSION)/arch/arm64/configs/$(KERNEL_DEFCONFIG)),)
16KERNEL_DEFCONFIG := $(shell ls ./kernel/msm-$(TARGET_KERNEL_VERSION)/arch/arm64/configs/vendor | grep sm8..._defconfig)
17endif
18
19BUILD_BROKEN_PHONY_TARGETS := true
20BUILD_BROKEN_DUP_RULES := true
21TEMPORARY_DISABLE_PATH_RESTRICTIONS := true
22export TEMPORARY_DISABLE_PATH_RESTRICTIONS
23
Smita Ghoshaaafcc72018-11-30 16:12:53 -080024VENDOR_QTI_PLATFORM := msmnile
25VENDOR_QTI_DEVICE := qssi
26
27#QSSI configuration
28#Single system image project structure
29TARGET_USES_QSSI := true
30
31# Enable chain partition for system, to facilitate system-only OTA in Treble.
32BOARD_AVB_SYSTEM_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem
33BOARD_AVB_SYSTEM_ALGORITHM := SHA256_RSA2048
34BOARD_AVB_SYSTEM_ROLLBACK_INDEX := 0
Monika Singh3b2e6072019-01-11 17:42:32 +053035BOARD_AVB_SYSTEM_ROLLBACK_INDEX_LOCATION := 2
Smita Ghoshaaafcc72018-11-30 16:12:53 -080036
David Ng716698c2018-03-23 12:30:23 -070037TARGET_DEFINES_DALVIK_HEAP := true
padarshr1ebabf02018-12-14 19:20:10 +053038$(call inherit-product, device/qcom/qssi/common64.mk)
David Ng716698c2018-03-23 12:30:23 -070039
40#Inherit all except heap growth limit from phone-xhdpi-2048-dalvik-heap.mk
41PRODUCT_PROPERTY_OVERRIDES += \
Smita Ghoshaaafcc72018-11-30 16:12:53 -080042 dalvik.vm.heapstartsize=8m \
43 dalvik.vm.heapsize=512m \
44 dalvik.vm.heaptargetutilization=0.75 \
45 dalvik.vm.heapminfree=512k \
46 dalvik.vm.heapmaxfree=8m
David Ng716698c2018-03-23 12:30:23 -070047
David Ng716698c2018-03-23 12:30:23 -070048
Smita Ghoshaaafcc72018-11-30 16:12:53 -080049PRODUCT_NAME := $(VENDOR_QTI_DEVICE)
50PRODUCT_DEVICE := $(VENDOR_QTI_DEVICE)
51PRODUCT_BRAND := qti
52PRODUCT_MODEL := qssi system image for arm64
David Ng716698c2018-03-23 12:30:23 -070053
Smita Ghoshaaafcc72018-11-30 16:12:53 -080054#Initial bringup flags
55TARGET_USES_AOSP := false
56TARGET_USES_AOSP_FOR_AUDIO := false
57TARGET_USES_QCOM_BSP := false
58
59# RRO configuration
60TARGET_USES_RRO := true
61
62#Default vendor image configuration
63ifeq ($(ENABLE_VENDOR_IMAGE),)
64ENABLE_VENDOR_IMAGE := false
David Nga21ac422018-06-25 16:50:55 -070065endif
Smita Ghoshaaafcc72018-11-30 16:12:53 -080066ifeq ($(ENABLE_VENDOR_IMAGE), true)
67#Comment on msm8998 tree says that QTIC does not
68# yet support system/vendor split. So disabling it
69# for msmnile as well
70#TARGET_USES_QTIC := false
71#TARGET_USES_QTIC_EXTENSION := false
David Ng716698c2018-03-23 12:30:23 -070072
David Ng716698c2018-03-23 12:30:23 -070073endif
Smita Ghoshaaafcc72018-11-30 16:12:53 -080074
75#Enable llvm support for kernel
76KERNEL_LLVM_SUPPORT := true
77
78#Enable sd-llvm suppport for kernel
79KERNEL_SD_LLVM_SUPPORT := true
80
David Ng716698c2018-03-23 12:30:23 -070081
82# default is nosdcard, S/W button enabled in resource
83PRODUCT_CHARACTERISTICS := nosdcard
84
85BOARD_FRP_PARTITION_NAME := frp
86
David Ng716698c2018-03-23 12:30:23 -070087#Android EGL implementation
88PRODUCT_PACKAGES += libGLES_android
89
90-include $(QCPATH)/common/config/qtic-config.mk
Smita Ghoshaaafcc72018-11-30 16:12:53 -080091-include hardware/qcom/display/config/msmnile.mk
David Ng716698c2018-03-23 12:30:23 -070092
Smita Ghoshaaafcc72018-11-30 16:12:53 -080093
94PRODUCT_BOOT_JARS += tcmiface
95PRODUCT_BOOT_JARS += telephony-ext
David Ng716698c2018-03-23 12:30:23 -070096PRODUCT_PACKAGES += telephony-ext
Smita Ghoshaaafcc72018-11-30 16:12:53 -080097
98
David Ng716698c2018-03-23 12:30:23 -070099TARGET_ENABLE_QC_AV_ENHANCEMENTS := false
100
101TARGET_DISABLE_DASH := true
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800102TARGET_DISABLE_QTI_VPP := false
David Ng716698c2018-03-23 12:30:23 -0700103
104ifneq ($(TARGET_DISABLE_DASH), true)
105 PRODUCT_BOOT_JARS += qcmediaplayer
106endif
107
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800108ifneq ($(strip $(QCPATH)),)
109 PRODUCT_BOOT_JARS += WfdCommon
110endif
111
Vinayak Soni3e453c72018-12-10 00:35:58 -0800112#Project is missing on sdm845, comment it for now
113#ifneq ($(strip $(QCPATH)),)
114# PRODUCT_BOOT_JARS += libprotobuf-java_mls
115#endif
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800116
Vinayak Soni3e453c72018-12-10 00:35:58 -0800117# Video codec configuration files
118ifeq ($(TARGET_ENABLE_QC_AV_ENHANCEMENTS), true)
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800119PRODUCT_PROPERTY_OVERRIDES += \
120 media.settings.xml=/vendor/etc/media_profiles_vendor.xml
Vinayak Soni3e453c72018-12-10 00:35:58 -0800121endif #TARGET_ENABLE_QC_AV_ENHANCEMENTS
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800122
David Ng716698c2018-03-23 12:30:23 -0700123PRODUCT_PACKAGES += android.hardware.media.omx@1.0-impl
124
125# Audio configuration file
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800126-include $(TOPDIR)hardware/qcom/audio/configs/msmnile/msmnile.mk
127
128#Audio DLKM
129AUDIO_DLKM := audio_apr.ko
130AUDIO_DLKM += audio_wglink.ko
131AUDIO_DLKM += audio_q6_pdr.ko
132AUDIO_DLKM += audio_q6_notifier.ko
133AUDIO_DLKM += audio_adsp_loader.ko
134AUDIO_DLKM += audio_q6.ko
135AUDIO_DLKM += audio_usf.ko
136AUDIO_DLKM += audio_pinctrl_wcd.ko
137AUDIO_DLKM += audio_swr.ko
138AUDIO_DLKM += audio_wcd_core.ko
139AUDIO_DLKM += audio_swr_ctrl.ko
140AUDIO_DLKM += audio_wsa881x.ko
141AUDIO_DLKM += audio_platform.ko
142AUDIO_DLKM += audio_hdmi.ko
143AUDIO_DLKM += audio_stub.ko
144AUDIO_DLKM += audio_wcd9xxx.ko
145AUDIO_DLKM += audio_mbhc.ko
146AUDIO_DLKM += audio_wcd9360.ko
147AUDIO_DLKM += audio_wcd_spi.ko
148AUDIO_DLKM += audio_native.ko
149AUDIO_DLKM += audio_machine_msmnile.ko
150AUDIO_DLKM += audio_wcd934x.ko
151PRODUCT_PACKAGES += $(AUDIO_DLKM)
David Ng716698c2018-03-23 12:30:23 -0700152
153PRODUCT_PACKAGES += fs_config_files
154
David Ng716698c2018-03-23 12:30:23 -0700155#A/B related packages
156PRODUCT_PACKAGES += update_engine \
157 update_engine_client \
158 update_verifier \
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800159 bootctrl.msmnile \
David Ng716698c2018-03-23 12:30:23 -0700160 brillo_update_payload \
161 android.hardware.boot@1.0-impl \
162 android.hardware.boot@1.0-service
163
164#Boot control HAL test app
165PRODUCT_PACKAGES_DEBUG += bootctl
David Ng716698c2018-03-23 12:30:23 -0700166
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800167
168#Healthd packages
169PRODUCT_PACKAGES += \
170 android.hardware.health@1.0-impl \
171 android.hardware.health@1.0-convert \
172 android.hardware.health@1.0-service \
173 libhealthd.msm
174
175
176DEVICE_MANIFEST_FILE := device/qcom/msmnile/manifest.xml
177DEVICE_MATRIX_FILE := device/qcom/common/compatibility_matrix.xml
178DEVICE_FRAMEWORK_MANIFEST_FILE := device/qcom/msmnile/framework_manifest.xml
179DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE := device/qcom/msmnile/vendor_framework_compatibility_matrix.xml
180
David Ng716698c2018-03-23 12:30:23 -0700181
182#ANT+ stack
183PRODUCT_PACKAGES += \
184 AntHalService \
185 libantradio \
186 antradio_app \
187 libvolumelistener
188
189# Display/Graphics
190PRODUCT_PACKAGES += \
David Ng716698c2018-03-23 12:30:23 -0700191 android.hardware.configstore@1.0-service \
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800192 android.hardware.broadcastradio@1.0-impl
David Ng716698c2018-03-23 12:30:23 -0700193
David Ng716698c2018-03-23 12:30:23 -0700194# Camera configuration file. Shared by passthrough/binderized camera HAL
195PRODUCT_PACKAGES += camera.device@3.2-impl
196PRODUCT_PACKAGES += camera.device@1.0-impl
197PRODUCT_PACKAGES += android.hardware.camera.provider@2.4-impl
198# Enable binderized camera HAL
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800199PRODUCT_PACKAGES += android.hardware.camera.provider@2.4-service_64
David Ng716698c2018-03-23 12:30:23 -0700200
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800201# Vibrator
David Ng716698c2018-03-23 12:30:23 -0700202PRODUCT_PACKAGES += \
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800203 vendor.qti.hardware.vibrator@1.2-service
David Ng716698c2018-03-23 12:30:23 -0700204
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800205# Context hub HAL
David Ng716698c2018-03-23 12:30:23 -0700206PRODUCT_PACKAGES += \
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800207 android.hardware.contexthub@1.0-impl.generic \
208 android.hardware.contexthub@1.0-service
David Ng716698c2018-03-23 12:30:23 -0700209
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800210# system prop for Bluetooth SOC type
211PRODUCT_PROPERTY_OVERRIDES += \
212 vendor.qcom.bluetooth.soc=cherokee
213
214# system prop for enabling QFS (QTI Fingerprint Solution)
215PRODUCT_PROPERTY_OVERRIDES += \
216 persist.vendor.qfp=true
217
218
219# USB default HAL
220PRODUCT_PACKAGES += \
221 android.hardware.usb@1.0-service
222
223#PASR HAL and APP
224PRODUCT_PACKAGES += \
225 vendor.qti.power.pasrmanager@1.0-service \
226 vendor.qti.power.pasrmanager@1.0-impl \
227 pasrservice
David Ng716698c2018-03-23 12:30:23 -0700228
229# Kernel modules install path
230KERNEL_MODULES_INSTALL := dlkm
231KERNEL_MODULES_OUT := out/target/product/$(PRODUCT_NAME)/$(KERNEL_MODULES_INSTALL)/lib/modules
232
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800233
234#Exclude vibrator from InputManager
235PRODUCT_COPY_FILES += \
236 device/qcom/msmnile/excluded-input-devices.xml:system/etc/excluded-input-devices.xml
237
David Ng716698c2018-03-23 12:30:23 -0700238#Enable full treble flag
David Ng716698c2018-03-23 12:30:23 -0700239PRODUCT_FULL_TREBLE_OVERRIDE := true
240PRODUCT_VENDOR_MOVE_ENABLED := true
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800241PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true
David Ng716698c2018-03-23 12:30:23 -0700242
David Ng716698c2018-03-23 12:30:23 -0700243KMGK_USE_QTI_SERVICE := true
244
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800245#Enable KEYMASTER 4.0
246ENABLE_KM_4_0 := true
247#Should be enabled only on msmnile
248ENABLE_STRONGBOX_KM := true
249
250ifneq ($(strip $(TARGET_USES_RRO)),true)
David Ng716698c2018-03-23 12:30:23 -0700251DEVICE_PACKAGE_OVERLAYS += device/qcom/qssi/overlay
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800252endif
David Ng716698c2018-03-23 12:30:23 -0700253
David Ng716698c2018-03-23 12:30:23 -0700254
255ENABLE_VENDOR_RIL_SERVICE := true
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800256#Enable vndk-sp Libraries
257PRODUCT_PACKAGES += vndk_package
258
259PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE:=true
260
261#----------------------------------------------------------------------
262# wlan specific
263#----------------------------------------------------------------------
264include device/qcom/wlan/msmnile/wlan.mk
265
266TARGET_MOUNT_POINTS_SYMLINKS := false
267
268# propery "ro.vendor.build.security_patch" is checked for
269# # CTS compliance so need to make sure its set with following
270# # format "YYYY-MM-DD" on production devices.
271# #
272ifeq ($(ENABLE_VENDOR_IMAGE), true)
273 VENDOR_SECURITY_PATCH := 2018-06-05
274endif
275
276#Property to enable/disable scroll pre-obtain view
277PRODUCT_PROPERTY_OVERRIDES += \
278 ro.vendor.scroll.preobtain.enable := false
279
280TARGET_USES_MKE2FS := true
281
282PRODUCT_PROPERTY_OVERRIDES += \
283ro.crypto.volume.filenames_mode = "aes-256-cts" \
284ro.crypto.allow_encrypt_override = true
285
Vinayak Soni3e453c72018-12-10 00:35:58 -0800286TARGET_USES_QCOM_DISPLAY_BSP := true
287
288ifeq ($(TARGET_USES_NEW_ION),true)
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800289AUDIO_FEATURE_ENABLED_DLKM := true
Vinayak Soni3e453c72018-12-10 00:35:58 -0800290else
291AUDIO_FEATURE_ENABLED_DLKM := false
292endif
Smita Ghoshaaafcc72018-11-30 16:12:53 -0800293
294$(call inherit-product, build/make/target/product/product_launched_with_p.mk)
padarshr1ebabf02018-12-14 19:20:10 +0530295
296
297###################################################################################
298# This is the End of target.mk file.
299# Now, Pickup other split product.mk files:
300###################################################################################
301$(call inherit-product-if-exists, vendor/qcom/defs/product-defs/system/*.mk)
302###################################################################################