1#
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
17# Adjust the dalvik heap to be appropriate for a tablet.
18$(call inherit-product-if-exists, frameworks/native/build/tablet-10in-xhdpi-2048-dalvik-heap.mk)
19
20# Set vendor kernel path
21PRODUCT_VENDOR_KERNEL_HEADERS := device/linaro/hikey/kernel-headers
22
23# Set custom settings
24DEVICE_PACKAGE_OVERLAYS := device/linaro/hikey/overlay
25
26# Add openssh support for remote debugging and job submission
27PRODUCT_PACKAGES += ssh sftp scp sshd ssh-keygen sshd_config start-ssh
28
29# Add wifi-related packages
30PRODUCT_PACKAGES += libwpa_client wpa_supplicant hostapd wificond wifilogd
31PRODUCT_PROPERTY_OVERRIDES += wifi.interface=wlan0 \
32                              wifi.supplicant_scan_interval=15
33
34# Build and run only ART
35PRODUCT_RUNTIMES := runtime_libart_default
36
37# Build default bluetooth a2dp and usb audio HALs
38PRODUCT_PACKAGES += audio.a2dp.default \
39		    audio.usb.default \
40		    audio.r_submix.default \
41		    tinyplay
42
43PRODUCT_PACKAGES += \
44    android.hardware.audio@2.0-impl \
45    android.hardware.audio.effect@2.0-impl \
46    android.hardware.broadcastradio@1.0-impl \
47    android.hardware.soundtrigger@2.0-impl
48
49PRODUCT_PACKAGES += \
50    android.hardware.drm@1.0-impl \
51
52PRODUCT_PACKAGES += libGLES_android
53
54# Graphics HAL
55PRODUCT_PACKAGES += \
56    android.hardware.graphics.allocator@2.0-impl \
57    android.hardware.graphics.composer@2.1-impl \
58    android.hardware.graphics.mapper@2.0-impl
59
60# Memtrack
61PRODUCT_PACKAGES += memtrack.default \
62    android.hardware.memtrack@1.0-service \
63    android.hardware.memtrack@1.0-impl
64
65PRODUCT_PACKAGES +=	TIInit_11.8.32.bts \
66			wl18xx-fw-4.bin \
67			wl18xx-conf.bin
68
69
70ifeq ($(HIKEY_USE_LEGACY_TI_BLUETOOTH), true)
71PRODUCT_PACKAGES += android.hardware.bluetooth@1.0-service.hikey uim
72else
73PRODUCT_PACKAGES += android.hardware.bluetooth@1.0-service.btlinux
74endif
75
76# PowerHAL
77PRODUCT_PACKAGES += android.hardware.power@1.0-impl
78
79#GNSS HAL
80PRODUCT_PACKAGES += \
81    android.hardware.gnss@1.0-impl
82
83# Keymaster HAL
84PRODUCT_PACKAGES += \
85    android.hardware.keymaster@3.0-impl
86
87# Sensor HAL
88ifneq ($(TARGET_SENSOR_MEZZANINE),)
89TARGET_USES_NANOHUB_SENSORHAL := true
90NANOHUB_SENSORHAL_LID_STATE_ENABLED := true
91NANOHUB_SENSORHAL_SENSORLIST := $(LOCAL_PATH)/sensorhal/sensorlist_$(TARGET_SENSOR_MEZZANINE).cpp
92NANOHUB_SENSORHAL_DIRECT_REPORT_ENABLED := true
93NANOHUB_SENSORHAL_DYNAMIC_SENSOR_EXT_ENABLED := true
94
95PRODUCT_PACKAGES += \
96    context_hub.default \
97    android.hardware.sensors@1.0-service \
98    android.hardware.sensors@1.0-impl \
99    android.hardware.contexthub@1.0-service \
100    android.hardware.contexthub@1.0-impl
101
102# Nanohub tools
103PRODUCT_PACKAGES += stm32_flash nanoapp_cmd nanotool
104
105PRODUCT_COPY_FILES += \
106    device/linaro/hikey/init.common.nanohub.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.nanohub.rc
107
108# Copy sensors config file(s)
109PRODUCT_COPY_FILES += \
110    frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:system/etc/permissions/android.hardware.sensor.accelerometer.xml \
111    frameworks/native/data/etc/android.hardware.sensor.ambient_temperature.xml:system/etc/permissions/android.hardware.sensor.ambient_temperature.xml \
112    frameworks/native/data/etc/android.hardware.sensor.barometer.xml:system/etc/permissions/android.hardware.sensor.barometer.xml \
113    frameworks/native/data/etc/android.hardware.sensor.compass.xml:system/etc/permissions/android.hardware.sensor.compass.xml \
114    frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:system/etc/permissions/android.hardware.sensor.gyroscope.xml \
115    frameworks/native/data/etc/android.hardware.sensor.hifi_sensors.xml:system/etc/permissions/android.hardware.sensor.hifi_sensors.xml \
116    frameworks/native/data/etc/android.hardware.sensor.light.xml:system/etc/permissions/android.hardware.sensor.light.xml \
117    frameworks/native/data/etc/android.hardware.sensor.relative_humidity.xml:system/etc/permissions/android.hardware.sensor.relative_humidity.xml \
118    frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:system/etc/permissions/android.hardware.sensor.stepcounter.xml \
119    frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:system/etc/permissions/android.hardware.sensor.stepdetector.xml
120
121# Argonkey VL53L0X proximity driver is not available yet. So we are going to copy conf file for neonkey only
122ifeq ($(TARGET_SENSOR_MEZZANINE),neonkey)
123PRODUCT_COPY_FILES += \
124    frameworks/native/data/etc/android.hardware.sensor.proximity.xml:system/etc/permissions/android.hardware.sensor.proximity.xml
125endif
126
127# VR HAL
128PRODUCT_COPY_FILES += \
129    frameworks/native/services/vr/virtual_touchpad/idc/vr-virtual-touchpad-1.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/vr-virtual-touchpad-1.idc \
130    frameworks/native/data/etc/android.hardware.vr.high_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vr.high_performance.xml \
131    frameworks/native/data/etc/android.hardware.vr.headtracking-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vr.headtracking.xml
132
133PRODUCT_PACKAGES += \
134    vr.default \
135    android.hardware.vr@1.0-service \
136    android.hardware.vr@1.0-impl
137
138endif
139
140# Use Launcher3QuickStep
141PRODUCT_PACKAGES += Launcher3QuickStep
142
143# Copy hardware config file(s)
144PRODUCT_COPY_FILES +=  \
145        device/linaro/hikey/etc/permissions/android.hardware.screen.xml:system/etc/permissions/android.hardware.screen.xml \
146        frameworks/native/data/etc/android.software.cts.xml:system/etc/permissions/android.software.cts.xml \
147        frameworks/native/data/etc/android.software.app_widgets.xml:system/etc/permissions/android.software.app_widgets.xml \
148        frameworks/native/data/etc/android.software.backup.xml:system/etc/permissions/android.software.backup.xml \
149        frameworks/native/data/etc/android.software.voice_recognizers.xml:system/etc/permissions/android.software.voice_recognizers.xml \
150        frameworks/native/data/etc/android.hardware.ethernet.xml:system/etc/permissions/android.hardware.ethernet.xml \
151        frameworks/native/data/etc/android.hardware.usb.accessory.xml:system/etc/permissions/android.hardware.usb.accessory.xml \
152        frameworks/native/data/etc/android.hardware.usb.host.xml:system/etc/permissions/android.hardware.usb.host.xml \
153        frameworks/native/data/etc/android.software.device_admin.xml:system/etc/permissions/android.software.device_admin.xml
154
155# Include BT modules
156$(call inherit-product-if-exists, device/linaro/hikey/wpan/ti-wpan-products.mk)
157
158PRODUCT_COPY_FILES += \
159        frameworks/native/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \
160        frameworks/native/data/etc/android.hardware.wifi.direct.xml:system/etc/permissions/android.hardware.wifi.direct.xml \
161        frameworks/native/data/etc/android.hardware.bluetooth.xml:system/etc/permissions/android.hardware.bluetooth.xml \
162        frameworks/native/data/etc/android.hardware.bluetooth_le.xml:system/etc/permissions/android.hardware.bluetooth_le.xml \
163        device/linaro/hikey/wpa_supplicant.conf:system/etc/wifi/wpa_supplicant.conf \
164        $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \
165        $(LOCAL_PATH)/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf
166
167# audio policy configuration
168USE_XML_AUDIO_POLICY_CONF := 1
169PRODUCT_COPY_FILES += \
170    device/linaro/hikey/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
171    frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
172    frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
173    frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \
174    frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
175    frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml
176
177# Copy media codecs config file
178PRODUCT_COPY_FILES += \
179        device/linaro/hikey/etc/media_codecs.xml:system/etc/media_codecs.xml \
180        frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:system/etc/media_codecs_google_audio.xml
181