• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Copyright (C) 2015 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 bullhead devices, and
18# are also specific to bullhead devices
19#
20# Everything in this directory will become public
21
22# Enable support for chinook sensorhub
23TARGET_USES_CHINOOK_SENSORHUB := false
24
25ifeq ($(TARGET_PREBUILT_KERNEL),)
26  LOCAL_KERNEL := device/lge/bullhead-kernel/Image.gz-dtb
27else
28  LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
29endif
30
31PRODUCT_COPY_FILES := \
32    $(LOCAL_KERNEL):kernel
33
34PRODUCT_COPY_FILES += \
35    device/lge/bullhead/init.bullhead.rc:root/init.bullhead.rc \
36    device/lge/bullhead/init.bullhead.usb.rc:root/init.bullhead.usb.rc \
37    device/lge/bullhead/fstab.bullhead:root/fstab.bullhead \
38    device/lge/bullhead/ueventd.bullhead.rc:root/ueventd.bullhead.rc \
39    device/lge/bullhead/init.bullhead.ramdump.rc:root/init.bullhead.ramdump.rc \
40    device/lge/bullhead/init.bullhead.fp.rc:root/init.bullhead.fp.rc
41
42ifeq ($(TARGET_USES_CHINOOK_SENSORHUB),true)
43PRODUCT_COPY_FILES += \
44    device/lge/bullhead/init.bullhead.sensorhub.rc:root/init.bullhead.sensorhub.rc
45else
46PRODUCT_COPY_FILES += \
47    device/lge/bullhead/init.bullhead.nanohub.rc:root/init.bullhead.sensorhub.rc
48endif
49
50PRODUCT_COPY_FILES += \
51    frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:system/etc/media_codecs_google_audio.xml \
52    frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:system/etc/media_codecs_google_telephony.xml \
53    frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:system/etc/media_codecs_google_video.xml \
54    device/lge/bullhead/media_codecs.xml:system/etc/media_codecs.xml \
55    device/lge/bullhead/media_codecs_performance.xml:system/etc/media_codecs_performance.xml \
56    device/lge/bullhead/media_profiles.xml:system/etc/media_profiles.xml
57
58# Audio
59PRODUCT_COPY_FILES += \
60    device/lge/bullhead/audio_effects.conf:system/etc/audio_effects.conf \
61    device/lge/bullhead/mixer_paths.xml:system/etc/mixer_paths.xml \
62    device/lge/bullhead/audio_platform_info.xml:system/etc/audio_platform_info.xml \
63    device/lge/bullhead/audio_policy_configuration.xml:system/etc/audio_policy_configuration.xml \
64    device/lge/bullhead/audio_policy_volumes_drc.xml:system/etc/audio_policy_volumes_drc.xml \
65    frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:system/etc/a2dp_audio_policy_configuration.xml \
66    frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:system/etc/r_submix_audio_policy_configuration.xml \
67    frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:system/etc/usb_audio_policy_configuration.xml \
68    frameworks/av/services/audiopolicy/config/default_volume_tables.xml:system/etc/default_volume_tables.xml \
69
70#Sound Trigger
71PRODUCT_COPY_FILES += \
72    device/lge/bullhead/sound_trigger_mixer_paths.xml:system/etc/sound_trigger_mixer_paths.xml \
73    device/lge/bullhead/sound_trigger_platform_info.xml:system/etc/sound_trigger_platform_info.xml
74
75# Input device files
76PRODUCT_COPY_FILES += \
77    device/lge/bullhead/gpio-keys.kl:system/usr/keylayout/gpio-keys.kl \
78    device/lge/bullhead/qpnp_pon.kl:system/usr/keylayout/qpnp_pon.kl
79
80# for launcher layout
81PRODUCT_PACKAGES += \
82    BullheadLayout
83
84# Prebuilt input device calibration files
85PRODUCT_COPY_FILES += \
86    device/lge/bullhead/synaptics_rmi4_i2c.idc:system/usr/idc/synaptics_rmi4_i2c.idc
87
88# These are the hardware-specific features
89PRODUCT_COPY_FILES += \
90    frameworks/native/data/etc/handheld_core_hardware.xml:system/etc/permissions/handheld_core_hardware.xml \
91    frameworks/native/data/etc/android.hardware.bluetooth_le.xml:system/etc/permissions/android.hardware.bluetooth_le.xml \
92    frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:system/etc/permissions/android.hardware.camera.flash-autofocus.xml \
93    frameworks/native/data/etc/android.hardware.camera.front.xml:system/etc/permissions/android.hardware.camera.front.xml \
94    frameworks/native/data/etc/android.hardware.camera.full.xml:system/etc/permissions/android.hardware.camera.full.xml \
95    frameworks/native/data/etc/android.hardware.camera.raw.xml:system/etc/permissions/android.hardware.camera.raw.xml \
96    frameworks/native/data/etc/android.hardware.fingerprint.xml:system/etc/permissions/android.hardware.fingerprint.xml \
97    frameworks/native/data/etc/android.hardware.location.gps.xml:system/etc/permissions/android.hardware.location.gps.xml \
98    frameworks/native/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \
99    frameworks/native/data/etc/android.hardware.wifi.direct.xml:system/etc/permissions/android.hardware.wifi.direct.xml \
100    frameworks/native/data/etc/android.hardware.sensor.proximity.xml:system/etc/permissions/android.hardware.sensor.proximity.xml \
101    frameworks/native/data/etc/android.hardware.sensor.light.xml:system/etc/permissions/android.hardware.sensor.light.xml \
102    frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:system/etc/permissions/android.hardware.sensor.gyroscope.xml \
103    frameworks/native/data/etc/android.hardware.sensor.barometer.xml:system/etc/permissions/android.hardware.sensor.barometer.xml \
104    frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:system/etc/permissions/android.hardware.sensor.stepcounter.xml \
105    frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:system/etc/permissions/android.hardware.sensor.stepdetector.xml \
106    frameworks/native/data/etc/android.hardware.sensor.hifi_sensors.xml:system/etc/permissions/android.hardware.sensor.hifi_sensors.xml \
107    frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:system/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
108    frameworks/native/data/etc/android.software.sip.voip.xml:system/etc/permissions/android.software.sip.voip.xml \
109    frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml \
110    frameworks/native/data/etc/android.hardware.usb.host.xml:system/etc/permissions/android.hardware.usb.host.xml \
111    frameworks/native/data/etc/android.hardware.audio.low_latency.xml:system/etc/permissions/android.hardware.audio.low_latency.xml \
112    frameworks/native/data/etc/android.hardware.audio.pro.xml:system/etc/permissions/android.hardware.audio.pro.xml \
113    frameworks/native/data/etc/android.hardware.telephony.cdma.xml:system/etc/permissions/android.hardware.telephony.cdma.xml \
114    frameworks/native/data/etc/android.hardware.telephony.gsm.xml:system/etc/permissions/android.hardware.telephony.gsm.xml \
115    frameworks/native/data/etc/android.hardware.nfc.xml:system/etc/permissions/android.hardware.nfc.xml \
116    frameworks/native/data/etc/android.hardware.nfc.hce.xml:system/etc/permissions/android.hardware.nfc.hce.xml \
117    frameworks/native/data/etc/android.hardware.nfc.hcef.xml:system/etc/permissions/android.hardware.nfc.hcef.xml \
118    frameworks/native/data/etc/android.hardware.ethernet.xml:system/etc/permissions/android.hardware.ethernet.xml \
119    frameworks/native/data/etc/android.software.midi.xml:system/etc/permissions/android.software.midi.xml \
120    frameworks/native/data/etc/android.software.verified_boot.xml:system/etc/permissions/android.software.verified_boot.xml \
121    frameworks/native/data/etc/com.nxp.mifare.xml:system/etc/permissions/com.nxp.mifare.xml \
122    frameworks/native/data/etc/android.hardware.opengles.aep.xml:system/etc/permissions/android.hardware.opengles.aep.xml \
123    frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:system/etc/permissions/android.hardware.vulkan.level.xml \
124    frameworks/native/data/etc/android.hardware.vulkan.version-1_0_3.xml:system/etc/permissions/android.hardware.vulkan.version.xml
125
126# For SPN display
127PRODUCT_COPY_FILES += \
128    device/lge/bullhead/spn-conf.xml:system/etc/spn-conf.xml
129
130# For GPS
131PRODUCT_COPY_FILES += \
132    device/lge/bullhead/sec_config:system/etc/sec_config
133
134# NFC config files
135PRODUCT_COPY_FILES += \
136    device/lge/bullhead/nfc/libnfc-brcm.conf:system/etc/libnfc-brcm.conf \
137    device/lge/bullhead/nfc/libnfc-nxp.conf:system/etc/libnfc-nxp.conf
138
139# For WiFi
140PRODUCT_COPY_FILES += \
141    device/lge/bullhead/wifi/wpa_supplicant_overlay.conf:system/etc/wifi/wpa_supplicant_overlay.conf \
142    device/lge/bullhead/wifi/p2p_supplicant_overlay.conf:system/etc/wifi/p2p_supplicant_overlay.conf \
143    device/lge/bullhead/wifi/WCNSS_cfg.dat:system/etc/firmware/wlan/qca_cld/WCNSS_cfg.dat \
144    device/lge/bullhead/wifi/WCNSS_qcom_cfg.ini:system/etc/firmware/wlan/qca_cld/WCNSS_qcom_cfg.ini
145
146# MSM IRQ Balancer configuration file
147PRODUCT_COPY_FILES += \
148    device/lge/bullhead/msm_irqbalance.conf:vendor/etc/msm_irqbalance.conf
149
150# Power configuration file
151PRODUCT_COPY_FILES += \
152    device/lge/bullhead/init.bullhead.power.sh:system/bin/init.bullhead.power.sh
153
154# MBN
155PRODUCT_COPY_FILES += \
156    device/lge/bullhead/init.bullhead.sh:system/bin/init.bullhead.sh
157
158# Qseecomd configuration file
159PRODUCT_COPY_FILES += \
160    device/lge/bullhead/init.bullhead.qseecomd.sh:system/bin/init.bullhead.qseecomd.sh
161
162PRODUCT_TAGS += dalvik.gc.type-precise
163
164PRODUCT_AAPT_CONFIG := normal
165PRODUCT_AAPT_PREF_CONFIG := xxhdpi
166# A list of dpis to select prebuilt apk, in precedence order.
167PRODUCT_AAPT_PREBUILT_DPI := xxhdpi xhdpi hdpi
168
169PRODUCT_CHARACTERISTICS := nosdcard
170
171# for off charging mode
172PRODUCT_PACKAGES += \
173    charger_res_images
174
175PRODUCT_PACKAGES += \
176    gralloc.msm8992 \
177    hwcomposer.msm8992 \
178    libgenlock \
179    memtrack.msm8992 \
180    lights.bullhead
181
182PRODUCT_PACKAGES += \
183    libc2dcolorconvert \
184    libstagefrighthw \
185    libOmxCore \
186    libmm-omxcore \
187    libOmxVdec \
188    libOmxVdecHevc \
189    libOmxVenc
190
191# Audio HAL and utilities
192USE_XML_AUDIO_POLICY_CONF := 1
193PRODUCT_PACKAGES += \
194    audio.primary.msm8992 \
195    audio.a2dp.default \
196    audio.usb.default \
197    audio.r_submix.default \
198    libaudio-resampler
199
200# Audio effects
201PRODUCT_PACKAGES += \
202    libqcomvoiceprocessing \
203    libqcomvoiceprocessingdescriptors \
204    libqcomvisualizer \
205    libqcompostprocbundle \
206    libvolumelistener
207
208PRODUCT_PACKAGES += \
209    librmnetctl \
210    rmnetcli
211
212# GPS configuration
213PRODUCT_COPY_FILES += \
214    device/lge/bullhead/gps.conf:system/etc/gps.conf
215
216# NFC packages
217PRODUCT_PACKAGES += \
218    nfc_nci.bullhead \
219    NfcNci \
220    Tag
221
222# Fingerprint Sensor
223PRODUCT_PACKAGES += \
224    fingerprint.bullhead
225
226# Wi-Fi
227PRODUCT_PACKAGES += \
228    libwpa_client \
229    hostapd \
230    wpa_supplicant \
231    wpa_supplicant.conf
232
233# Camera
234PRODUCT_PACKAGES += \
235    camera.msm8992 \
236    libcamera \
237    libmmcamera_interface \
238    libmmcamera_interface2 \
239    libmmjpeg_interface \
240    libqomx_core \
241    mm-qcamera-app
242
243# Sensor & activity_recognition HAL
244TARGET_USES_NANOHUB_SENSORHAL := true
245NANOHUB_SENSORHAL_LID_STATE_ENABLED := true
246NANOHUB_SENSORHAL_SENSORLIST := $(LOCAL_PATH)/sensorhal/sensorlist.cpp
247
248PRODUCT_PACKAGES += \
249    sensors.bullhead \
250    activity_recognition.bullhead \
251    context_hub.default
252
253ifeq ($(TARGET_USES_CHINOOK_SENSORHUB),true)
254PRODUCT_PACKAGES += \
255    sensortool.bullhead
256else
257PRODUCT_PACKAGES += \
258    nanoapp_cmd
259endif
260
261# sensor utilities (only for userdebug and eng builds)
262ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
263PRODUCT_PACKAGES += \
264    nanotool \
265    sensortest
266endif
267
268PRODUCT_PACKAGES += \
269    keystore.msm8992 \
270    gatekeeper.msm8992
271
272# For android_filesystem_config.h
273PRODUCT_PACKAGES += \
274   fs_config_files
275
276DEVICE_PACKAGE_OVERLAYS := \
277    device/lge/bullhead/overlay
278
279# Enable AAC 5.1 output
280PRODUCT_PROPERTY_OVERRIDES += \
281    media.aac_51_output_enabled=true
282
283# Audio
284PRODUCT_PROPERTY_OVERRIDES += \
285    ro.qc.sdk.audio.fluencetype=fluencepro \
286    persist.audio.fluence.voicecall=true \
287    persist.audio.fluence.voicecomm=true \
288    persist.audio.fluence.voicerec=false \
289    persist.audio.fluence.speaker=true \
290    persist.speaker.prot.enable=true \
291    ro.config.vc_call_vol_steps=7
292
293# Reduce client buffer size for fast audio output tracks
294PRODUCT_PROPERTY_OVERRIDES += \
295    af.fast_track_multiplier=1
296
297# Low latency audio buffer size in frames
298PRODUCT_PROPERTY_OVERRIDES += \
299    audio_hal.period_size=192
300
301PRODUCT_PROPERTY_OVERRIDES += \
302    wifi.interface=wlan0 \
303    wifi.supplicant_scan_interval=15
304
305PRODUCT_PROPERTY_OVERRIDES += \
306    ro.opengles.version=196610
307
308PRODUCT_PROPERTY_OVERRIDES += \
309    ro.sf.lcd_density=420
310
311PRODUCT_PROPERTY_OVERRIDES += \
312    persist.hwc.mdpcomp.enable=true
313
314# Enable low power video mode for 4K encode
315PRODUCT_PROPERTY_OVERRIDES += \
316    vidc.debug.perf.mode=2 \
317    vidc.enc.dcvs.extra-buff-count=2
318
319PRODUCT_PROPERTY_OVERRIDES += \
320    ro.hwui.texture_cache_size=56 \
321    ro.hwui.layer_cache_size=32 \
322    ro.hwui.r_buffer_cache_size=8 \
323    ro.hwui.path_cache_size=16 \
324    ro.hwui.gradient_cache_size=1 \
325    ro.hwui.drop_shadow_cache_size=6 \
326    ro.hwui.texture_cache_flushrate=0.4 \
327    ro.hwui.text_small_cache_width=1024 \
328    ro.hwui.text_small_cache_height=1024 \
329    ro.hwui.text_large_cache_width=2048 \
330    ro.hwui.text_large_cache_height=1024
331
332PRODUCT_PROPERTY_OVERRIDES += \
333    ro.frp.pst=/dev/block/platform/soc.0/f9824900.sdhci/by-name/persistent
334
335PRODUCT_PROPERTY_OVERRIDES += \
336    drm.service.enabled=true
337
338# for perfd
339PRODUCT_PROPERTY_OVERRIDES += \
340    ro.min_freq_0=384000
341    ro.min_freq_4=384000
342
343PRODUCT_PROPERTY_OVERRIDES += \
344    ro.vendor.extension_library=libqti-perfd-client.so
345
346PRODUCT_PROPERTY_OVERRIDES += \
347    rild.libpath=/vendor/lib64/libril-qc-qmi-1.so
348
349PRODUCT_PROPERTY_OVERRIDES += \
350    ro.telephony.default_cdma_sub=0 \
351    persist.qcril.disable_retry=true
352
353# LTE, CDMA, GSM/WCDMA
354PRODUCT_PROPERTY_OVERRIDES += \
355    ro.telephony.default_network=22 \
356    telephony.lteOnCdmaDevice=1 \
357    persist.radio.mode_pref_nv10=1
358
359# Emergency call overrides for Korea
360PRODUCT_PROPERTY_OVERRIDES += \
361    ril.nosim.ecc_list_count=1 \
362    ril.nosim.ecc_list_1=111,113,117,122,125
363
364# low audio flinger standby delay to reduce power consumption
365PRODUCT_PROPERTY_OVERRIDES += \
366    ro.audio.flinger_standbytime_ms=300
367
368PRODUCT_PROPERTY_OVERRIDES += \
369    persist.radio.apm_sim_not_pwdn=1
370
371# Setup custom emergency number list based on the MCC. This is needed by RIL
372PRODUCT_PROPERTY_OVERRIDES += \
373    persist.radio.custom_ecc=1
374
375# IMS over WiFi
376PRODUCT_PROPERTY_OVERRIDES += \
377    persist.data.iwlan.enable=true
378
379# Request modem to send PLMN name always irrespective
380# of display condition in EFSPN.
381# RIL uses this property.
382PRODUCT_PROPERTY_OVERRIDES += \
383    persist.radio.always_send_plmn=true
384
385# Ril sends only one RIL_UNSOL_CALL_RING, so set call_ring.multiple to false
386PRODUCT_PROPERTY_OVERRIDES += \
387    ro.telephony.call_ring.multiple=0
388
389PRODUCT_PROPERTY_OVERRIDES += \
390    persist.radio.use_cc_names=true
391
392# Update 1x signal strength after 10s
393PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
394    persist.radio.snapshot_enabled=1 \
395    persist.radio.snapshot_timer=10
396
397# If data_no_toggle is 0 there are no reports if the screen is off.
398# If data_no_toggle is 1 then dormancy indications will come with screen off.
399PRODUCT_PROPERTY_OVERRIDES += \
400    persist.radio.data_no_toggle=1
401
402# Adjust STK popup operation
403PRODUCT_PROPERTY_OVERRIDES += \
404    persist.radio.process_sups_ind=1
405
406# VZW voice roaming issue
407PRODUCT_PROPERTY_OVERRIDES += \
408    persist.radio.eri64_as_home=1
409
410PRODUCT_PROPERTY_OVERRIDES += \
411    persist.radio.data_con_rprt=true
412
413# Set bluetooth soc to rome
414PRODUCT_PROPERTY_OVERRIDES += \
415    qcom.bluetooth.soc=rome
416
417# Set Bluetooth transport initialization timeout
418PRODUCT_PROPERTY_OVERRIDES += \
419    bluetooth.enable_timeout_ms=12000
420
421PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
422    ro.bt.bdaddr_path=/persist/bdaddr.txt
423
424# limit dex2oat threads to improve thermals
425PRODUCT_PROPERTY_OVERRIDES += \
426    dalvik.vm.boot-dex2oat-threads=4 \
427    dalvik.vm.dex2oat-threads=4 \
428    dalvik.vm.image-dex2oat-threads=4
429
430# Disable Camera TNR
431PRODUCT_PROPERTY_OVERRIDES += \
432    persist.camera.tnr.preview=0 \
433    persist.camera.tnr.video=0
434
435# Incoming number (b/23529711)
436PRODUCT_PROPERTY_OVERRIDES += \
437    persist.radio.redir_party_num=0
438
439# NFC/camera interaction workaround - DO NOT COPY TO NEW DEVICES
440PRODUCT_PROPERTY_OVERRIDES += \
441    ro.camera.notify_nfc=1
442
443# Power HAL
444PRODUCT_PACKAGES += \
445    power.bullhead \
446    thermal.bullhead
447
448# Modem debugger/misc
449ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
450PRODUCT_PACKAGES += \
451    QXDMLogger
452
453PRODUCT_COPY_FILES += \
454    device/lge/bullhead/init.bullhead.diag.rc.userdebug:root/init.bullhead.diag.rc \
455    device/lge/bullhead/init.bullhead.misc.rc.userdebug:root/init.bullhead.misc.rc
456else
457PRODUCT_COPY_FILES += \
458    device/lge/bullhead/init.bullhead.diag.rc.user:root/init.bullhead.diag.rc \
459    device/lge/bullhead/init.bullhead.misc.rc.user:root/init.bullhead.misc.rc
460endif
461
462# setup dm-verity configs.
463PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/platform/soc.0/f9824900.sdhci/by-name/system
464PRODUCT_VENDOR_VERITY_PARTITION := /dev/block/platform/soc.0/f9824900.sdhci/by-name/vendor
465$(call inherit-product, build/target/product/verity.mk)
466
467# OEM Unlock reporting
468ADDITIONAL_DEFAULT_PROPERTIES += \
469    ro.oem_unlock_supported=1
470
471# In userdebug, add minidebug info the the boot image and the system server to support
472# diagnosing native crashes.
473ifneq (,$(filter userdebug, $(TARGET_BUILD_VARIANT)))
474    # Boot image.
475    PRODUCT_DEX_PREOPT_BOOT_FLAGS += --generate-mini-debug-info
476    # System server and some of its services.
477    # Note: we cannot use PRODUCT_SYSTEM_SERVER_JARS, as it has not been expanded at this point.
478    $(call add-product-dex-preopt-module-config,services,--generate-mini-debug-info)
479    $(call add-product-dex-preopt-module-config,wifi-service,--generate-mini-debug-info)
480endif
481
482# setup dalvik vm configs.
483$(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
484
485$(call inherit-product-if-exists, hardware/qcom/msm8994/msm8992.mk)
486$(call inherit-product-if-exists, vendor/qcom/gpu/msm8994/msm8994-gpu-vendor.mk)
487