blob: e38e9c8d0b3248bb418eb73b53cadf291dfae512 [file] [log] [blame]
Vishal Bhoje72c9202015-10-23 18:10:21 +01001#
2# Copyright (C) 2011 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
Sahaj Sarup93980e02018-09-11 13:24:20 +000017ifneq (,$(filter $(TARGET_PRODUCT),hikey960_tv hikey_tv))
18# Setup TV Build
19USE_OEM_TV_APP := true
20$(call inherit-product, device/google/atv/products/atv_base.mk)
21PRODUCT_CHARACTERISTICS := tv
22PRODUCT_AAPT_PREF_CONFIG := tvdpi
23PRODUCT_IS_ATV := true
24else
Vishal Bhoje72c9202015-10-23 18:10:21 +010025# Adjust the dalvik heap to be appropriate for a tablet.
John Stultz58bae752018-10-18 13:13:24 -070026$(call inherit-product, frameworks/native/build/tablet-10in-xhdpi-2048-dalvik-heap.mk)
Sahaj Sarup93980e02018-09-11 13:24:20 +000027endif
Vishal Bhoje72c9202015-10-23 18:10:21 +010028
Niranjan Yadla88a93e42017-08-29 15:22:40 -070029# Set vendor kernel path
30PRODUCT_VENDOR_KERNEL_HEADERS := device/linaro/hikey/kernel-headers
31
Yongqin Liu7271d392018-11-21 15:27:41 +080032# Hikey was first supported from Marshmallow 6.0, API level 23
33# PRODUCT_SHIPPING_API_LEVEL is required from Pie build by the CTS test of
34# CtsOsTestCases android.os.cts.BuildTest#testSdkInt
35# as reported here:
36# https://bugs.linaro.org/show_bug.cgi?id=4068
37# https://source.android.com/setup/start/build-numbers
38# Here we set it to 25 first, because Gatekeeper function
39# needs to be supported when set to 26 or above,
40# which we could not boot successfully with the default implementation
41# enabled yet. Will back to set it to the latest number when we have
42# all necessary features supported.
43PRODUCT_SHIPPING_API_LEVEL := 25
44
Vishal Bhoje72c9202015-10-23 18:10:21 +010045# Set custom settings
46DEVICE_PACKAGE_OVERLAYS := device/linaro/hikey/overlay
Sahaj Sarup93980e02018-09-11 13:24:20 +000047ifneq (,$(filter $(TARGET_PRODUCT),hikey960_tv hikey_tv))
48# Set TV Custom Settings
49DEVICE_PACKAGE_OVERLAYS += device/google/atv/overlay
50endif
Vishal Bhoje72c9202015-10-23 18:10:21 +010051
John Stultze113ecc2018-09-11 11:53:35 -070052#Force navkeys on
53PRODUCT_PROPERTY_OVERRIDES += qemu.hw.mainkeys=0
54
Vishal Bhoje72c9202015-10-23 18:10:21 +010055# Add openssh support for remote debugging and job submission
John Stultzd497f632017-05-30 23:51:33 -070056PRODUCT_PACKAGES += ssh sftp scp sshd ssh-keygen sshd_config start-ssh
Dmitry Shmidta95006a2016-03-16 13:23:30 -070057
58# Add wifi-related packages
mukesh agrawal2b2f7d32016-10-05 15:15:15 -070059PRODUCT_PACKAGES += libwpa_client wpa_supplicant hostapd wificond wifilogd
Dmitry Shmidta95006a2016-03-16 13:23:30 -070060PRODUCT_PROPERTY_OVERRIDES += wifi.interface=wlan0 \
61 wifi.supplicant_scan_interval=15
Vishal Bhoje72c9202015-10-23 18:10:21 +010062
63# Build and run only ART
64PRODUCT_RUNTIMES := runtime_libart_default
65
Amit Pundiraf628c22016-11-02 16:37:00 +080066# Build default bluetooth a2dp and usb audio HALs
67PRODUCT_PACKAGES += audio.a2dp.default \
John Stultz52ebc462016-06-03 11:37:21 -070068 audio.usb.default \
69 audio.r_submix.default \
70 tinyplay
Vishal Bhoje72c9202015-10-23 18:10:21 +010071
Mikhail Naganov692a6d72016-11-11 16:36:02 -080072PRODUCT_PACKAGES += \
John Stultzd013ca82018-04-11 12:17:34 -070073 android.hardware.audio@2.0-service \
Mikhail Naganovcff48dd2016-11-21 15:22:21 -080074 android.hardware.audio@2.0-impl \
75 android.hardware.audio.effect@2.0-impl \
76 android.hardware.broadcastradio@1.0-impl \
77 android.hardware.soundtrigger@2.0-impl
Mikhail Naganov692a6d72016-11-11 16:36:02 -080078
John Stultz3424dc32018-04-11 15:37:34 -070079PRODUCT_PACKAGES += vndk_package
80
Jeff Tinkerbc86f722017-01-01 11:02:12 -080081PRODUCT_PACKAGES += \
82 android.hardware.drm@1.0-impl \
Yongqin Liu00573262019-01-04 00:23:39 +080083 android.hardware.drm@1.0-service \
Jeff Tinkerbc86f722017-01-01 11:02:12 -080084
Vishal Bhoje72c9202015-10-23 18:10:21 +010085PRODUCT_PACKAGES += libGLES_android
86
Chia-I Wu075e7772017-04-24 13:49:38 -070087# Graphics HAL
88PRODUCT_PACKAGES += \
89 android.hardware.graphics.allocator@2.0-impl \
John Stultzd013ca82018-04-11 12:17:34 -070090 android.hardware.graphics.allocator@2.0-service \
Chia-I Wu2b614442017-10-19 15:07:35 -070091 android.hardware.graphics.composer@2.1-impl \
John Stultzd013ca82018-04-11 12:17:34 -070092 android.hardware.graphics.composer@2.1-service \
Chia-I Wu075e7772017-04-24 13:49:38 -070093 android.hardware.graphics.mapper@2.0-impl
94
John Stultz6dc5ce52017-11-01 18:58:15 -070095ifeq ($(HIKEY_USE_DRM_HWCOMPOSER), true)
96 BOARD_USES_DRM_HWCOMPOSER := true
97 PRODUCT_PACKAGES += hwcomposer.drm
98endif
99
Dmitry Shmidt4cb6c2b2017-08-29 15:05:18 -0700100# Memtrack
101PRODUCT_PACKAGES += memtrack.default \
102 android.hardware.memtrack@1.0-service \
103 android.hardware.memtrack@1.0-impl
104
John Stultzd497f632017-05-30 23:51:33 -0700105ifeq ($(HIKEY_USE_LEGACY_TI_BLUETOOTH), true)
106PRODUCT_PACKAGES += android.hardware.bluetooth@1.0-service.hikey uim
107else
108PRODUCT_PACKAGES += android.hardware.bluetooth@1.0-service.btlinux
109endif
110
John Stultz7266c5f2016-06-09 14:18:57 -0700111# PowerHAL
John Stultzc1875b52018-11-20 16:15:20 -0800112PRODUCT_PACKAGES += \
113 android.hardware.power@1.1-impl \
114 android.hardware.power@1.1-service.hikey-common
John Stultz7266c5f2016-06-09 14:18:57 -0700115
Hridya Valsarajua4fe7ca2016-12-02 16:02:28 -0800116#GNSS HAL
117PRODUCT_PACKAGES += \
118 android.hardware.gnss@1.0-impl
119
Janis Danisevskisfa3896c2016-11-22 10:45:49 +0000120# Keymaster HAL
121PRODUCT_PACKAGES += \
John Stultzd013ca82018-04-11 12:17:34 -0700122 android.hardware.keymaster@3.0-impl \
123 android.hardware.keymaster@3.0-service
124
Janis Danisevskisfa3896c2016-11-22 10:45:49 +0000125
Ben Fennema52301e42017-10-17 12:24:04 -0700126# Sensor HAL
127ifneq ($(TARGET_SENSOR_MEZZANINE),)
128TARGET_USES_NANOHUB_SENSORHAL := true
129NANOHUB_SENSORHAL_LID_STATE_ENABLED := true
130NANOHUB_SENSORHAL_SENSORLIST := $(LOCAL_PATH)/sensorhal/sensorlist_$(TARGET_SENSOR_MEZZANINE).cpp
131NANOHUB_SENSORHAL_DIRECT_REPORT_ENABLED := true
132NANOHUB_SENSORHAL_DYNAMIC_SENSOR_EXT_ENABLED := true
133
134PRODUCT_PACKAGES += \
135 context_hub.default \
136 android.hardware.sensors@1.0-service \
137 android.hardware.sensors@1.0-impl \
138 android.hardware.contexthub@1.0-service \
Dmitry Shmidtee5f1b52018-01-19 09:28:08 -0800139 android.hardware.contexthub@1.0-impl
Ben Fennema52301e42017-10-17 12:24:04 -0700140
141# Nanohub tools
142PRODUCT_PACKAGES += stm32_flash nanoapp_cmd nanotool
143
144PRODUCT_COPY_FILES += \
145 device/linaro/hikey/init.common.nanohub.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.nanohub.rc
Denis Cioccab92f2ef2017-10-31 17:18:50 +0800146
147# Copy sensors config file(s)
148PRODUCT_COPY_FILES += \
John Stultz11ddf0b2018-04-11 12:25:32 -0700149 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
150 frameworks/native/data/etc/android.hardware.sensor.ambient_temperature.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.ambient_temperature.xml \
151 frameworks/native/data/etc/android.hardware.sensor.barometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.barometer.xml \
152 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
153 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
154 frameworks/native/data/etc/android.hardware.sensor.hifi_sensors.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.hifi_sensors.xml \
155 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
156 frameworks/native/data/etc/android.hardware.sensor.relative_humidity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.relative_humidity.xml \
157 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
158 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml
Denis Cioccab92f2ef2017-10-31 17:18:50 +0800159
160# Argonkey VL53L0X proximity driver is not available yet. So we are going to copy conf file for neonkey only
161ifeq ($(TARGET_SENSOR_MEZZANINE),neonkey)
162PRODUCT_COPY_FILES += \
John Stultz11ddf0b2018-04-11 12:25:32 -0700163 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml
Denis Cioccab92f2ef2017-10-31 17:18:50 +0800164endif
Sahaj Sarup9a61afa2017-11-07 20:58:21 +0000165
166# VR HAL
167PRODUCT_COPY_FILES += \
168 frameworks/native/services/vr/virtual_touchpad/idc/vr-virtual-touchpad-1.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/vr-virtual-touchpad-1.idc \
169 frameworks/native/data/etc/android.hardware.vr.high_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vr.high_performance.xml \
170 frameworks/native/data/etc/android.hardware.vr.headtracking-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vr.headtracking.xml
171
172PRODUCT_PACKAGES += \
173 vr.default \
174 android.hardware.vr@1.0-service \
175 android.hardware.vr@1.0-impl
176
Ben Fennema52301e42017-10-17 12:24:04 -0700177endif
178
Sahaj Sarup93980e02018-09-11 13:24:20 +0000179
180ifneq (,$(filter $(TARGET_PRODUCT),hikey960_tv hikey_tv))
181# TV Specific Packages
182PRODUCT_PACKAGES += \
183 TvSettings \
184 LiveTv \
185 google-tv-pairing-protocol \
186 TvProvision \
187 LeanbackSampleApp \
188 TvSampleLeanbackLauncher \
189 TvProvider \
190 SettingsIntelligence \
191 tv_input.default \
192 com.android.media.tv.remoteprovider \
193 InputDevices
194PRODUCT_PROPERTY_OVERRIDES += ro.sf.lcd_density=260
195else
196
Sunny Goyald8abea82018-05-29 16:18:14 -0700197# Use Launcher3QuickStep
198PRODUCT_PACKAGES += Launcher3QuickStep
Sahaj Sarup93980e02018-09-11 13:24:20 +0000199PRODUCT_PROPERTY_OVERRIDES += ro.sf.lcd_density=160
200endif
Sahaj Sarupaef8e3f2017-08-22 14:02:42 +0530201
Vishal Bhoje72c9202015-10-23 18:10:21 +0100202# Copy hardware config file(s)
203PRODUCT_COPY_FILES += \
John Stultz11ddf0b2018-04-11 12:25:32 -0700204 device/linaro/hikey/etc/permissions/android.hardware.screen.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.screen.xml \
Yongqin Liu5bd58a72018-12-28 15:14:02 +0800205 device/linaro/hikey/etc/permissions/android.software.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.xml \
John Stultz11ddf0b2018-04-11 12:25:32 -0700206 frameworks/native/data/etc/android.software.cts.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.cts.xml \
207 frameworks/native/data/etc/android.software.app_widgets.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.app_widgets.xml \
208 frameworks/native/data/etc/android.software.backup.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.backup.xml \
209 frameworks/native/data/etc/android.software.voice_recognizers.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.voice_recognizers.xml \
210 frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
211 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
212 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
213 frameworks/native/data/etc/android.software.device_admin.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_admin.xml
Vishal Bhoje72c9202015-10-23 18:10:21 +0100214
Vishal Bhoje72c9202015-10-23 18:10:21 +0100215# Include BT modules
John Stultz58bae752018-10-18 13:13:24 -0700216$(call inherit-product, device/linaro/hikey/wpan/ti-wpan-products.mk)
Vishal Bhoje72c9202015-10-23 18:10:21 +0100217
Vishal Bhoje72c9202015-10-23 18:10:21 +0100218PRODUCT_COPY_FILES += \
John Stultz11ddf0b2018-04-11 12:25:32 -0700219 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
220 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
221 frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
222 frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \
223 device/linaro/hikey/wpa_supplicant.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant.conf \
Dmitry Shmidt9dd7b9c2018-02-01 10:09:39 -0800224 $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \
225 $(LOCAL_PATH)/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf
Eric Laurentc313d912017-04-20 11:45:21 -0700226
227# audio policy configuration
228USE_XML_AUDIO_POLICY_CONF := 1
229PRODUCT_COPY_FILES += \
230 device/linaro/hikey/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
231 frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
232 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
233 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \
234 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
235 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml
Vishal Bhoje72c9202015-10-23 18:10:21 +0100236
237# Copy media codecs config file
Eric Laurent3051d9e2016-06-10 14:37:37 -0700238PRODUCT_COPY_FILES += \
John Stultz11ddf0b2018-04-11 12:25:32 -0700239 device/linaro/hikey/etc/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
240 frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml
John Stultz98e17f62018-04-11 15:33:22 -0700241
242PRODUCT_PACKAGES += \
243 android.hardware.renderscript@1.0.vndk-sp\
244 android.hardware.graphics.composer@2.1.vndk-sp\
245 android.hardware.graphics.allocator@2.0.vndk-sp\
246 android.hardware.graphics.mapper@2.0.vndk-sp\
247 android.hardware.graphics.common@1.0.vndk-sp\
248 libvndksupport.vndk-sp\
249 libbinder.vndk-sp\
250 libhwbinder.vndk-sp\
251 libbase.vndk-sp\
252 libfmq.vndk-sp\
253 libcutils.vndk-sp\
254 libhardware.vndk-sp\
255 libhidlbase.vndk-sp\
256 libhidltransport.vndk-sp\
257 libui.vndk-sp\
258 libutils.vndk-sp\
259 libc++.vndk-sp\
260 libRS_internal.vndk-sp\
261 libRSDriver.vndk-sp\
262 libRSCpuRef.vndk-sp\
263 libbcinfo.vndk-sp\
264 libblas.vndk-sp\
265 libft2.vndk-sp\
266 libpng.vndk-sp\
267 libcompiler_rt.vndk-sp\
268 libbacktrace.vndk-sp\
269 libunwind.vndk-sp\
270 libunwindstack.vndk-sp\
271 liblzma.vndk-sp\
272 libion.vndk-sp\