summaryrefslogtreecommitdiff
path: root/soc/msm8916/soc.mk
blob: ba73744293f7da26ee31c84de061da74a6b99ddf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#
# Copyright 2015 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

# TODO(leecam): Make this automatic.
LOCAL_PATH := hardware/bsp/qcom/soc/msm8916

# Arm32 device.
TARGET_ARCH := arm
TARGET_ARCH_VARIANT := armv7-a
TARGET_CPU_VARIANT := generic
TARGET_CPU_ABI := armeabi-v7a
TARGET_CPU_ABI2 := armeabi
TARGET_KERNEL_ARCH := $(TARGET_ARCH)

TARGET_NO_BOOTLOADER := false
TARGET_NO_KERNEL := false

BOARD_KERNEL_CMDLINE := console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=msm8916 msm_rtb.filter=0x237 ehci-hcd.park=3 androidboot.bootdevice=7824900.sdhci lpm_levels.sleep_disabled=1 earlyprintk androidboot.selinux=enforcing

TARGET_USERIMAGES_USE_EXT4 := true
BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4
BOARD_FLASH_BLOCK_SIZE := 131072

PRODUCT_COPY_FILES += \
	$(LOCAL_PATH)/init.msm8916.rc:root/init.msm8916.rc \
	system/core/rootdir/init.usb.rc:root/init.usb.rc \
	system/core/rootdir/ueventd.rc:root/ueventd.rc \

# TODO: Move common/prebuilts/sepolicy include to audio_prebuilts.mk
BOARD_SEPOLICY_DIRS += \
	$(LOCAL_PATH)/sepolicy \
	$(LOCAL_PATH)/prebuilts/sepolicy \

# Set up the local kernel.
TARGET_KERNEL_SRC := hardware/bsp/kernel/qcom/qcom-msm-3.10
TARGET_KERNEL_DEFCONFIG := msm8916-perf_defconfig
$(call add_kernel_configs, $(realpath $(LOCAL_PATH)/soc.kconf))

# Default Keystore HAL.
DEVICE_PACKAGES += \
	keystore.default

# Include Bool Control HAL.
DEVICE_PACKAGES += \
	bootctrl.msm8916

# Audio feature flags.
BOARD_USES_ALSA_AUDIO := true
AUDIO_FEATURE_ENABLED_EXTN_RESAMPLER := true
AUDIO_FEATURE_ENABLED_HFP := true
AUDIO_FEATURE_ENABLED_MULTI_VOICE_SESSIONS := true
AUDIO_FEATURE_ENABLED_VOICE_CONCURRENCY := true
AUDIO_FEATURE_ENABLED_WFD_CONCURRENCY := true
BOARD_USES_SRS_TRUEMEDIA := true
AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := true
AUDIO_FEATURE_ENABLED_ACDB_LICENSE := true
DOLBY_DAP_HW_QDSP_HAL_API := true
DOLBY_UDC_MULTICHANNEL_PCM_OFFLOAD := false
MM_AUDIO_ENABLED_FTM := true
MM_AUDIO_ENABLED_SAFX := true
TARGET_USES_QCOM_MM_AUDIO := true

# Include Audio HAL implementation.
DEVICE_PACKAGES += \
	audio.primary.msm8916

# Include Lights HAL implementation.
DEVICE_PACKAGES += \
	lights.msm8916 \

# Install DragonBoard-specific audio policy, audio effects config, media codecs and mixer path files.
PRODUCT_COPY_FILES += \
	hardware/bsp/qcom/soc/msm8916/audio-config/audio_policy.conf:system/etc/audio_policy.conf \
	hardware/bsp/qcom/soc/msm8916/audio-config/audio_effects.conf:system/etc/audio_effects.conf \
	hardware/bsp/qcom/soc/msm8916/audio-config/mixer_paths_sbc.xml:system/etc/mixer_paths_sbc.xml \
	hardware/bsp/qcom/soc/msm8916/audio-config/media_codecs_8916.xml:system/etc/media_codecs.xml

