blob: ab24844ba6fbc176e224c376c1936216c24910cd [file] [log] [blame]
Patrick Tjin19134d02016-01-27 14:56:57 -08001#
2# Copyright (C) 2016 The Android Open-Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17# This file includes all definitions that apply to ALL marlin and sailfish devices
18#
19# Everything in this directory will become public
20
Patrick Tjin19134d02016-01-27 14:56:57 -080021ifeq ($(TARGET_PREBUILT_KERNEL),)
Patrick Tjina148bca2016-01-29 15:56:38 -080022 LOCAL_KERNEL := device/google/marlin-kernel/Image.gz-dtb
Patrick Tjin19134d02016-01-27 14:56:57 -080023else
24LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
25endif
Patrick Tjin19134d02016-01-27 14:56:57 -080026
Gustav Sennton608268b2016-05-27 16:18:38 +010027PRODUCT_SHIPPING_API_LEVEL := 24
28
Patrick Tjin19134d02016-01-27 14:56:57 -080029PRODUCT_COPY_FILES += \
30 $(LOCAL_KERNEL):kernel
31
Ed Tam911a5f32016-05-09 23:08:28 -070032DEVICE_PACKAGE_OVERLAYS += device/google/marlin/overlay
Patrick Tjin19134d02016-01-27 14:56:57 -080033
Patrick Tjinceb7fc42016-02-04 13:19:39 -080034# Input device files
35PRODUCT_COPY_FILES += \
36 device/google/marlin/gpio-keys.kl:system/usr/keylayout/gpio-keys.kl \
Jim Miller19279e32016-05-17 16:53:55 -070037 device/google/marlin/qpnp_pon.kl:system/usr/keylayout/qpnp_pon.kl \
Jim Miller85621c42016-07-13 19:41:45 -070038 device/google/marlin/uinput-fpc.kl:system/usr/keylayout/uinput-fpc.kl \
Michael Wright7d0280c2016-08-08 21:58:53 +010039 device/google/marlin/uinput-fpc.idc:system/usr/idc/uinput-fpc.idc \
40 device/google/marlin/synaptics_dsxv26.idc:system/usr/idc/synaptics_dsxv26.idc
Patrick Tjin19134d02016-01-27 14:56:57 -080041
42# copy customized media_profiles and media_codecs xmls for msm8996
Zhijun Hec3a36392016-03-21 11:53:45 -070043PRODUCT_COPY_FILES += device/google/marlin/media_profiles.xml:system/etc/media_profiles.xml \
Tim Murrayfd0fb0f2016-07-26 16:08:45 -070044 device/google/marlin/media_codecs.xml:system/etc/media_codecs.xml \
45 device/google/marlin/media_codecs_performance.xml:system/etc/media_codecs_performance.xml
Patrick Tjin19134d02016-01-27 14:56:57 -080046
47# Override heap growth limit due to high display density on device
48PRODUCT_PROPERTY_OVERRIDES += \
Stuart Scott8c8e3e62016-03-30 11:38:43 -070049 dalvik.vm.heapgrowthlimit=256m \
50 ro.telephony.default_cdma_sub=0
51
Patrick Tjin19134d02016-01-27 14:56:57 -080052$(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
Patrick Tjina148bca2016-01-29 15:56:38 -080053$(call inherit-product, device/google/marlin/common/common64.mk)
Patrick Tjin19134d02016-01-27 14:56:57 -080054
Patrick Tjin19134d02016-01-27 14:56:57 -080055#Android EGL implementation
56PRODUCT_PACKAGES += libGLES_android
57
Marvin Tsai2e06f082016-04-08 20:54:47 +080058# graphics
59PRODUCT_PROPERTY_OVERRIDES += \
Steve Pfetsch2971c262016-07-11 12:26:23 -070060 ro.opengles.version=196610
Marvin Tsai2e06f082016-04-08 20:54:47 +080061
John Reck3f961682016-06-07 15:15:35 -070062# HWUI common settings
63PRODUCT_PROPERTY_OVERRIDES += \
64 ro.hwui.gradient_cache_size=1 \
65 ro.hwui.drop_shadow_cache_size=6 \
66 ro.hwui.r_buffer_cache_size=8 \
67 ro.hwui.texture_cache_flushrate=0.4 \
68 ro.hwui.text_small_cache_width=1024 \
69 ro.hwui.text_small_cache_height=1024 \
70 ro.hwui.text_large_cache_width=2048 \
71 ro.hwui.text_large_cache_height=1024
72
Eino-Ville Talvala2a42ac52016-04-20 13:17:26 -070073# For android_filesystem_config.h
Daniel Rosenbergd065fcc2016-04-22 21:04:34 -070074PRODUCT_PACKAGES += fs_config_files \
Tim Murrayfd0fb0f2016-07-26 16:08:45 -070075 fs_config_dirs
Eino-Ville Talvala2a42ac52016-04-20 13:17:26 -070076
Eric Laurentf884ce62016-05-27 11:06:25 -070077# Audio configuration
78USE_XML_AUDIO_POLICY_CONF := 1
Patrick Tjin19134d02016-01-27 14:56:57 -080079PRODUCT_COPY_FILES += \
Yueyao (Nathan) Zhu7724e9f2016-05-20 14:47:52 -070080 device/google/marlin/audio_output_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_output_policy.conf \
Jean-Michel Trivi02d74872016-07-07 17:21:33 -070081 device/google/marlin/audio_effects.conf:system/etc/audio_effects.conf \
Patrick Tjina148bca2016-01-29 15:56:38 -080082 device/google/marlin/mixer_paths.xml:system/etc/mixer_paths.xml \
vincent_tewa02fc8a2016-03-14 14:47:06 +080083 device/google/marlin/mixer_paths_tasha_t50.xml:system/etc/mixer_paths_tasha_t50.xml \
Patrick Tjina148bca2016-01-29 15:56:38 -080084 device/google/marlin/aanc_tuning_mixer.txt:system/etc/aanc_tuning_mixer.txt \
Patrick Tjina148bca2016-01-29 15:56:38 -080085 device/google/marlin/sound_trigger_mixer_paths.xml:system/etc/sound_trigger_mixer_paths.xml \
carter_hsu4a444902016-03-23 10:18:36 +080086 device/google/marlin/sound_trigger_mixer_paths_tasha_t50.xml:system/etc/sound_trigger_mixer_paths_tasha_t50.xml \
Patrick Tjina148bca2016-01-29 15:56:38 -080087 device/google/marlin/sound_trigger_platform_info.xml:system/etc/sound_trigger_platform_info.xml \
vincent_tewa02fc8a2016-03-14 14:47:06 +080088 device/google/marlin/audio_platform_info.xml:system/etc/audio_platform_info.xml \
Eric Laurentf884ce62016-05-27 11:06:25 -070089 device/google/marlin/audio_platform_info_tasha_t50.xml:system/etc/audio_platform_info_tasha_t50.xml \
90 device/google/marlin/audio_policy_configuration.xml:system/etc/audio_policy_configuration.xml \
91 device/google/marlin/audio_policy_volumes_drc.xml:system/etc/audio_policy_volumes_drc.xml \
92 frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:system/etc/a2dp_audio_policy_configuration.xml \
93 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:system/etc/r_submix_audio_policy_configuration.xml \
94 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:system/etc/usb_audio_policy_configuration.xml \
Kalle Raitaa19012e2016-07-11 13:36:36 -070095 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:system/etc/default_volume_tables.xml \
96 frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:system/etc/permissions/android.hardware.vulkan.level.xml \
97 frameworks/native/data/etc/android.hardware.vulkan.version-1_0_3.xml:system/etc/permissions/android.hardware.vulkan.version.xml
Patrick Tjin19134d02016-01-27 14:56:57 -080098
Eric Laurentf0edeb82016-06-16 18:24:35 -070099# Audio effects
100PRODUCT_PACKAGES += \
101 libqcomvisualizer \
102 libqcomvoiceprocessing \
103 libqcomvoiceprocessingdescriptors \
104 libqcompostprocbundle
105
carter_hsu4a444902016-03-23 10:18:36 +0800106PRODUCT_PACKAGES += \
107 sound_trigger.primary.msm8996
108
jasmine cha614d8e12016-05-04 18:29:31 +0800109# set audio fluence, ns, aec property
110PRODUCT_PROPERTY_OVERRIDES += \
111 ro.qc.sdk.audio.fluencetype=fluencepro \
112 persist.audio.fluence.voicecall=true \
113 persist.audio.fluence.speaker=true \
114 persist.audio.fluence.voicecomm=true \
115 persist.audio.fluence.voicerec=false
116
Patrick Tjin19134d02016-01-27 14:56:57 -0800117# WLAN driver configuration files
118PRODUCT_COPY_FILES += \
Steve Pfetschfd66dce2016-02-18 09:14:20 -0800119 device/google/marlin/wpa_supplicant_overlay.conf:system/etc/wifi/wpa_supplicant_overlay.conf \
120 device/google/marlin/p2p_supplicant_overlay.conf:system/etc/wifi/p2p_supplicant_overlay.conf \
Patrick Tjina148bca2016-01-29 15:56:38 -0800121 device/google/marlin/WCNSS_cfg.dat:system/etc/firmware/wlan/qca_cld/WCNSS_cfg.dat \
Steve Pfetscha77d8042016-02-17 13:15:35 -0800122 device/google/marlin/WCNSS_qcom_cfg.ini:system/etc/firmware/wlan/qca_cld/WCNSS_qcom_cfg.ini
Patrick Tjin19134d02016-01-27 14:56:57 -0800123
124# MIDI feature
125PRODUCT_COPY_FILES += \
126 frameworks/native/data/etc/android.software.midi.xml:system/etc/permissions/android.software.midi.xml
127
Glenn Kasten01d5abe2016-07-13 10:53:54 -0700128# Audio low latency feature
129PRODUCT_COPY_FILES += \
130 frameworks/native/data/etc/android.hardware.audio.low_latency.xml:system/etc/permissions/android.hardware.audio.low_latency.xml
131
Glenn Kasten244c4ba2016-07-13 13:54:40 -0700132# Pro audio feature
133PRODUCT_COPY_FILES += \
134 frameworks/native/data/etc/android.hardware.audio.pro.xml:system/etc/permissions/android.hardware.audio.pro.xml
135
Yin-Chia Yeha7565002016-07-21 13:55:36 -0700136# Camera
137PRODUCT_COPY_FILES += \
138 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:system/etc/permissions/android.hardware.camera.flash-autofocus.xml \
139 frameworks/native/data/etc/android.hardware.camera.front.xml:system/etc/permissions/android.hardware.camera.front.xml \
140 frameworks/native/data/etc/android.hardware.camera.full.xml:system/etc/permissions/android.hardware.camera.full.xml \
141 frameworks/native/data/etc/android.hardware.camera.raw.xml:system/etc/permissions/android.hardware.camera.raw.xml
142
Steve Pfetscha77d8042016-02-17 13:15:35 -0800143# Wi-Fi
Patrick Tjin19134d02016-01-27 14:56:57 -0800144PRODUCT_PACKAGES += \
Steve Pfetscha77d8042016-02-17 13:15:35 -0800145 libwpa_client \
146 hostapd \
Steve Pfetscha77d8042016-02-17 13:15:35 -0800147 wpa_supplicant \
Steve Pfetschfd66dce2016-02-18 09:14:20 -0800148 wpa_supplicant.conf
Steve Pfetscha77d8042016-02-17 13:15:35 -0800149
Patrick Tjin19134d02016-01-27 14:56:57 -0800150# Listen configuration file
151PRODUCT_COPY_FILES += \
Patrick Tjina148bca2016-01-29 15:56:38 -0800152 device/google/marlin/listen_platform_info.xml:system/etc/listen_platform_info.xml
Patrick Tjin19134d02016-01-27 14:56:57 -0800153
154#ANT+ stack
155PRODUCT_PACKAGES += \
156 AntHalService \
157 libantradio \
158 antradio_app \
159 libvolumelistener
160
Patrick Tjin19134d02016-01-27 14:56:57 -0800161# Sensor features
162PRODUCT_COPY_FILES += \
163 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:system/etc/permissions/android.hardware.sensor.accelerometer.xml \
164 frameworks/native/data/etc/android.hardware.sensor.compass.xml:system/etc/permissions/android.hardware.sensor.compass.xml \
165 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:system/etc/permissions/android.hardware.sensor.gyroscope.xml \
166 frameworks/native/data/etc/android.hardware.sensor.light.xml:system/etc/permissions/android.hardware.sensor.light.xml \
167 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:system/etc/permissions/android.hardware.sensor.proximity.xml \
168 frameworks/native/data/etc/android.hardware.sensor.barometer.xml:system/etc/permissions/android.hardware.sensor.barometer.xml \
169 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:system/etc/permissions/android.hardware.sensor.stepcounter.xml \
170 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:system/etc/permissions/android.hardware.sensor.stepdetector.xml \
Patrick Tjin19134d02016-01-27 14:56:57 -0800171 frameworks/native/data/etc/android.hardware.sensor.hifi_sensors.xml:system/etc/permissions/android.hardware.sensor.hifi_sensors.xml
172
Ruben Brunkec50a812016-04-12 17:04:34 -0700173# Other hardware-specific features
174PRODUCT_COPY_FILES += \
175 frameworks/native/data/etc/android.hardware.vr.high_performance.xml:system/etc/permissions/android.hardware.vr.high_performance.xml
176
Vineeta Srivastavae17a6282016-06-07 11:51:25 -0700177# For SPN display
178PRODUCT_COPY_FILES += \
179 device/google/marlin/spn-conf.xml:system/etc/spn-conf.xml
Ruben Brunkec50a812016-04-12 17:04:34 -0700180
Trevor Bunkerc463b242016-02-16 09:49:11 -0800181# Common sensor packages
Andrew Rossignol11effd22016-04-08 13:32:27 -0700182TARGET_USES_NANOHUB_SENSORHAL := true
183NANOHUB_SENSORHAL_LID_STATE_ENABLED := true
Andrew Rossignol11effd22016-04-08 13:32:27 -0700184NANOHUB_SENSORHAL_SENSORLIST := $(LOCAL_PATH)/sensorhal/sensorlist.cpp
Alexey Polyudovc1a54f42016-04-22 13:53:11 -0700185PRODUCT_PACKAGES += context_hub.default
Andrew Rossignol11effd22016-04-08 13:32:27 -0700186
Trevor Bunkerc463b242016-02-16 09:49:11 -0800187PRODUCT_PACKAGES += \
Andrew Rossignol699fdf62016-02-19 16:34:16 -0800188 nanoapp_cmd
Trevor Bunkerc463b242016-02-16 09:49:11 -0800189
Trevor Bunker0c8ac7f2016-03-28 07:37:55 -0700190# sensor utilities (only for userdebug and eng builds)
191ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
192PRODUCT_PACKAGES += \
193 nanotool \
194 sensortest
195endif
196
Patrick Tjinceb7fc42016-02-04 13:19:39 -0800197PRODUCT_COPY_FILES += \
198 device/google/marlin/sec_config:system/etc/sec_config
199
Patrick Tjin19134d02016-01-27 14:56:57 -0800200PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/bootdevice/by-name/system
201
202#FEATURE_OPENGLES_EXTENSION_PACK support string config file
203PRODUCT_COPY_FILES += \
204 frameworks/native/data/etc/android.hardware.opengles.aep.xml:system/etc/permissions/android.hardware.opengles.aep.xml
205
206# MSM IRQ Balancer configuration file
207PRODUCT_COPY_FILES += \
Yueyao (Nathan) Zhu7724e9f2016-05-20 14:47:52 -0700208 device/google/marlin/msm_irqbalance.conf:$(TARGET_COPY_OUT_VENDOR)/etc/msm_irqbalance.conf
Patrick Tjin19134d02016-01-27 14:56:57 -0800209
Jeff Vander Stoepe0e57952016-02-29 09:14:01 -0800210# init launched script
211PRODUCT_COPY_FILES += \
Paul Lawrence67c299c2016-04-06 09:18:02 -0700212 device/google/marlin/init.qcom.qseecomd.sh:system/bin/init.qcom.qseecomd.sh \
Thierry Strudelb4d838b2016-04-08 12:54:52 -0700213 device/google/marlin/init.radio.sh:system/bin/init.radio.sh \
Patrick Tjin42592002016-08-01 12:19:53 -0700214 device/google/marlin/init.power.sh:system/bin/init.power.sh \
Philip Cuadra1fe1d7c2016-08-04 10:40:38 -0700215 device/google/marlin/init.mid.sh:system/bin/init.mid.sh \
216 device/google/marlin/init.foreground.sh:system/bin/init.foreground.sh
Jeff Vander Stoepe0e57952016-02-29 09:14:01 -0800217
Patrick Tjin19134d02016-01-27 14:56:57 -0800218# Reduce client buffer size for fast audio output tracks
219PRODUCT_PROPERTY_OVERRIDES += \
220 af.fast_track_multiplier=1
221
222# Low latency audio buffer size in frames
223PRODUCT_PROPERTY_OVERRIDES += \
224 audio_hal.period_size=192
225
226PRODUCT_PROPERTY_OVERRIDES += \
Ranjith Kagathi Anandad41f1352016-05-10 18:34:00 -0700227 persist.camera.gyro.android=4 \
Ranjith Kagathi Ananda0afc1942016-05-18 13:44:44 -0700228 persist.camera.tof.direct=1 \
229 persist.camera.tnr.preview=1 \
230 persist.camera.tnr.video=1
Patrick Tjin19134d02016-01-27 14:56:57 -0800231
Steve Pfetscha78cad82016-02-23 19:31:30 -0800232# Set bluetooth soc to rome
233PRODUCT_PROPERTY_OVERRIDES += \
234 qcom.bluetooth.soc=rome
235
Mekala Natarajan6c439d52016-03-03 00:59:55 -0800236PRODUCT_PROPERTY_OVERRIDES += \
tim.tm_lin748d6832016-03-18 22:55:26 +0800237 persist.cne.feature=1 \
tim.tm_lin3e1330a2016-07-28 15:01:23 +0800238 persist.radio.data_ltd_sys_ind=1 \
tim.tm_linf687be02016-07-28 14:27:29 +0800239 persist.radio.is_wps_enabled=true \
tim.tm_lin748d6832016-03-18 22:55:26 +0800240 persist.radio.RATE_ADAPT_ENABLE=1 \
241 persist.radio.ROTATION_ENABLE=1 \
tim.tm_lin29c3e3c2016-03-15 17:46:19 +0800242 persist.radio.sw_mbn_update=1 \
tim.tm_lin748d6832016-03-18 22:55:26 +0800243 persist.radio.videopause.mode=1 \
244 persist.radio.VT_ENABLE=1 \
245 persist.radio.VT_HYBRID_ENABLE=1 \
Nathan Haroldb2b4d022016-07-15 11:10:31 -0700246 persist.radio.data_con_rprt=true \
tim.tm_lin748d6832016-03-18 22:55:26 +0800247 persist.rcs.supported=1 \
Yueyao (Nathan) Zhu7724e9f2016-05-20 14:47:52 -0700248 rild.libpath=/vendor/lib64/libril-qc-qmi-1.so
Mekala Natarajan6c439d52016-03-03 00:59:55 -0800249
Howard Yen408c75c2016-03-22 22:00:09 +0800250PRODUCT_PROPERTY_OVERRIDES += \
251 persist.data.mode=concurrent
252
terry.cr_huang0589e032016-05-20 11:03:52 +0800253# Enable SM log mechanism by default
254ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
255PRODUCT_PROPERTY_OVERRIDES += \
256 persist.radio.smlog_switch=1
257endif
258
Vineeta Srivastava88b013b2016-03-24 17:10:26 -0700259# IMS over WiFi
260PRODUCT_PROPERTY_OVERRIDES += \
261 persist.data.iwlan.enable=true
262
Meng Wangbb795ac2016-03-28 21:46:37 -0700263# LTE, CDMA, GSM/WCDMA
264PRODUCT_PROPERTY_OVERRIDES += \
265 ro.telephony.default_network=10 \
Meng Wang4010b822016-05-19 06:12:40 -0700266 telephony.lteOnCdmaDevice=1
Meng Wangbb795ac2016-03-28 21:46:37 -0700267
Patrick Tjin19134d02016-01-27 14:56:57 -0800268PRODUCT_AAPT_CONFIG += xlarge large
Patrick Tjin12f2d5e2016-08-16 12:22:47 -0700269PRODUCT_CHARACTERISTICS := nosdcard
Patrick Tjin19134d02016-01-27 14:56:57 -0800270
Xue Tu3901eb32016-04-19 18:05:11 -0700271# Enable camera EIS
272# eis.enable: enables electronic image stabilization
273# is_type: sets image stabilization type
274PRODUCT_PROPERTY_OVERRIDES += \
275 persist.camera.eis.enable=1 \
276 persist.camera.is_type=4
277
kris_chenf8c1a3a2016-03-18 18:36:19 +0800278# Fingerprint
279PRODUCT_PACKAGES += \
280 fingerprintd
281
282PRODUCT_COPY_FILES += \
283 frameworks/native/data/etc/android.hardware.fingerprint.xml:system/etc/permissions/android.hardware.fingerprint.xml
284
Ed Tama5030fe2016-03-27 21:44:01 -0700285# Modem debugger
286ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
Ed Tama5030fe2016-03-27 21:44:01 -0700287PRODUCT_COPY_FILES += \
288 device/google/marlin/init.common.diag.rc.userdebug:root/init.common.diag.rc
Ed Tame79b8492016-04-05 17:36:52 -0700289
290# Subsystem ramdump
291PRODUCT_PROPERTY_OVERRIDES += \
292 persist.sys.ssr.enable_ramdumps=1
Ed Tama5030fe2016-03-27 21:44:01 -0700293else
294PRODUCT_COPY_FILES += \
295 device/google/marlin/init.common.diag.rc.user:root/init.common.diag.rc
296endif
297
kurt_huangc67ca182016-06-29 02:33:11 +0800298# Subsystem silent restart
299PRODUCT_PROPERTY_OVERRIDES += \
carter_hsu9993aee2016-07-18 18:23:10 +0800300 persist.sys.ssr.restart_level=venus,AR6320,slpi,modem,adsp
kurt_huangc67ca182016-06-29 02:33:11 +0800301
Jenhao Chen54d46462016-03-31 07:09:27 +0800302PRODUCT_COPY_FILES += \
303 device/google/marlin/thermal-engine-marlin.conf:system/etc/thermal-engine.conf
304
Patrick Tjin19134d02016-01-27 14:56:57 -0800305$(call inherit-product-if-exists, hardware/qcom/msm8996/msm8996.mk)
306$(call inherit-product-if-exists, vendor/qcom/gpu/msm8996/msm8996-gpu-vendor.mk)
307
308# TODO:
309# setup dm-verity configs.
310# PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/platform/soc/7464900.sdhci/by-name/system
311# $(call inherit-product, build/target/product/verity.mk)
Jeff Vander Stoepe0e57952016-02-29 09:14:01 -0800312
greg_huang9b8d1ff2016-03-31 09:06:29 +0800313#Property of the BDA module path for loading BDA
314PRODUCT_PROPERTY_OVERRIDES += \
315 ro.bt.bdaddr_path=/sys/module/bdaddress/parameters/bdaddress
316
Nick Desaulniers62205732016-04-13 15:23:57 -0700317# Needed for encryption
318PRODUCT_PACKAGES += \
319 keystore.msm8996 \
320 gatekeeper.msm8996
Alex Deymo52a26f92016-04-21 17:30:43 -0700321
322# Use the A/B updater.
323AB_OTA_UPDATER := true
324PRODUCT_PACKAGES += \
Alex Deymo46383a62016-04-22 11:27:44 -0700325 update_engine \
326 update_verifier
Dan Willemsene2d37212016-06-22 21:50:38 -0700327
Alex Deymo2ce74612016-08-01 16:23:26 -0700328# Enable update engine sideloading by including the static version of the
329# boot_control HAL and its dependencies.
330PRODUCT_STATIC_BOOT_CONTROL_HAL := \
331 bootctrl.msm8996 \
332 librecovery_updater_msm \
333 libsparse_static
334PRODUCT_PACKAGES += \
335 update_engine_sideload
336
Dan Willemsene2d37212016-06-22 21:50:38 -0700337# Tell the system to enable copying odexes from other partition.
338PRODUCT_PACKAGES += \
339 cppreopts.sh
340
341PRODUCT_PROPERTY_OVERRIDES += \
342 ro.cp_system_other_odex=1
343
Fyodor Kupolov680ae802016-07-22 12:20:40 -0700344# Script that copies preloads directory from system_other to data partition
345PRODUCT_COPY_FILES += \
346 device/google/marlin/preloads_copy.sh:system/bin/preloads_copy.sh
347
Alex Deymo46383a62016-04-22 11:27:44 -0700348PRODUCT_PACKAGES_DEBUG += \
349 update_engine_client
Alex Deymo52a26f92016-04-21 17:30:43 -0700350
351# A/B updater updatable partitions list. Keep in sync with the partition list
Alex Deymo7a1d4f42016-05-06 14:47:47 -0700352# with "_a" and "_b" variants in the device. Note that the vendor can add more
353# more partitions to this list for the bootloader and radio.
354AB_OTA_PARTITIONS += \
355 boot \
Yueyao (Nathan) Zhuf65f85a2016-06-06 17:44:58 -0700356 system
Alex Deymo46383a62016-04-22 11:27:44 -0700357
george.kg_changd9d034b2016-04-20 17:42:40 +0800358# NFC packages
359PRODUCT_PACKAGES += \
360 NfcNci \
361 Tag
362
Eino-Ville Talvalab50776d2016-05-24 12:12:43 -0700363# NFC/camera interaction workaround - DO NOT COPY TO NEW DEVICES
364PRODUCT_PROPERTY_OVERRIDES += \
365 ro.camera.notify_nfc=1
366
george.kg_changd9d034b2016-04-20 17:42:40 +0800367PRODUCT_COPY_FILES += \
368 device/google/marlin/nfc/libnfc-brcm.conf:system/etc/libnfc-brcm.conf \
Yueyao (Nathan) Zhu7724e9f2016-05-20 14:47:52 -0700369 device/google/marlin/nfc/libpn551_fw.so:$(TARGET_COPY_OUT_VENDOR)/firmware/libpn551_fw.so
george.kg_changd9d034b2016-04-20 17:42:40 +0800370
Alex Deymo46383a62016-04-22 11:27:44 -0700371# Bootloader HAL used for A/B updates.
372PRODUCT_PACKAGES += \
373 bootctrl.msm8996
374PRODUCT_PACKAGES_DEBUG += \
375 bootctl
ocean_chenec57a7a2016-05-02 17:21:05 +0800376
377# Storage: for factory reset protection feature
378PRODUCT_PROPERTY_OVERRIDES += \
Ed Tamf75f3b12016-05-09 22:49:27 -0700379 ro.frp.pst=/dev/block/platform/soc/624000.ufshc/by-name/frp
Nick Desaulniersa2f314f2016-05-20 11:36:05 -0700380
Naseer Ahmed81f04682016-06-24 16:03:31 -0400381PRODUCT_PROPERTY_OVERRIDES += \
Naseer Ahmed48567c42016-07-22 20:46:02 -0400382 sdm.debug.disable_rotator_split=1 \
383 qdcm.only_pcc_for_trans=1 \
384 qdcm.diagonal_matrix_mode=1
Naseer Ahmed81f04682016-06-24 16:03:31 -0400385
Praveen Chavanf8d8c3a2016-07-14 17:35:53 -0700386# Enable low power video mode for 4K encode
387PRODUCT_PROPERTY_OVERRIDES += \
388 vidc.debug.perf.mode=2
389
kurt_huang02013e02016-06-03 04:30:43 +0800390# OEM Unlock reporting
391ADDITIONAL_DEFAULT_PROPERTIES += \
392 ro.oem_unlock_supported=1
393
Nick Desaulniersa2f314f2016-05-20 11:36:05 -0700394# Setup dm-verity configs
395PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/bootdevice/by-name/system
Yueyao (Nathan) Zhu7724e9f2016-05-20 14:47:52 -0700396PRODUCT_VENDOR_VERITY_PARTITION := /dev/block/bootdevice/by-name/vendor
Nick Desaulniersa2f314f2016-05-20 11:36:05 -0700397$(call inherit-product, build/target/product/verity.mk)
398
Tao Bao35d62872016-06-10 10:08:43 -0700399# Partitions (listed in the file) to be wiped under recovery.
400TARGET_RECOVERY_WIPE := \
401 device/google/marlin/recovery.wipe.common
shinru_han3cdc81d2016-06-04 17:35:27 +0800402
403# GPS configuration file
shinru_han3cdc81d2016-06-04 17:35:27 +0800404PRODUCT_COPY_FILES += \
Andreas Gampe99018392016-06-08 14:10:26 -0700405 device/google/marlin/gps.conf:system/etc/gps.conf
shinru_han3cdc81d2016-06-04 17:35:27 +0800406
Svet Ganov5e008442016-08-18 12:39:26 -0700407# Default permission grant exceptions
408PRODUCT_COPY_FILES += \
409 device/google/marlin/default-permissions.xml:system/etc/default-permissions/default-permissions.xml
410
Andreas Gampe6292e8a2016-06-02 10:05:12 -0700411# A/B OTA dexopt package
412PRODUCT_PACKAGES += otapreopt_script
413
414# A/B OTA dexopt update_engine hookup
415AB_OTA_POSTINSTALL_CONFIG += \
416 RUN_POSTINSTALL_system=true \
417 POSTINSTALL_PATH_system=system/bin/otapreopt_script \
Alex Deymo2ce74612016-08-01 16:23:26 -0700418 FILESYSTEM_TYPE_system=ext4 \
419 POSTINSTALL_OPTIONAL_system=true
Andreas Gampe70e51082016-06-16 11:49:46 -0700420
Paul Crowley277ed4c2016-06-23 15:46:41 -0700421#Reduce cost of scrypt for FBE CE decryption
422PRODUCT_PROPERTY_OVERRIDES += \
423 ro.crypto.scrypt_params=13:3:1
424
Andreas Gampe70e51082016-06-16 11:49:46 -0700425# Add minidebug info to the system server to support diagnosing native crashes.
426ifneq (,$(filter user userdebug, $(TARGET_BUILD_VARIANT)))
427 # System server and some of its services.
428 # Note: we cannot use PRODUCT_SYSTEM_SERVER_JARS, as it has not been expanded at this point.
429 $(call add-product-dex-preopt-module-config,services,--generate-mini-debug-info)
430 $(call add-product-dex-preopt-module-config,wifi-service,--generate-mini-debug-info)
431endif
Andreas Gampef6da5142016-06-27 15:20:58 -0700432
Andreas Gampe25dce182016-06-27 15:22:41 -0700433# b/28423767
434$(call add-product-sanitizer-module-config,rmt_storage,never)
Andreas Gampe48f0f8f2016-06-29 09:23:52 -0700435
Andreas Gampef92881b2016-07-26 21:17:28 -0700436# b/30302693
437$(call add-product-sanitizer-module-config,surfaceflinger libsigchain,never)
438
Andreas Gampedc1ada62016-06-29 12:01:07 -0700439# b/28992626
440# For Hangouts, make ASAN-lite only sanitize 32-bit.
441ifeq (true,$(SANITIZE_LITE))
442 SANITIZE_ARCH := 32
443endif
Yuan Linbe472112016-07-26 16:02:13 -0700444
445# b/30349163
446# Set Marlin/Sailfish default log size on userdebug/eng build to 1M
447ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
448PRODUCT_PROPERTY_OVERRIDES += ro.logd.size=1M
449endif
Dan Stoza3edc6fa2016-08-15 09:39:57 -0700450
451# b/30022738
452# Work around janky screenrecord performance by disabling hardware composer
453# virtual displays
454PRODUCT_PROPERTY_OVERRIDES += \
455 debug.sf.disable_hwc_vds=1