• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1PRODUCT_SOONG_NAMESPACES += device/amlogic/yukawa
2
3ifeq ($(TARGET_PREBUILT_KERNEL),)
4LOCAL_KERNEL := device/amlogic/yukawa-kernel/Image.lz4-$(TARGET_KERNEL_USE)
5else
6LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
7endif
8
9PRODUCT_COPY_FILES +=  $(LOCAL_KERNEL):kernel
10
11# Build and run only ART
12PRODUCT_RUNTIMES := runtime_libart_default
13
14# Enable updating of APEXes
15$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
16
17# Setup TV Build
18USE_OEM_TV_APP := true
19$(call inherit-product, device/google/atv/products/atv_base.mk)
20PRODUCT_CHARACTERISTICS := tv
21PRODUCT_AAPT_PREF_CONFIG := tvdpi
22PRODUCT_IS_ATV := true
23DEVICE_PACKAGE_OVERLAYS := device/amlogic/yukawa/overlay
24DEVICE_PACKAGE_OVERLAYS += device/google/atv/overlay
25
26PRODUCT_PACKAGES += llkd
27
28# All VNDK libraries (HAL interfaces, VNDK, VNDK-SP, LL-NDK)
29PRODUCT_PACKAGES += vndk_package
30
31PRODUCT_PACKAGES += \
32    android.hardware.health@2.0-service.yukawa \
33    android.hardware.health@2.0-service
34
35PRODUCT_COPY_FILES += \
36    $(LOCAL_PATH)/fstab.yukawa:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.yukawa \
37    $(LOCAL_PATH)/init.yukawa.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.yukawa.rc \
38    $(LOCAL_PATH)/init.yukawa.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.yukawa.usb.rc \
39    $(LOCAL_PATH)/ueventd.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
40    $(LOCAL_PATH)/wpa_supplicant.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant.conf \
41    $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \
42    $(LOCAL_PATH)/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \
43    $(LOCAL_PATH)/bt-wifi-firmware/BCM.hcd:$(TARGET_COPY_OUT_VENDOR)/firmware/brcm/BCM.hcd \
44    $(LOCAL_PATH)/bt-wifi-firmware/fw_bcm4359c0_ag.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/brcm/fw_bcm4359c0_ag.bin \
45    $(LOCAL_PATH)/bt-wifi-firmware/nvram.txt:$(TARGET_COPY_OUT_VENDOR)/firmware/brcm/nvram.txt \
46
47# TV Specific Packages
48PRODUCT_PACKAGES += \
49    LiveTv \
50    google-tv-pairing-protocol \
51    TvProvision \
52    LeanbackSampleApp \
53    TvSampleLeanbackLauncher \
54    tv_input.default \
55    com.android.media.tv.remoteprovider \
56    InputDevices
57
58PRODUCT_PACKAGES += \
59    LeanbackIME
60
61ifeq (,$(filter $(TARGET_PRODUCT),yukawa_gms yukawa_sei510_gms))
62PRODUCT_PACKAGES += \
63    TVLauncherNoGms \
64    TVRecommendationsNoGms
65endif
66
67PRODUCT_PROPERTY_OVERRIDES += ro.sf.lcd_density=320
68
69PRODUCT_PACKAGES +=  libGLES_mali
70PRODUCT_PACKAGES +=  libGLES_android
71
72# Vulkan
73PRODUCT_COPY_FILES += \
74    frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:vendor/etc/permissions/android.hardware.vulkan.version.xml \
75    frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:vendor/etc/permissions/android.hardware.vulkan.compute.xml \
76    frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:vendor/etc/permissions/android.hardware.vulkan.level.xml
77
78PRODUCT_PACKAGES +=  vulkan.yukawa.so
79
80# Bluetooth
81PRODUCT_PACKAGES += android.hardware.bluetooth@1.1-service.btlinux
82
83# Wifi
84PRODUCT_PACKAGES += libwpa_client wpa_supplicant hostapd wificond wifilogd wpa_cli
85PRODUCT_PROPERTY_OVERRIDES += wifi.interface=wlan0 \
86                              wifi.supplicant_scan_interval=15
87
88# Build default bluetooth a2dp and usb audio HALs
89PRODUCT_PACKAGES += \
90    audio.usb.default \
91    audio.primary.yukawa \
92    audio.r_submix.default \
93    audio.bluetooth.default \
94    audio.hearing_aid.default \
95    audio.a2dp.default \
96    tinyplay \
97    tinycap \
98    tinymix \
99    tinypcminfo \
100    cplay
101
102# Video
103PRODUCT_COPY_FILES += \
104    $(LOCAL_PATH)/video_firmware/g12a_h264.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/meson/vdec/g12a_h264.bin \
105    $(LOCAL_PATH)/video_firmware/g12a_hevc_mmu.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/meson/vdec/g12a_hevc_mmu.bin \
106    $(LOCAL_PATH)/video_firmware/g12a_vp9.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/meson/vdec/g12a_vp9.bin \
107    $(LOCAL_PATH)/video_firmware/gxl_mpeg4_5.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/meson/vdec/gxl_mpeg4_5.bin \
108    $(LOCAL_PATH)/video_firmware/gxl_mpeg12.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/meson/vdec/gxl_mpeg12.bin \
109    $(LOCAL_PATH)/video_firmware/gxl_mjpeg.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/meson/vdec/gxl_mjpeg.bin \
110    $(LOCAL_PATH)/video_firmware/sm1_hevc_mmu.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/meson/vdec/sm1_hevc_mmu.bin \
111    $(LOCAL_PATH)/video_firmware/sm1_vp9_mmu.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/meson/vdec/sm1_vp9_mmu.bin
112
113PRODUCT_PACKAGES += \
114    android.hardware.audio@2.0-service \
115    android.hardware.audio@6.0-impl \
116    android.hardware.audio.effect@6.0-impl \
117    android.hardware.soundtrigger@2.2-impl \
118
119# Hardware Composer HAL
120#
121PRODUCT_PACKAGES += \
122    hwcomposer.drm_meson \
123    android.hardware.drm@1.0-impl \
124    android.hardware.drm@1.0-service \
125
126# CEC
127PRODUCT_PACKAGES += \
128    android.hardware.tv.cec@1.0-impl \
129    android.hardware.tv.cec@1.0-service \
130    hdmi_cec.yukawa
131
132PRODUCT_PROPERTY_OVERRIDES += ro.hdmi.device_type=4
133
134PRODUCT_COPY_FILES += \
135    $(LOCAL_PATH)/Generic.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/Generic.kl \
136    frameworks/native/data/etc/android.hardware.hdmi.cec.xml:system/etc/permissions/android.hardware.hdmi.cec.xml
137
138# Memtrack
139PRODUCT_PACKAGES += memtrack.default \
140    android.hardware.memtrack@1.0-service \
141    android.hardware.memtrack@1.0-impl
142
143PRODUCT_PACKAGES += \
144    gralloc.yukawa \
145    android.hardware.graphics.composer@2.1-impl \
146    android.hardware.graphics.composer@2.1-service \
147    android.hardware.graphics.allocator@2.0-service \
148    android.hardware.graphics.allocator@2.0-impl \
149    android.hardware.graphics.mapper@2.0-impl
150
151# PowerHAL
152PRODUCT_PACKAGES += \
153    power.default \
154    android.hardware.power@1.0-impl \
155    android.hardware.power@1.0-service
156
157# ThermalHAL
158PRODUCT_PACKAGES += \
159    thermal.default \
160    android.hardware.thermal@1.0-impl \
161    android.hardware.thermal@1.0-service
162
163# Software Gatekeeper HAL
164PRODUCT_PACKAGES += \
165    android.hardware.gatekeeper@1.0-service.software
166
167PRODUCT_PACKAGES += \
168    android.hardware.keymaster@3.0-impl \
169    android.hardware.keymaster@3.0-service
170
171# USB
172PRODUCT_PACKAGES += \
173    android.hardware.usb@1.1-service
174
175PRODUCT_COPY_FILES +=  \
176    frameworks/native/data/etc/android.software.app_widgets.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.app_widgets.xml \
177    frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
178    frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
179    frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
180    frameworks/native/data/etc/android.software.device_admin.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_admin.xml \
181    frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
182    frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
183    frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
184    frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \
185    frameworks/native/data/etc/android.software.cts.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.cts.xml \
186    frameworks/native/data/etc/android.software.backup.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.backup.xml
187
188# audio policy configuration
189USE_XML_AUDIO_POLICY_CONF := 1
190PRODUCT_COPY_FILES += \
191    device/amlogic/yukawa/audio/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
192    device/amlogic/yukawa/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
193    frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
194    frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
195    frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \
196    frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
197    frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
198    frameworks/av/media/libeffects/data/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml
199
200# Copy media codecs config file
201PRODUCT_COPY_FILES += \
202    device/amlogic/yukawa/media_xml/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
203    frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml
204
205# Enable AVB
206BOARD_AVB_ENABLE := false
207BOARD_AVB_ALGORITHM := SHA256_RSA2048
208BOARD_AVB_ROLLBACK_INDEX := 0
209
210# Enable BT Pairing with button BTN_0 (key 256)
211PRODUCT_PACKAGES += YukawaService YukawaAndroidOverlay
212PRODUCT_COPY_FILES += \
213    device/amlogic/yukawa/Vendor_0001_Product_0001.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/Vendor_0001_Product_0001.kl
214