uboot-rockchip: Update to 2024.04
[openwrt/staging/pepe2k.git] / package / boot / uboot-rockchip / Makefile
1 #
2 # This is free software, licensed under the GNU General Public License v2.
3 # See /LICENSE for more information.
4 #
5 include $(TOPDIR)/rules.mk
6 include $(INCLUDE_DIR)/kernel.mk
7
8 PKG_VERSION:=2024.04
9 PKG_RELEASE:=1
10 PKG_HASH:=18a853fe39fad7ad03a90cc2d4275aeaed6da69735defac3492b80508843dd4a
11
12 PKG_MAINTAINER:=Tobias Maedel <openwrt@tbspace.de>
13
14 UBOOT_USE_BINMAN:=1
15 UBOOT_USE_INTREE_DTC:=1
16
17 include $(INCLUDE_DIR)/u-boot.mk
18 include $(INCLUDE_DIR)/package.mk
19
20 define U-Boot/Default
21 BUILD_TARGET:=rockchip
22 UENV:=default
23 HIDDEN:=1
24 endef
25
26
27 # RK3328 boards
28
29 define U-Boot/rk3328/Default
30 BUILD_SUBTARGET:=armv8
31 DEPENDS:=+PACKAGE_u-boot-$(1):trusted-firmware-a-rk3328
32 ATF:=rk3328_bl31.elf
33 endef
34
35 define U-Boot/nanopi-r2c-rk3328
36 $(U-Boot/rk3328/Default)
37 NAME:=NanoPi R2C
38 BUILD_DEVICES:= \
39 friendlyarm_nanopi-r2c
40 endef
41
42 define U-Boot/nanopi-r2c-plus-rk3328
43 $(U-Boot/rk3328/Default)
44 NAME:=NanoPi R2C Plus
45 BUILD_DEVICES:= \
46 friendlyarm_nanopi-r2c-plus
47 endef
48
49 define U-Boot/nanopi-r2s-rk3328
50 $(U-Boot/rk3328/Default)
51 NAME:=NanoPi R2S
52 BUILD_DEVICES:= \
53 friendlyarm_nanopi-r2s
54 endef
55
56 define U-Boot/orangepi-r1-plus-rk3328
57 $(U-Boot/rk3328/Default)
58 NAME:=Orange Pi R1 Plus
59 BUILD_DEVICES:= \
60 xunlong_orangepi-r1-plus
61 endef
62
63 define U-Boot/orangepi-r1-plus-lts-rk3328
64 $(U-Boot/rk3328/Default)
65 NAME:=Orange Pi R1 Plus LTS
66 BUILD_DEVICES:= \
67 xunlong_orangepi-r1-plus-lts
68 endef
69
70 define U-Boot/roc-cc-rk3328
71 $(U-Boot/rk3328/Default)
72 NAME:=ROC-RK3328-CC
73 BUILD_DEVICES:= \
74 firefly_roc-rk3328-cc
75 endef
76
77 define U-Boot/rock64-rk3328
78 $(U-Boot/rk3328/Default)
79 NAME:=Rock64
80 BUILD_DEVICES:= \
81 pine64_rock64
82 endef
83
84 define U-Boot/rock-pi-e-rk3328
85 $(U-Boot/rk3328/Default)
86 NAME:=ROCK Pi E
87 BUILD_DEVICES:= \
88 radxa_rock-pi-e
89 endef
90
91 # RK3399 boards
92
93 define U-Boot/rk3399/Default
94 BUILD_SUBTARGET:=armv8
95 DEPENDS:=+PACKAGE_u-boot-$(1):trusted-firmware-a-rk3399
96 ATF:=rk3399_bl31.elf
97 endef
98
99 define U-Boot/nanopc-t4-rk3399
100 $(U-Boot/rk3399/Default)
101 NAME:=NanoPC T4
102 BUILD_DEVICES:= \
103 friendlyarm_nanopc-t4
104 endef
105
106 define U-Boot/nanopi-r4s-rk3399
107 $(U-Boot/rk3399/Default)
108 NAME:=NanoPi R4S
109 BUILD_DEVICES:= \
110 friendlyarm_nanopi-r4s \
111 friendlyarm_nanopi-r4s-enterprise
112 endef
113
114 define U-Boot/rock-pi-4-rk3399
115 $(U-Boot/rk3399/Default)
116 NAME:=Rock Pi 4
117 BUILD_DEVICES:= \
118 radxa_rock-pi-4a
119 endef
120
121 define U-Boot/rockpro64-rk3399
122 $(U-Boot/rk3399/Default)
123 NAME:=RockPro64
124 BUILD_DEVICES:= \
125 pine64_rockpro64
126 endef
127
128
129 # RK3566 boards
130
131 define U-Boot/rk3566/Default
132 BUILD_SUBTARGET:=armv8
133 DEPENDS:=+PACKAGE_u-boot-$(1):trusted-firmware-a-rk3566
134 ATF:=rk3568_bl31_v1.44.elf
135 TPL:=rk3566_ddr_1056MHz_v1.21.bin
136 endef
137
138 define U-Boot/radxa-cm3-io-rk3566
139 $(U-Boot/rk3566/Default)
140 NAME:=CM3 IO
141 BUILD_DEVICES:= \
142 radxa_cm3-io
143 endef
144
145 # RK3568 boards
146
147 define U-Boot/rk3568/Default
148 BUILD_SUBTARGET:=armv8
149 DEPENDS:=+PACKAGE_u-boot-$(1):trusted-firmware-a-rk3568
150 ATF:=rk3568_bl31_v1.44.elf
151 TPL:=rk3568_ddr_1560MHz_v1.21.bin
152 endef
153
154 define U-Boot/nanopi-r5c-rk3568
155 $(U-Boot/rk3568/Default)
156 NAME:=NanoPi R5C
157 BUILD_DEVICES:= \
158 friendlyarm_nanopi-r5c
159 endef
160
161 define U-Boot/nanopi-r5s-rk3568
162 $(U-Boot/rk3568/Default)
163 NAME:=NanoPi R5S
164 BUILD_DEVICES:= \
165 friendlyarm_nanopi-r5s
166 endef
167
168 define U-Boot/radxa-e25-rk3568
169 $(U-Boot/rk3568/Default)
170 NAME:=E25
171 BUILD_DEVICES:= \
172 radxa_e25
173 endef
174
175 UBOOT_TARGETS := \
176 nanopc-t4-rk3399 \
177 nanopi-r4s-rk3399 \
178 rock-pi-4-rk3399 \
179 rockpro64-rk3399 \
180 nanopi-r2c-rk3328 \
181 nanopi-r2c-plus-rk3328 \
182 nanopi-r2s-rk3328 \
183 orangepi-r1-plus-rk3328 \
184 orangepi-r1-plus-lts-rk3328 \
185 roc-cc-rk3328 \
186 rock64-rk3328 \
187 rock-pi-e-rk3328 \
188 radxa-cm3-io-rk3566 \
189 nanopi-r5c-rk3568 \
190 nanopi-r5s-rk3568 \
191 radxa-e25-rk3568
192
193 UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
194
195 UBOOT_CUSTOMIZE_CONFIG := \
196 --disable SPL_FIT_SIGNATURE \
197 --disable TOOLS_MKEFICAPSULE \
198 --set-str MKIMAGE_DTC_PATH $(PKG_BUILD_DIR)/scripts/dtc/dtc
199
200 UBOOT_MAKE_FLAGS += \
201 BL31=$(STAGING_DIR_IMAGE)/$(ATF) \
202 $(if $(TPL),ROCKCHIP_TPL=$(STAGING_DIR_IMAGE)/$(TPL))
203
204 define Build/InstallDev
205 $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
206 $(CP) $(PKG_BUILD_DIR)/idbloader.img $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-idbloader.img
207 $(CP) $(PKG_BUILD_DIR)/u-boot.itb $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-u-boot.itb
208 endef
209
210 define Package/u-boot/install/default
211 endef
212
213 $(eval $(call BuildPackage/U-Boot))