blob: 087c084bbff4baf14ea89b9684a3423cf966a869
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, device/amlogic/darwin/vendor_prop.mk) |
36 | $(call inherit-product-if-exists, vendor/google/products/gms.mk) |
37 | |
38 | # darwin: |
39 | |
40 | |
41 | PRODUCT_PROPERTY_OVERRIDES += \ |
42 | sys.fb.bits=32 \ |
43 | ro.hdmi.device_type=5 |
44 | |
45 | PRODUCT_NAME := darwin |
46 | PRODUCT_DEVICE := darwin |
47 | PRODUCT_BRAND := Amlogic |
48 | PRODUCT_MODEL := Darwin |
49 | PRODUCT_MANUFACTURER := Amlogic |
50 | |
51 | TARGET_KERNEL_BUILT_FROM_SOURCE := false |
52 | |
53 | PRODUCT_TYPE := tv |
54 | |
55 | WITH_LIBPLAYER_MODULE := false |
56 | |
57 | OTA_UP_PART_NUM_CHANGED := true |
58 | |
59 | BOARD_AML_VENDOR_PATH := vendor/amlogic/common/ |
60 | |
61 | BOARD_WIDEVINE_TA_PATH := vendor/amlogic/ |
62 | |
63 | #AB_OTA_UPDATER :=true |
64 | BUILD_WITH_AVB := true |
65 | |
66 | ifeq ($(BUILD_WITH_AVB),true) |
67 | BOARD_AVB_ENABLE := true |
68 | #BOARD_BUILD_DISABLED_VBMETAIMAGE := true |
69 | BOARD_AVB_ALGORITHM := SHA256_RSA2048 |
70 | BOARD_AVB_KEY_PATH := device/amlogic/common/security/testkey_rsa2048.pem |
71 | BOARD_AVB_ROLLBACK_INDEX := 0 |
72 | endif |
73 | |
74 | ifeq ($(AB_OTA_UPDATER),true) |
75 | AB_OTA_PARTITIONS := \ |
76 | boot \ |
77 | system \ |
78 | vendor \ |
79 | odm |
80 | |
81 | TARGET_BOOTLOADER_CONTROL_BLOCK := true |
82 | TARGET_NO_RECOVERY := true |
83 | ifneq ($(BUILD_WITH_AVB),true) |
84 | TARGET_PARTITION_DTSI := partition_mbox_ab.dtsi |
85 | else |
86 | TARGET_PARTITION_DTSI := partition_mbox_ab_avb.dtsi |
87 | endif |
88 | else |
89 | TARGET_NO_RECOVERY := false |
90 | |
91 | BOARD_BUILD_SYSTEM_ROOT_IMAGE := true |
92 | |
93 | ifeq ($(ANDROID_BUILD_TYPE), 64) |
94 | TARGET_PARTITION_DTSI := partition_mbox_normal_P_64.dtsi |
95 | else |
96 | TARGET_PARTITION_DTSI := partition_mbox_normal_P_32.dtsi |
97 | endif |
98 | |
99 | ifneq ($(BUILD_WITH_AVB),true) |
100 | TARGET_FIRMWARE_DTSI := firmware_normal.dtsi |
101 | else |
102 | ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) |
103 | ifeq ($(BOARD_BUILD_DISABLED_VBMETAIMAGE), true) |
104 | TARGET_FIRMWARE_DTSI := firmware_system.dtsi |
105 | else |
106 | TARGET_FIRMWARE_DTSI := firmware_avb_system.dtsi |
107 | endif |
108 | else |
109 | ifeq ($(BOARD_BUILD_DISABLED_VBMETAIMAGE), true) |
110 | TARGET_FIRMWARE_DTSI := firmware_normal.dtsi |
111 | else |
112 | TARGET_FIRMWARE_DTSI := firmware_avb.dtsi |
113 | endif |
114 | endif |
115 | endif |
116 | |
117 | BOARD_CACHEIMAGE_PARTITION_SIZE := 69206016 |
118 | BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE := ext4 |
119 | endif |
120 | |
121 | #########Support compiling out encrypted zip/aml_upgrade_package.img directly |
122 | #PRODUCT_BUILD_SECURE_BOOT_IMAGE_DIRECTLY := true |
123 | PRODUCT_AML_SECUREBOOT_USERKEY := ./uboot/board/amlogic/txlx_t962e_r321_v1/aml-user-key.sig |
124 | PRODUCT_AML_SECUREBOOT_SIGNTOOL := ./uboot/fip/txlx/aml_encrypt_txlx |
125 | PRODUCT_AML_SECUREBOOT_SIGNBOOTLOADER := $(PRODUCT_AML_SECUREBOOT_SIGNTOOL) --bootsig \ |
126 | --amluserkey $(PRODUCT_AML_SECUREBOOT_USERKEY) \ |
127 | --aeskey enable |
128 | PRODUCT_AML_SECUREBOOT_SIGNIMAGE := $(PRODUCT_AML_SECUREBOOT_SIGNTOOL) --imgsig \ |
129 | --amluserkey $(PRODUCT_AML_SECUREBOOT_USERKEY) |
130 | PRODUCT_AML_SECUREBOOT_SIGBIN := $(PRODUCT_AML_SECUREBOOT_SIGNTOOL) --binsig \ |
131 | --amluserkey $(PRODUCT_AML_SECUREBOOT_USERKEY) |
132 | |
133 | ######################################################################## |
134 | # |
135 | # ATV |
136 | # |
137 | ######################################################################## |
138 | ifneq ($(BOARD_COMPILE_ATV),false) |
139 | BOARD_COMPILE_CTS := true |
140 | TARGET_BUILD_GOOGLE_ATV:= true |
141 | DONT_DEXPREOPT_PREBUILTS:= true |
142 | endif |
143 | ######################################################################## |
144 | |
145 | ######################################################################## |
146 | # |
147 | # Live TV |
148 | # |
149 | ######################################################################## |
150 | ifneq ($(TARGET_BUILD_GOOGLE_ATV),true) |
151 | TARGET_BUILD_LIVETV := true |
152 | endif |
153 | |
154 | ######################################################################## |
155 | # |
156 | # CTS |
157 | # |
158 | ######################################################################## |
159 | ifeq ($(BOARD_COMPILE_CTS),true) |
160 | BOARD_WIDEVINE_OEMCRYPTO_LEVEL := 1 |
161 | BOARD_PLAYREADY_LEVEL := 1 |
162 | TARGET_BUILD_CTS:= true |
163 | TARGET_BUILD_NETFLIX:= true |
164 | endif |
165 | ######################################################################## |
166 | |
167 | ######################################################################### |
168 | # |
169 | # Dm-Verity |
170 | # |
171 | ######################################################################### |
172 | #BUILD_WITH_DM_VERITY := true |
173 | #TARGET_USE_SECURITY_DM_VERITY_MODE_WITH_TOOL := true |
174 | ifeq ($(TARGET_USE_SECURITY_DM_VERITY_MODE_WITH_TOOL), true) |
175 | BUILD_WITH_DM_VERITY := true |
176 | endif # ifeq ($(TARGET_USE_SECURITY_DM_VERITY_MODE_WITH_TOOL), true) |
177 | ifeq ($(BUILD_WITH_DM_VERITY), true) |
178 | PRODUCT_PACKAGES += \ |
179 | libfs_mgr \ |
180 | fs_mgr \ |
181 | slideshow |
182 | endif |
183 | |
184 | ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE), true) |
185 | PRODUCT_COPY_FILES += \ |
186 | device/amlogic/darwin/fstab.system.amlogic:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.amlogic |
187 | else |
188 | ifneq ($(BOARD_USES_RECOVERY_AS_BOOT), true) |
189 | PRODUCT_COPY_FILES += \ |
190 | device/amlogic/darwin/fstab.amlogic:root/fstab.amlogic |
191 | else |
192 | PRODUCT_COPY_FILES += \ |
193 | device/amlogic/darwin/fstab.amlogic:recovery/root/fstab.amlogic |
194 | endif |
195 | endif |
196 | |
197 | ######################################################################### |
198 | # |
199 | # WiFi |
200 | # |
201 | ######################################################################### |
202 | |
203 | WIFI_MODULE := bcm4356 |
204 | WIFI_BUILD_IN := true |
205 | include device/amlogic/common/wifi.mk |
206 | |
207 | # Change this to match target country |
208 | # 11 North America; 14 Japan; 13 rest of world |
209 | PRODUCT_DEFAULT_WIFI_CHANNELS := 11 |
210 | #PRODUCT_COPY_FILES += \ |
211 | # $(LOCAL_PATH)/wifi/config.txt:system/etc/wifi/4354/config.txt |
212 | |
213 | ######################################################################### |
214 | # |
215 | # Bluetooth |
216 | # |
217 | ######################################################################### |
218 | |
219 | BOARD_HAVE_BLUETOOTH := true |
220 | BCMBT_SUPPORT := true |
221 | #MULTI_BLUETOOTH_SUPPORT := true |
222 | BCM_BLUETOOTH_LPM_ENABLE := true |
223 | include device/amlogic/common/bluetooth.mk |
224 | |
225 | |
226 | ######################################################################### |
227 | # |
228 | # ConsumerIr |
229 | # |
230 | ######################################################################### |
231 | |
232 | #PRODUCT_PACKAGES += \ |
233 | # consumerir.amlogic \ |
234 | # SmartRemote |
235 | #PRODUCT_COPY_FILES += \ |
236 | # frameworks/native/data/etc/android.hardware.consumerir.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.consumerir.xml |
237 | |
238 | |
239 | #PRODUCT_PACKAGES += libbt-vendor |
240 | |
241 | ifeq ($(SUPPORT_HDMIIN),true) |
242 | PRODUCT_PACKAGES += \ |
243 | libhdmiin \ |
244 | HdmiIn |
245 | endif |
246 | |
247 | PRODUCT_COPY_FILES += \ |
248 | frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml |
249 | |
250 | # Audio |
251 | # |
252 | BOARD_ALSA_AUDIO=tiny |
253 | include device/amlogic/common/audio.mk |
254 | |
255 | ######################################################################### |
256 | # |
257 | # Camera |
258 | # |
259 | ######################################################################### |
260 | |
261 | ifneq ($(TARGET_BUILD_CTS), true) |
262 | PRODUCT_COPY_FILES += \ |
263 | frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ |
264 | frameworks/native/data/etc/android.hardware.camera.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.xml |
265 | endif |
266 | |
267 | |
268 | |
269 | ######################################################################### |
270 | # |
271 | # PlayReady DRM |
272 | # |
273 | ######################################################################### |
274 | #export BOARD_PLAYREADY_LEVEL=3 for PlayReady+NOTVP |
275 | #export BOARD_PLAYREADY_LEVEL=1 for PlayReady+OPTEE+TVP |
276 | ######################################################################### |
277 | # |
278 | # Verimatrix DRM |
279 | ########################################################################## |
280 | #verimatrix web |
281 | BUILD_WITH_VIEWRIGHT_WEB := false |
282 | #verimatrix stb |
283 | BUILD_WITH_VIEWRIGHT_STB := false |
284 | ######################################################################### |
285 | |
286 | |
287 | #DRM Widevine |
288 | ifeq ($(BOARD_WIDEVINE_OEMCRYPTO_LEVEL),) |
289 | BOARD_WIDEVINE_OEMCRYPTO_LEVEL := 3 |
290 | endif |
291 | |
292 | ifeq ($(BOARD_WIDEVINE_OEMCRYPTO_LEVEL), 1) |
293 | TARGET_USE_OPTEEOS := true |
294 | TARGET_ENABLE_TA_SIGN := false |
295 | TARGET_USE_HW_KEYMASTER := true |
296 | endif |
297 | |
298 | $(call inherit-product, device/amlogic/common/media.mk) |
299 | |
300 | ######################################################################### |
301 | # |
302 | # Languages |
303 | # |
304 | ######################################################################### |
305 | |
306 | # For all locales, $(call inherit-product, build/target/product/languages_full.mk) |
307 | 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 \ |
308 | 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 \ |
309 | 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 \ |
310 | 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 \ |
311 | 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 \ |
312 | bn_BD ta_IN kn_IN te_IN uz_UZ ur_PK kk_KZ |
313 | |
314 | ################################################################################# |
315 | # |
316 | # PPPOE |
317 | # |
318 | ################################################################################# |
319 | #ifneq ($(TARGET_BUILD_GOOGLE_ATV), true) |
320 | #BUILD_WITH_PPPOE := false |
321 | #endif |
322 | |
323 | ifeq ($(BUILD_WITH_PPPOE),true) |
324 | PRODUCT_PACKAGES += \ |
325 | PPPoE \ |
326 | libpppoejni \ |
327 | libpppoe \ |
328 | pppoe_wrapper \ |
329 | pppoe \ |
330 | droidlogic.frameworks.pppoe \ |
331 | droidlogic.external.pppoe \ |
332 | droidlogic.software.pppoe.xml |
333 | PRODUCT_PROPERTY_OVERRIDES += \ |
334 | ro.platform.has.pppoe=true |
335 | endif |
336 | |
337 | ################################################################################# |
338 | # |
339 | # DEFAULT LOWMEMORYKILLER CONFIG |
340 | # |
341 | ################################################################################# |
342 | BUILD_WITH_LOWMEM_COMMON_CONFIG := true |
343 | |
344 | BOARD_USES_USB_PM := true |
345 | |
346 | |
347 | include device/amlogic/common/software.mk |
348 | ifeq ($(TARGET_BUILD_GOOGLE_ATV),true) |
349 | PRODUCT_PROPERTY_OVERRIDES += \ |
350 | ro.sf.lcd_density=320 |
351 | else |
352 | PRODUCT_PROPERTY_OVERRIDES += \ |
353 | ro.sf.lcd_density=240 |
354 | endif |
355 | |
356 | # hdcp_tx22 |
357 | PRODUCT_COPY_FILES += \ |
358 | device/amlogic/common/hdcp_tx22/hdcp_tx22:vendor/bin/hdcp_tx22 |
359 | |
360 | ######################################################################### |
361 | # |
362 | # A/B update |
363 | # |
364 | ######################################################################### |
365 | ifeq ($(BUILD_WITH_AVB),true) |
366 | PRODUCT_PACKAGES += \ |
367 | bootctrl.avb \ |
368 | libavb_user |
369 | endif |
370 | |
371 | ifeq ($(AB_OTA_UPDATER),true) |
372 | PRODUCT_PACKAGES += \ |
373 | bootctrl.amlogic \ |
374 | bootctl |
375 | |
376 | PRODUCT_PACKAGES += \ |
377 | update_engine \ |
378 | update_engine_client \ |
379 | update_verifier \ |
380 | delta_generator \ |
381 | brillo_update_payload \ |
382 | android.hardware.boot@1.0-impl \ |
383 | android.hardware.boot@1.0-service |
384 | endif |
385 | |
386 | include device/amlogic/common/gpu/mali450-user-arm64.mk |
387 | |
388 |