blob: 4c8a39389eb74509a2ba67e600b80ba5b543b0d1
1 | # Copyright (C) 2011 Amlogic Inc |
2 | # |
3 | # Licensed under the Apache License, Version 2.0 (the "License"); |
4 | # you may not use this file except in compliance with the License. |
5 | # You may obtain a copy of the License at |
6 | # |
7 | # http://www.apache.org/licenses/LICENSE-2.0 |
8 | # |
9 | # Unless required by applicable law or agreed to in writing, software |
10 | # distributed under the License is distributed on an "AS IS" BASIS, |
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
12 | # See the License for the specific language governing permissions and |
13 | # limitations under the License. |
14 | |
15 | # |
16 | # This file is the build configuration for a full Android |
17 | # build for Meson reference board. |
18 | # |
19 | |
20 | # Dynamic enable start/stop zygote_secondary in 64bits |
21 | # and 32bit system, default closed |
22 | #TARGET_DYNAMIC_ZYGOTE_SECONDARY_ENABLE := true |
23 | |
24 | # Inherit from those products. Most specific first. |
25 | ifeq ($(ANDROID_BUILD_TYPE), 64) |
26 | ifeq ($(TARGET_DYNAMIC_ZYGOTE_SECONDARY_ENABLE), true) |
27 | $(call inherit-product, device/amlogic/common/dynamic_zygote_seondary/dynamic_zygote_64_bit.mk) |
28 | else |
29 | $(call inherit-product, build/target/product/core_64_bit.mk) |
30 | endif |
31 | endif |
32 | |
33 | $(call inherit-product, device/amlogic/common/products/tv/product_tv.mk) |
34 | $(call inherit-product, device/amlogic/darwin/device.mk) |
35 | $(call inherit-product-if-exists, vendor/google/products/gms.mk) |
36 | |
37 | # darwin: |
38 | |
39 | |
40 | PRODUCT_PROPERTY_OVERRIDES += \ |
41 | sys.fb.bits=32 \ |
42 | ro.hdmi.device_type=5 |
43 | |
44 | PRODUCT_NAME := darwin |
45 | PRODUCT_DEVICE := darwin |
46 | PRODUCT_BRAND := Amlogic |
47 | PRODUCT_MODEL := Darwin |
48 | PRODUCT_MANUFACTURER := Amlogic |
49 | |
50 | TARGET_KERNEL_BUILT_FROM_SOURCE := false |
51 | |
52 | PRODUCT_TYPE := tv |
53 | |
54 | WITH_LIBPLAYER_MODULE := false |
55 | |
56 | OTA_UP_PART_NUM_CHANGED := true |
57 | |
58 | BOARD_AML_VENDOR_PATH := vendor/amlogic/common/ |
59 | |
60 | BOARD_WIDEVINE_TA_PATH := vendor/amlogic/ |
61 | |
62 | #AB_OTA_UPDATER :=true |
63 | BUILD_WITH_AVB := true |
64 | |
65 | ifeq ($(BUILD_WITH_AVB),true) |
66 | BOARD_AVB_ENABLE := true |
67 | #BOARD_BUILD_DISABLED_VBMETAIMAGE := true |
68 | BOARD_AVB_ALGORITHM := SHA256_RSA2048 |
69 | BOARD_AVB_KEY_PATH := device/amlogic/common/security/testkey_rsa2048.pem |
70 | BOARD_AVB_ROLLBACK_INDEX := 0 |
71 | endif |
72 | |
73 | ifeq ($(AB_OTA_UPDATER),true) |
74 | AB_OTA_PARTITIONS := \ |
75 | boot \ |
76 | system \ |
77 | vendor \ |
78 | odm |
79 | |
80 | TARGET_BOOTLOADER_CONTROL_BLOCK := true |
81 | TARGET_NO_RECOVERY := true |
82 | ifneq ($(BUILD_WITH_AVB),true) |
83 | TARGET_PARTITION_DTSI := partition_mbox_ab.dtsi |
84 | else |
85 | TARGET_PARTITION_DTSI := partition_mbox_ab_avb.dtsi |
86 | endif |
87 | else |
88 | TARGET_NO_RECOVERY := false |
89 | |
90 | BOARD_BUILD_SYSTEM_ROOT_IMAGE := true |
91 | |
92 | ifeq ($(ANDROID_BUILD_TYPE), 64) |
93 | TARGET_PARTITION_DTSI := partition_mbox_normal_P_64.dtsi |
94 | else |
95 | TARGET_PARTITION_DTSI := partition_mbox_normal_P_32.dtsi |
96 | endif |
97 | |
98 | ifneq ($(BUILD_WITH_AVB),true) |
99 | TARGET_FIRMWARE_DTSI := firmware_normal.dtsi |
100 | else |
101 | ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) |
102 | ifeq ($(BOARD_BUILD_DISABLED_VBMETAIMAGE), true) |
103 | TARGET_FIRMWARE_DTSI := firmware_system.dtsi |
104 | else |
105 | TARGET_FIRMWARE_DTSI := firmware_avb_system.dtsi |
106 | endif |
107 | else |
108 | ifeq ($(BOARD_BUILD_DISABLED_VBMETAIMAGE), true) |
109 | TARGET_FIRMWARE_DTSI := firmware_normal.dtsi |
110 | else |
111 | TARGET_FIRMWARE_DTSI := firmware_avb.dtsi |
112 | endif |
113 | endif |
114 | endif |
115 | |
116 | BOARD_CACHEIMAGE_PARTITION_SIZE := 69206016 |
117 | BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4 |
118 | endif |
119 | |
120 | #########Support compiling out encrypted zip/aml_upgrade_package.img directly |
121 | #PRODUCT_BUILD_SECURE_BOOT_IMAGE_DIRECTLY := true |
122 | PRODUCT_AML_SECUREBOOT_USERKEY := ./uboot/board/amlogic/txlx_t962e_r321_v1/aml-user-key.sig |
123 | PRODUCT_AML_SECUREBOOT_SIGNTOOL := ./uboot/fip/txlx/aml_encrypt_txlx |
124 | PRODUCT_AML_SECUREBOOT_SIGNBOOTLOADER := $(PRODUCT_AML_SECUREBOOT_SIGNTOOL) --bootsig \ |
125 | --amluserkey $(PRODUCT_AML_SECUREBOOT_USERKEY) \ |
126 | --aeskey enable |
127 | PRODUCT_AML_SECUREBOOT_SIGNIMAGE := $(PRODUCT_AML_SECUREBOOT_SIGNTOOL) --imgsig \ |
128 | --amluserkey $(PRODUCT_AML_SECUREBOOT_USERKEY) |
129 | PRODUCT_AML_SECUREBOOT_SIGBIN := $(PRODUCT_AML_SECUREBOOT_SIGNTOOL) --binsig \ |
130 | --amluserkey $(PRODUCT_AML_SECUREBOOT_USERKEY) |
131 | |
132 | ######################################################################## |
133 | # |
134 | # ATV |
135 | # |
136 | ######################################################################## |
137 | ifneq ($(BOARD_COMPILE_ATV),false) |
138 | BOARD_COMPILE_CTS := true |
139 | TARGET_BUILD_GOOGLE_ATV:= true |
140 | DONT_DEXPREOPT_PREBUILTS:= true |
141 | endif |
142 | ######################################################################## |
143 | |
144 | ######################################################################## |
145 | # |
146 | # Live TV |
147 | # |
148 | ######################################################################## |
149 | ifneq ($(TARGET_BUILD_GOOGLE_ATV),true) |
150 | TARGET_BUILD_LIVETV := true |
151 | endif |
152 | |
153 | ######################################################################## |
154 | # |
155 | # CTS |
156 | # |
157 | ######################################################################## |
158 | ifeq ($(BOARD_COMPILE_CTS),true) |
159 | BOARD_WIDEVINE_OEMCRYPTO_LEVEL := 1 |
160 | BOARD_PLAYREADY_LEVEL := 1 |
161 | TARGET_BUILD_CTS:= true |
162 | TARGET_BUILD_NETFLIX:= true |
163 | endif |
164 | ######################################################################## |
165 | |
166 | ######################################################################### |
167 | # |
168 | # Dm-Verity |
169 | # |
170 | ######################################################################### |
171 | #BUILD_WITH_DM_VERITY := true |
172 | #TARGET_USE_SECURITY_DM_VERITY_MODE_WITH_TOOL := true |
173 | ifeq ($(TARGET_USE_SECURITY_DM_VERITY_MODE_WITH_TOOL), true) |
174 | BUILD_WITH_DM_VERITY := true |
175 | endif # ifeq ($(TARGET_USE_SECURITY_DM_VERITY_MODE_WITH_TOOL), true) |
176 | ifeq ($(BUILD_WITH_DM_VERITY), true) |
177 | PRODUCT_PACKAGES += \ |
178 | libfs_mgr \ |
179 | fs_mgr \ |
180 | slideshow |
181 | endif |
182 | |
183 | ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) |
184 | PRODUCT_COPY_FILES += \ |
185 | device/amlogic/darwin/fstab.system.amlogic:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.amlogic |
186 | else |
187 | ifneq ($(BOARD_USES_RECOVERY_AS_BOOT), true) |
188 | PRODUCT_COPY_FILES += \ |
189 | device/amlogic/darwin/fstab.amlogic:root/fstab.amlogic |
190 | else |
191 | PRODUCT_COPY_FILES += \ |
192 | device/amlogic/darwin/fstab.amlogic:recovery/root/fstab.amlogic |
193 | endif |
194 | endif |
195 | |
196 | ######################################################################### |
197 | # |
198 | # WiFi |
199 | # |
200 | ######################################################################### |
201 | |
202 | WIFI_MODULE := bcm4356 |
203 | WIFI_BUILD_IN := true |
204 | include device/amlogic/common/wifi.mk |
205 | |
206 | # Change this to match target country |
207 | # 11 North America; 14 Japan; 13 rest of world |
208 | PRODUCT_DEFAULT_WIFI_CHANNELS := 11 |
209 | #PRODUCT_COPY_FILES += \ |
210 | # $(LOCAL_PATH)/wifi/config.txt:system/etc/wifi/4354/config.txt |
211 | |
212 | ######################################################################### |
213 | # |
214 | # Bluetooth |
215 | # |
216 | ######################################################################### |
217 | |
218 | BOARD_HAVE_BLUETOOTH := true |
219 | BCMBT_SUPPORT := true |
220 | #MULTI_BLUETOOTH_SUPPORT := true |
221 | BCM_BLUETOOTH_LPM_ENABLE := true |
222 | include device/amlogic/common/bluetooth.mk |
223 | |
224 | |
225 | ######################################################################### |
226 | # |
227 | # ConsumerIr |
228 | # |
229 | ######################################################################### |
230 | |
231 | #PRODUCT_PACKAGES += \ |
232 | # consumerir.amlogic \ |
233 | # SmartRemote |
234 | #PRODUCT_COPY_FILES += \ |
235 | # frameworks/native/data/etc/android.hardware.consumerir.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.consumerir.xml |
236 | |
237 | |
238 | #PRODUCT_PACKAGES += libbt-vendor |
239 | |
240 | ifeq ($(SUPPORT_HDMIIN),true) |
241 | PRODUCT_PACKAGES += \ |
242 | libhdmiin \ |
243 | HdmiIn |
244 | endif |
245 | |
246 | PRODUCT_COPY_FILES += \ |
247 | frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml |
248 | |
249 | # Audio |
250 | # |
251 | BOARD_ALSA_AUDIO=tiny |
252 | include device/amlogic/common/audio.mk |
253 | |
254 | ######################################################################### |
255 | # |
256 | # Camera |
257 | # |
258 | ######################################################################### |
259 | |
260 | ifneq ($(TARGET_BUILD_CTS), true) |
261 | PRODUCT_COPY_FILES += \ |
262 | frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ |
263 | frameworks/native/data/etc/android.hardware.camera.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.xml |
264 | endif |
265 | |
266 | |
267 | |
268 | ######################################################################### |
269 | # |
270 | # PlayReady DRM |
271 | # |
272 | ######################################################################### |
273 | #export BOARD_PLAYREADY_LEVEL=3 for PlayReady+NOTVP |
274 | #export BOARD_PLAYREADY_LEVEL=1 for PlayReady+OPTEE+TVP |
275 | ######################################################################### |
276 | # |
277 | # Verimatrix DRM |
278 | ########################################################################## |
279 | #verimatrix web |
280 | BUILD_WITH_VIEWRIGHT_WEB := false |
281 | #verimatrix stb |
282 | BUILD_WITH_VIEWRIGHT_STB := false |
283 | ######################################################################### |
284 | |
285 | |
286 | #DRM Widevine |
287 | ifeq ($(BOARD_WIDEVINE_OEMCRYPTO_LEVEL),) |
288 | BOARD_WIDEVINE_OEMCRYPTO_LEVEL := 3 |
289 | endif |
290 | |
291 | ifeq ($(BOARD_WIDEVINE_OEMCRYPTO_LEVEL), 1) |
292 | TARGET_USE_OPTEEOS := true |
293 | TARGET_ENABLE_TA_SIGN := false |
294 | TARGET_USE_HW_KEYMASTER := true |
295 | endif |
296 | |
297 | $(call inherit-product, device/amlogic/common/media.mk) |
298 | |
299 | ######################################################################### |
300 | # |
301 | # Languages |
302 | # |
303 | ######################################################################### |
304 | |
305 | # For all locales, $(call inherit-product, build/target/product/languages_full.mk) |
306 | PRODUCT_LOCALES := en_US en_AU en_IN fr_FR it_IT es_ES et_EE de_DE nl_NL cs_CZ pl_PL ja_JP \ |
307 | zh_TW zh_CN zh_HK ru_RU ko_KR nb_NO es_US da_DK el_GR tr_TR pt_PT pt_BR rm_CH sv_SE bg_BG \ |
308 | ca_ES en_GB fi_FI hi_IN hr_HR hu_HU in_ID iw_IL lt_LT lv_LV ro_RO sk_SK sl_SI sr_RS uk_UA \ |
309 | vi_VN tl_PH ar_EG fa_IR th_TH sw_TZ ms_MY af_ZA zu_ZA am_ET hi_IN en_XA ar_XB fr_CA km_KH \ |
310 | lo_LA ne_NP si_LK mn_MN hy_AM az_AZ ka_GE my_MM mr_IN ml_IN is_IS mk_MK ky_KG eu_ES gl_ES \ |
311 | bn_BD ta_IN kn_IN te_IN uz_UZ ur_PK kk_KZ |
312 | |
313 | ################################################################################# |
314 | # |
315 | # PPPOE |
316 | # |
317 | ################################################################################# |
318 | #ifneq ($(TARGET_BUILD_GOOGLE_ATV), true) |
319 | #BUILD_WITH_PPPOE := false |
320 | #endif |
321 | |
322 | ifeq ($(BUILD_WITH_PPPOE),true) |
323 | PRODUCT_PACKAGES += \ |
324 | PPPoE \ |
325 | libpppoejni \ |
326 | libpppoe \ |
327 | pppoe_wrapper \ |
328 | pppoe \ |
329 | droidlogic.frameworks.pppoe \ |
330 | droidlogic.external.pppoe \ |
331 | droidlogic.software.pppoe.xml |
332 | PRODUCT_PROPERTY_OVERRIDES += \ |
333 | ro.platform.has.pppoe=true |
334 | endif |
335 | |
336 | ################################################################################# |
337 | # |
338 | # DEFAULT LOWMEMORYKILLER CONFIG |
339 | # |
340 | ################################################################################# |
341 | BUILD_WITH_LOWMEM_COMMON_CONFIG := true |
342 | |
343 | BOARD_USES_USB_PM := true |
344 | |
345 | |
346 | include device/amlogic/common/software.mk |
347 | ifeq ($(TARGET_BUILD_GOOGLE_ATV),true) |
348 | PRODUCT_PROPERTY_OVERRIDES += \ |
349 | ro.sf.lcd_density=320 |
350 | else |
351 | PRODUCT_PROPERTY_OVERRIDES += \ |
352 | ro.sf.lcd_density=240 |
353 | endif |
354 | |
355 | # hdcp_tx22 |
356 | PRODUCT_COPY_FILES += \ |
357 | device/amlogic/common/hdcp_tx22/hdcp_tx22:vendor/bin/hdcp_tx22 |
358 | |
359 | ######################################################################### |
360 | # |
361 | # A/B update |
362 | # |
363 | ######################################################################### |
364 | ifeq ($(BUILD_WITH_AVB),true) |
365 | PRODUCT_PACKAGES += \ |
366 | bootctrl.avb \ |
367 | libavb_user |
368 | endif |
369 | |
370 | ifeq ($(AB_OTA_UPDATER),true) |
371 | PRODUCT_PACKAGES += \ |
372 | bootctrl.amlogic \ |
373 | bootctl |
374 | |
375 | PRODUCT_PACKAGES += \ |
376 | update_engine \ |
377 | update_engine_client \ |
378 | update_verifier \ |
379 | delta_generator \ |
380 | brillo_update_payload \ |
381 | android.hardware.boot@1.0-impl \ |
382 | android.hardware.boot@1.0-service |
383 | endif |
384 | |
385 | include device/amlogic/common/gpu/mali450-user-arm64.mk |
386 | |
387 |