ath79: update WA/XC devices UBNT_VERSION to 8.7.4
[openwrt/staging/wigyori.git] / package / boot / uboot-sunxi / Makefile
1 #
2 # Copyright (C) 2013-2016 OpenWrt.org
3 # Copyright (C) 2017 Yousong Zhou
4 #
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
7 #
8
9 include $(TOPDIR)/rules.mk
10 include $(INCLUDE_DIR)/kernel.mk
11
12 PKG_VERSION:=2023.04
13
14 PKG_HASH:=e31cac91545ff41b71cec5d8c22afd695645cd6e2a442ccdacacd60534069341
15
16 PKG_MAINTAINER:=Zoltan HERPAI <wigyori@uid0.hu>
17
18 UBOOT_USE_INTREE_DTC:=1
19
20 include $(INCLUDE_DIR)/u-boot.mk
21 include $(INCLUDE_DIR)/package.mk
22
23 define U-Boot/Default
24 BUILD_TARGET:=sunxi
25 UBOOT_IMAGE:=u-boot-sunxi-with-spl.bin
26 UENV:=default
27 HIDDEN:=1
28 endef
29
30 define U-Boot/a64-olinuxino
31 BUILD_SUBTARGET:=cortexa53
32 NAME:=Olimex A64-OLinuXino
33 BUILD_DEVICES:=olimex_a64-olinuxino
34 DEPENDS:=+PACKAGE_u-boot-olimex_a64-olinuxino:trusted-firmware-a-sunxi-a64
35 UENV:=a64
36 ATF:=a64
37 endef
38
39 define U-Boot/a64-olinuxino-emmc
40 BUILD_SUBTARGET:=cortexa53
41 NAME:=Olimex A64-OLinuXino eMMC
42 BUILD_DEVICES:=olimex_a64-olinuxino-emmc
43 DEPENDS:=+PACKAGE_u-boot-olimex_a64-olinuxino-emmc:trusted-firmware-a-sunxi-a64
44 UENV:=a64
45 ATF:=a64
46 endef
47
48 define U-Boot/A10-OLinuXino-Lime
49 BUILD_SUBTARGET:=cortexa8
50 NAME:=A10 OLinuXino LIME
51 BUILD_DEVICES:=olimex_a10-olinuxino-lime
52 endef
53
54 define U-Boot/A13-OLinuXino
55 BUILD_SUBTARGET:=cortexa8
56 NAME:=A13 OlinuXino
57 BUILD_DEVICES:=olimex_a13-olinuxino
58 endef
59
60 define U-Boot/A20-OLinuXino-Lime
61 BUILD_SUBTARGET:=cortexa7
62 NAME:=A20 OLinuXino LIME
63 BUILD_DEVICES:=olimex_a20-olinuxino-lime
64 endef
65
66 define U-Boot/A20-OLinuXino-Lime2
67 BUILD_SUBTARGET:=cortexa7
68 NAME:=A20 OLinuXino LIME2
69 BUILD_DEVICES:=olimex_a20-olinuxino-lime2
70 endef
71
72 define U-Boot/A20-OLinuXino-Lime2-eMMC
73 BUILD_SUBTARGET:=cortexa7
74 NAME:=A20 OLinuXino LIME2 eMMC
75 BUILD_DEVICES:=olimex_a20-olinuxino-lime2-emmc
76 endef
77
78 define U-Boot/A20-OLinuXino_MICRO
79 BUILD_SUBTARGET:=cortexa7
80 NAME:=A20 OLinuXino MICRO
81 BUILD_DEVICES:=olimex_a20-olinuxino-micro
82 endef
83
84 define U-Boot/Bananapi
85 BUILD_SUBTARGET:=cortexa7
86 NAME:=Bananapi
87 BUILD_DEVICES:=lemaker_bananapi
88 endef
89
90 define U-Boot/Bananapro
91 BUILD_SUBTARGET:=cortexa7
92 NAME:=Bananapro
93 BUILD_DEVICES:=lemaker_bananapro
94 endef
95
96 define U-Boot/Cubieboard
97 BUILD_SUBTARGET:=cortexa8
98 NAME:=Cubieboard
99 BUILD_DEVICES:=cubietech_a10-cubieboard
100 endef
101
102 define U-Boot/Cubieboard2
103 BUILD_SUBTARGET:=cortexa7
104 NAME:=Cubieboard2
105 BUILD_DEVICES:=cubietech_cubieboard2
106 endef
107
108 define U-Boot/Cubietruck
109 BUILD_SUBTARGET:=cortexa7
110 NAME:=Cubietruck
111 BUILD_DEVICES:=cubietech_cubietruck
112 endef
113
114 define U-Boot/Hummingbird_A31
115 BUILD_SUBTARGET:=cortexa7
116 NAME:=Hummingbird A31 board
117 endef
118
119 define U-Boot/Marsboard_A10
120 BUILD_SUBTARGET:=cortexa8
121 NAME:=HAOYU Marsboard A10
122 BUILD_DEVICES:=haoyu_a10-marsboard
123 endef
124
125 define U-Boot/Mele_M9
126 BUILD_SUBTARGET:=cortexa7
127 NAME:=Mele M9 (A31)
128 BUILD_DEVICES:=mele_m9
129 endef
130
131 define U-Boot/OLIMEX_A13_SOM
132 BUILD_SUBTARGET:=cortexa8
133 NAME:=Olimex A13 SOM
134 BUILD_DEVICES:=olimex_a13-olimex-som
135 endef
136
137 define U-Boot/Linksprite_pcDuino
138 BUILD_SUBTARGET:=cortexa8
139 NAME:=Linksprite pcDuino
140 BUILD_DEVICES:=linksprite_a10-pcduino
141 endef
142
143 define U-Boot/Linksprite_pcDuino3
144 BUILD_SUBTARGET:=cortexa7
145 NAME:=Linksprite pcDuino3
146 BUILD_DEVICES:=linksprite_pcduino3
147 endef
148
149 define U-Boot/Linksprite_pcDuino3_Nano
150 BUILD_SUBTARGET:=cortexa7
151 NAME:=Linksprite pcDuino3 Nano
152 BUILD_DEVICES:=linksprite_pcduino3-nano
153 endef
154
155 define U-Boot/Lamobo_R1
156 BUILD_SUBTARGET:=cortexa7
157 NAME:=Lamobo R1
158 BUILD_DEVICES:=lamobo_lamobo-r1
159 endef
160
161 define U-Boot/nanopi_m1_plus
162 BUILD_SUBTARGET:=cortexa7
163 NAME:=NanoPi M1 Plus (H3)
164 BUILD_DEVICES:=friendlyarm_nanopi-m1-plus
165 endef
166
167 define U-Boot/zeropi
168 BUILD_SUBTARGET:=cortexa7
169 NAME:=ZeroPi (H3)
170 BUILD_DEVICES:=friendlyarm_zeropi
171 endef
172
173 define U-Boot/nanopi_neo_air
174 BUILD_SUBTARGET:=cortexa7
175 NAME:=U-Boot for NanoPi NEO Air (H3)
176 BUILD_DEVICES:=friendlyarm_nanopi-neo-air
177 endef
178
179 define U-Boot/nanopi_neo
180 BUILD_SUBTARGET:=cortexa7
181 NAME:=U-Boot for NanoPi NEO (H3)
182 BUILD_DEVICES:=friendlyarm_nanopi-neo
183 endef
184
185 define U-Boot/nanopi_r1
186 BUILD_SUBTARGET:=cortexa7
187 NAME:=U-Boot for NanoPi R1 (H3)
188 BUILD_DEVICES:=friendlyarm_nanopi-r1
189 endef
190
191 define U-Boot/orangepi_r1
192 BUILD_SUBTARGET:=cortexa7
193 NAME:=Orange Pi R1 (H2+)
194 BUILD_DEVICES:=xunlong_orangepi-r1
195 endef
196
197 define U-Boot/orangepi_zero
198 BUILD_SUBTARGET:=cortexa7
199 NAME:=Orange Pi Zero (H2+)
200 BUILD_DEVICES:=xunlong_orangepi-zero
201 endef
202
203 define U-Boot/orangepi_one
204 BUILD_SUBTARGET:=cortexa7
205 NAME:=Orange Pi One (H3)
206 BUILD_DEVICES:=xunlong_orangepi-one
207 endef
208
209 define U-Boot/orangepi_one_plus
210 BUILD_SUBTARGET:=cortexa53
211 NAME:=Orange Pi One Plus (H6)
212 DEPENDS:=+PACKAGE_u-boot-orangepi_one_plus:trusted-firmware-a-sunxi-h6
213 BUILD_DEVICES:=xunlong_orangepi-one-plus
214 UENV:=h6
215 ATF:=h6
216 endef
217
218 define U-Boot/orangepi_pc
219 BUILD_SUBTARGET:=cortexa7
220 NAME:=Orange Pi PC (H3)
221 BUILD_DEVICES:=xunlong_orangepi-pc
222 endef
223
224 define U-Boot/orangepi_pc_plus
225 BUILD_SUBTARGET:=cortexa7
226 NAME:=Orange Pi PC Plus (H3)
227 BUILD_DEVICES:=xunlong_orangepi-pc-plus
228 endef
229
230 define U-Boot/orangepi_plus
231 BUILD_SUBTARGET:=cortexa7
232 NAME:=Orange Pi Plus (H3)
233 BUILD_DEVICES:=xunlong_orangepi-plus
234 endef
235
236 define U-Boot/orangepi_2
237 BUILD_SUBTARGET:=cortexa7
238 NAME:=Orange Pi 2 (H3)
239 BUILD_DEVICES:=xunlong_orangepi-2
240 endef
241
242 define U-Boot/pangolin
243 BUILD_SUBTARGET:=cortexa7
244 NAME:=Theobroma A31-yQ7 devboard
245 UENV:=pangolin
246 endef
247
248 define U-Boot/libretech_all_h3_cc_h5
249 BUILD_SUBTARGET:=cortexa53
250 NAME:=Libre Computer ALL-H3-CC H5
251 BUILD_DEVICES:=libretech_all-h3-cc-h5
252 DEPENDS:=+PACKAGE_u-boot-libretech_all_h3_cc_h5:trusted-firmware-a-sunxi-a64
253 UENV:=a64
254 ATF:=a64
255 endef
256
257 define U-Boot/nanopi_neo_plus2
258 BUILD_SUBTARGET:=cortexa53
259 NAME:=NanoPi NEO Plus2 (H5)
260 BUILD_DEVICES:=friendlyarm_nanopi-neo-plus2
261 DEPENDS:=+PACKAGE_u-boot-nanopi_neo_plus2:trusted-firmware-a-sunxi-a64
262 UENV:=a64
263 ATF:=a64
264 endef
265
266 define U-Boot/nanopi_neo2
267 BUILD_SUBTARGET:=cortexa53
268 NAME:=NanoPi NEO2 (H5)
269 BUILD_DEVICES:=friendlyarm_nanopi-neo2
270 DEPENDS:=+PACKAGE_u-boot-nanopi_neo2:trusted-firmware-a-sunxi-a64
271 UENV:=a64
272 ATF:=a64
273 endef
274
275 define U-Boot/nanopi_r1s_h5
276 BUILD_SUBTARGET:=cortexa53
277 NAME:=NanoPi R1S (H5)
278 BUILD_DEVICES:=friendlyarm_nanopi-r1s-h5
279 DEPENDS:=+PACKAGE_u-boot-nanopi_r1s_h5:trusted-firmware-a-sunxi-a64
280 UENV:=a64
281 ATF:=a64
282 endef
283
284 define U-Boot/pine64_plus
285 BUILD_SUBTARGET:=cortexa53
286 NAME:=Pine64 Plus A64
287 BUILD_DEVICES:=pine64_pine64-plus
288 DEPENDS:=+PACKAGE_u-boot-pine64_plus:trusted-firmware-a-sunxi-a64
289 UENV:=a64
290 ATF:=a64
291 endef
292
293 define U-Boot/bananapi_m2_plus_h3
294 BUILD_SUBTARGET:=cortexa7
295 NAME:=Bananapi M2 Plus H3
296 BUILD_DEVICES:=sinovoip_bananapi-m2-plus
297 endef
298
299 define U-Boot/Sinovoip_BPI_M3
300 BUILD_SUBTARGET:=cortexa7
301 NAME:=Bananapi M3
302 BUILD_DEVICES:=sinovoip_bananapi-m3
303 endef
304
305 define U-Boot/sopine_baseboard
306 BUILD_SUBTARGET:=cortexa53
307 NAME:=Sopine Baseboard
308 BUILD_DEVICES:=pine64_sopine-baseboard
309 DEPENDS:=+PACKAGE_u-boot-sopine_baseboard:trusted-firmware-a-sunxi-a64
310 UENV:=a64
311 ATF:=a64
312 endef
313
314
315 define U-Boot/orangepi_zero_plus
316 BUILD_SUBTARGET:=cortexa53
317 NAME:=Xunlong Orange Pi Zero Plus
318 BUILD_DEVICES:=xunlong_orangepi-zero-plus
319 DEPENDS:=+PACKAGE_u-boot-orangepi_zero_plus:trusted-firmware-a-sunxi-a64
320 UENV:=a64
321 ATF:=a64
322 endef
323
324 define U-Boot/orangepi_pc2
325 BUILD_SUBTARGET:=cortexa53
326 NAME:=Xunlong Orange Pi PC2
327 BUILD_DEVICES:=xunlong_orangepi-pc2
328 DEPENDS:=+PACKAGE_u-boot-orangepi_pc2:trusted-firmware-a-sunxi-a64
329 UENV:=a64
330 ATF:=a64
331 endef
332
333 define U-Boot/orangepi_zero2
334 BUILD_SUBTARGET:=cortexa53
335 NAME:=Xunlong Orange Pi Zero2
336 BUILD_DEVICES:=xunlong_orangepi-zero2
337 DEPENDS:=+PACKAGE_u-boot-orangepi_zero2:trusted-firmware-a-sunxi-h616
338 UENV:=h616
339 ATF:=h616
340 endef
341
342 define U-Boot/Bananapi_M2_Ultra
343 BUILD_SUBTARGET:=cortexa7
344 NAME:=Bananapi M2 Ultra
345 BUILD_DEVICES:=sinovoip_bananapi-m2-ultra
346 endef
347
348 define U-Boot/bananapi_m2_berry
349 BUILD_SUBTARGET:=cortexa7
350 NAME:=Bananapi M2 Berry
351 BUILD_DEVICES:=sinovoip_bananapi-m2-berry
352 endef
353
354 define U-Boot/bananapi_p2_zero
355 BUILD_SUBTARGET:=cortexa7
356 NAME:=Bananapi P2 Zero
357 BUILD_DEVICES:=sinovoip_bananapi-p2-zero
358 endef
359
360
361 UBOOT_TARGETS := \
362 a64-olinuxino \
363 a64-olinuxino-emmc \
364 A10-OLinuXino-Lime \
365 A13-OLinuXino \
366 A20-OLinuXino-Lime \
367 A20-OLinuXino-Lime2 \
368 A20-OLinuXino-Lime2-eMMC \
369 A20-OLinuXino_MICRO \
370 bananapi_m2_plus_h3 \
371 Bananapi \
372 bananapi_m2_berry \
373 bananapi_p2_zero \
374 Bananapi_M2_Ultra \
375 Bananapro \
376 Cubieboard \
377 Cubieboard2 \
378 Cubietruck \
379 Hummingbird_A31 \
380 Marsboard_A10 \
381 Mele_M9 \
382 OLIMEX_A13_SOM \
383 Linksprite_pcDuino \
384 Linksprite_pcDuino3 \
385 Linksprite_pcDuino3_Nano \
386 Lamobo_R1 \
387 nanopi_m1_plus \
388 zeropi \
389 nanopi_neo \
390 nanopi_neo_air \
391 nanopi_neo_plus2 \
392 nanopi_neo2 \
393 nanopi_r1 \
394 nanopi_r1s_h5 \
395 orangepi_zero \
396 orangepi_r1 \
397 orangepi_one \
398 orangepi_one_plus \
399 orangepi_pc \
400 orangepi_pc_plus \
401 orangepi_plus \
402 orangepi_2 \
403 orangepi_pc2 \
404 orangepi_zero2 \
405 pangolin \
406 pine64_plus \
407 Sinovoip_BPI_M3 \
408 sopine_baseboard \
409 orangepi_zero_plus \
410 libretech_all_h3_cc_h5
411
412 UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
413
414 UBOOT_MAKE_FLAGS += \
415 BL31=$(STAGING_DIR_IMAGE)/bl31_sunxi-$(ATF).bin SCP=/dev/null
416
417 define Build/InstallDev
418 $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
419 $(CP) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-u-boot-with-spl.bin
420 mkimage -C none -A arm -T script -d uEnv-$(UENV).txt \
421 $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-boot.scr
422 endef
423
424 define Package/u-boot/install/default
425 endef
426
427 $(eval $(call BuildPackage/U-Boot))