a144ce70428448c7d682a0fe97443bacf6c56dbb
[openwrt/openwrt.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:=2017.07
13
14 PKG_HASH:=5374bfdc8acb9a38c025371b1ff20f45e7533668e84e685d0df5d9e7c0e4feff
15
16 PKG_MAINTAINER:=Zoltan HERPAI <wigyori@uid0.hu>
17
18 include $(INCLUDE_DIR)/u-boot.mk
19 include $(INCLUDE_DIR)/package.mk
20
21 define U-Boot/Default
22 BUILD_TARGET:=sunxi
23 UBOOT_IMAGE:=u-boot-sunxi-with-spl.bin
24 UENV:=default
25 HIDDEN:=1
26 endef
27
28 define U-Boot/A10-OLinuXino-Lime
29 BUILD_SUBTARGET:=cortexa8
30 NAME:=A10 OLinuXino LIME
31 BUILD_DEVICES:=sun4i-a10-olinuxino-lime
32 endef
33
34 define U-Boot/A13-OLinuXino
35 BUILD_SUBTARGET:=cortexa8
36 NAME:=A13 OlinuXino
37 BUILD_DEVICES:=sun5i-a13-olinuxino
38 endef
39
40 define U-Boot/A20-OLinuXino-Lime
41 BUILD_SUBTARGET:=cortexa7
42 NAME:=A20 OLinuXino LIME
43 BUILD_DEVICES:=sun7i-a20-olinuxino-lime
44 endef
45
46 define U-Boot/A20-OLinuXino_MICRO
47 BUILD_SUBTARGET:=cortexa7
48 NAME:=A20 OLinuXino MICRO
49 BUILD_DEVICES:=sun7i-a20-olinuxino-micro
50 endef
51
52 define U-Boot/Bananapi
53 BUILD_SUBTARGET:=cortexa7
54 NAME:=Bananapi
55 BUILD_DEVICES:=sun7i-a20-bananapi
56 endef
57
58 define U-Boot/Bananapro
59 BUILD_SUBTARGET:=cortexa7
60 NAME:=Bananapro
61 BUILD_DEVICES:=sun7i-a20-bananapro
62 endef
63
64 define U-Boot/Cubieboard
65 BUILD_SUBTARGET:=cortexa8
66 NAME:=Cubieboard
67 BUILD_DEVICES:=sun4i-a10-cubieboard
68 endef
69
70 define U-Boot/Cubieboard2
71 BUILD_SUBTARGET:=cortexa7
72 NAME:=Cubieboard2
73 BUILD_DEVICES:=sun7i-a20-cubieboard2
74 endef
75
76 define U-Boot/Cubietruck
77 BUILD_SUBTARGET:=cortexa7
78 NAME:=Cubietruck
79 BUILD_DEVICES:=sun7i-a20-cubietruck
80 endef
81
82 define U-Boot/Hummingbird_A31
83 BUILD_SUBTARGET:=cortexa7
84 NAME:=Hummingbird A31 board
85 endef
86
87 define U-Boot/Mele_M9
88 BUILD_SUBTARGET:=cortexa7
89 NAME:=Mele M9 (A31)
90 BUILD_DEVICES:=sun6i-a31-m9
91 endef
92
93 define U-Boot/OLIMEX_A13_SOM
94 BUILD_SUBTARGET:=cortexa8
95 NAME:=Olimex A13 SOM
96 BUILD_DEVICES:=sun5i-a13-olimex-som
97 endef
98
99 define U-Boot/Linksprite_pcDuino
100 BUILD_SUBTARGET:=cortexa8
101 NAME:=Linksprite pcDuino
102 BUILD_DEVICES:=sun4i-a10-pcduino
103 endef
104
105 define U-Boot/Linksprite_pcDuino3
106 BUILD_SUBTARGET:=cortexa7
107 NAME:=Linksprite pcDuino3
108 BUILD_DEVICES:=sun7i-a20-pcduino3
109 endef
110
111 define U-Boot/Lamobo_R1
112 BUILD_SUBTARGET:=cortexa7
113 NAME:=Lamobo R1
114 BUILD_DEVICES:=sun7i-a20-lamobo-r1
115 endef
116
117 define U-Boot/orangepi_plus
118 BUILD_SUBTARGET:=cortexa7
119 NAME:=Orange Pi Plus (H3)
120 BUILD_DEVICES:=sun8i-h3-orangepi-plus
121 endef
122
123 define U-Boot/pangolin
124 BUILD_SUBTARGET:=cortexa7
125 NAME:=Theobroma A31-yQ7 devboard
126 UENV:=pangolin
127 endef
128
129 define U-Boot/pine64_plus
130 BUILD_SUBTARGET:=cortexa53
131 NAME:=Pine64 Plus A64
132 BUILD_DEVICES:=sun50i-a64-pine64-plus
133 DEPENDS:=+PACKAGE_u-boot-pine64_plus:arm-trusted-firmware-sunxi
134 UENV:=a64
135 endef
136
137 UBOOT_TARGETS := \
138 A10-OLinuXino-Lime \
139 A13-OLinuXino \
140 A20-OLinuXino-Lime \
141 A20-OLinuXino_MICRO \
142 Bananapi \
143 Bananapro \
144 Cubieboard \
145 Cubieboard2 \
146 Cubietruck \
147 Hummingbird_A31 \
148 Mele_M9 \
149 OLIMEX_A13_SOM \
150 Linksprite_pcDuino \
151 Linksprite_pcDuino3 \
152 Lamobo_R1 \
153 orangepi_plus \
154 pangolin \
155 pine64_plus
156
157 UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
158
159 UBOOT_MAKE_FLAGS += \
160 BL31=$(STAGING_DIR_IMAGE)/bl31.bin
161
162 define Build/InstallDev
163 $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
164 ifeq ($(SUBTARGET),cortexa53)
165 cat $(PKG_BUILD_DIR)/spl/sunxi-spl.bin $(PKG_BUILD_DIR)/u-boot.itb > $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-u-boot-with-spl.bin
166 else
167 $(CP) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-u-boot-with-spl.bin
168 endif
169 mkimage -C none -A arm -T script -d uEnv-$(UENV).txt \
170 $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)-boot.scr
171 endef
172
173 define Package/u-boot/install/default
174 endef
175
176 $(eval $(call BuildPackage/U-Boot))