2682a0afd69461b68c7f60bb51ddb1593653ad82
[openwrt/staging/jow.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.01
9 PKG_RELEASE:=1
10 PKG_HASH:=b99611f1ed237bf3541bdc8434b68c96a6e05967061f992443cb30aabebef5b3
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 endef
112
113 define U-Boot/rock-pi-4-rk3399
114 $(U-Boot/rk3399/Default)
115 NAME:=Rock Pi 4
116 BUILD_DEVICES:= \
117 radxa_rock-pi-4a
118 endef
119
120 define U-Boot/rockpro64-rk3399
121 $(U-Boot/rk3399/Default)
122 NAME:=RockPro64
123 BUILD_DEVICES:= \
124 pine64_rockpro64
125 endef
126
127
128 # RK3568 boards
129
130 define U-Boot/rk3568/Default
131 BUILD_SUBTARGET:=armv8
132 DEPENDS:=+PACKAGE_u-boot-$(1):trusted-firmware-a-rk3568
133 ATF:=rk3568_bl31_v1.43.elf
134 TPL:=rk3568_ddr_1560MHz_v1.18.bin
135 endef
136
137 define U-Boot/nanopi-r5c-rk3568
138 $(U-Boot/rk3568/Default)
139 NAME:=NanoPi R5C
140 BUILD_DEVICES:= \
141 friendlyarm_nanopi-r5c
142 endef
143
144 define U-Boot/nanopi-r5s-rk3568
145 $(U-Boot/rk3568/Default)
146 NAME:=NanoPi R5S
147 BUILD_DEVICES:= \
148 friendlyarm_nanopi-r5s
149 endef
150
151 UBOOT_TARGETS := \
152 nanopc-t4-rk3399 \
153 nanopi-r4s-rk3399 \
154 rock-pi-4-rk3399 \
155 rockpro64-rk3399 \
156 nanopi-r2c-rk3328 \
157 nanopi-r2c-plus-rk3328 \
158 nanopi-r2s-rk3328 \
159 orangepi-r1-plus-rk3328 \
160 orangepi-r1-plus-lts-rk3328 \
161 roc-cc-rk3328 \
162 rock64-rk3328 \
163 rock-pi-e-rk3328 \
164 nanopi-r5c-rk3568 \
165 nanopi-r5s-rk3568
166
167 UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
168
169 UBOOT_CUSTOMIZE_CONFIG := \
170 --disable SPL_FIT_SIGNATURE \
171 --disable TOOLS_MKEFICAPSULE \
172 --set-str MKIMAGE_DTC_PATH $(PKG_BUILD_DIR)/scripts/dtc/dtc
173
174 UBOOT_MAKE_FLAGS += \
175 PATH=$(STAGING_DIR_HOST)/bin:$(PATH) \
176 BL31=$(STAGING_DIR_IMAGE)/$(ATF) \
177 $(if $(TPL),ROCKCHIP_TPL=$(STAGING_DIR_IMAGE)/$(TPL))
178
179 define Build/InstallDev
180 $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
181 $(CP) $(PKG_BUILD_DIR)/idbloader.img $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-idbloader.img
182 $(CP) $(PKG_BUILD_DIR)/u-boot.itb $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-u-boot.itb
183 endef
184
185 define Package/u-boot/install/default
186 endef
187
188 $(eval $(call BuildPackage/U-Boot))