# Include prebuilts to detect audio devices.
PRODUCT_COPY_FILES += \
	$(LOCAL_PATH)/prebuilts/audio.rc:system/etc/init/audio.rc \

# Include prebuilts to support keymaster.
PRODUCT_COPY_FILES += \
	$(LOCAL_PATH)/prebuilts/qseecom.rc:system/etc/init/qseecom.rc \

# Include Bluetooth prebuilts.
PRODUCT_COPY_FILES += \
	$(LOCAL_PATH)/prebuilts/bluetooth.rc:system/etc/init/bluetooth.rc \
	$(LOCAL_PATH)/prebuilts/init.msm.bt.sh:system/etc/init.msm.bt.sh \

PRODUCT_LIBRARY_PATH := $(TOP)/vendor/bsp/qcom/device/dragonboard/linux_410c_board_support_package_LA.BR.1.2.4_rb1.10

# Audio daemons.
PRODUCT_COPY_FILES += \
	$(PRODUCT_LIBRARY_PATH)/bin/rmt_storage:/system/bin/rmt_storage \
	$(PRODUCT_LIBRARY_PATH)/bin/qmuxd:/system/bin/qmuxd \

# Audio libs.
PRODUCT_COPY_FILES += \
	$(PRODUCT_LIBRARY_PATH)/lib/libconfigdb.so:/system/lib/libconfigdb.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libdiag.so:/system/lib/libdiag.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libdsutils.so:/system/lib/libdsutils.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libidl.so:/system/lib/libidl.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libmdmdetect.so:/system/lib/libmdmdetect.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libqmi.so:/system/lib/libqmi.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libqmi_client_qmux.so:/system/lib/libqmi_client_qmux.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libqmi_common_so.so:/system/lib/libqmi_common_so.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libqmi_csi.so:/system/lib/libqmi_csi.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libqmi_encdec.so:/system/lib/libqmi_encdec.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libqmiservices.so:/system/lib/libqmiservices.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libsmemlog.so:/system/lib/libsmemlog.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libxml.so:/system/lib/libxml.so \

# Bluetooth binaries.
PRODUCT_COPY_FILES += \
	$(PRODUCT_LIBRARY_PATH)/bin/btnvtool:/system/bin/btnvtool \
	$(PRODUCT_LIBRARY_PATH)/bin/hci_qcomm_init:/system/bin/hci_qcomm_init \

# Bluetooth libs.
PRODUCT_COPY_FILES += \
	$(PRODUCT_LIBRARY_PATH)/lib/libbtnv.so:/system/lib/libbtnv.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libbt-vendor.so:/system/lib/libbt-vendor.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libqcci_legacy.so:/system/lib/libqcci_legacy.so \

# QSEE libs.
PRODUCT_COPY_FILES += \
	$(PRODUCT_LIBRARY_PATH)/lib/libQSEEComAPI.so:/system/lib/libQSEEComAPI.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libQSEEComAPIStaticHelper.so:/system/lib/libQSEEComAPIStaticHelper.so \
	$(PRODUCT_LIBRARY_PATH)/lib/librpmb.so:/system/lib/librpmb.so \
	$(PRODUCT_LIBRARY_PATH)/lib/librpmbStaticHelper.so:/system/lib/librpmbStaticHelper.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libssd.so:/system/lib/libssd.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libssdStaticHelper.so:/system/lib/libssdStaticHelper.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libdrmfs.so:/system/lib/libdrmfs.so \
	$(PRODUCT_LIBRARY_PATH)/lib/libdrmtime.so:/system/lib/libdrmtime.so \

# QSEECom daemons.
PRODUCT_COPY_FILES += \
	$(PRODUCT_LIBRARY_PATH)/bin/qseecomd:/system/bin/qseecomd \
	$(PRODUCT_LIBRARY_PATH)/bin/qseecomd_static:/system/bin/qseecomd_static \

# Include keystore library.
PRODUCT_COPY_FILES += \
	$(PRODUCT_LIBRARY_PATH)/lib/hw/keystore.msm8916.so:/system/lib/hw/keystore.msm8916.so