Fresh pull from upstream
[librecmc/librecmc.git] / target / linux / sunxi / image / Makefile
1 #
2 # Copyright (C) 2013-2016 OpenWrt.org
3 # Copyright (C) 2016 Yousong Zhou
4 #
5 # This is free software, licensed under the GNU General Public License v2.
6 # See /LICENSE for more information.
7 #
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/image.mk
10 include $(INCLUDE_DIR)/host.mk
11
12 FAT32_BLOCK_SIZE=1024
13 FAT32_BLOCKS=$(shell echo $$(($(CONFIG_SUNXI_SD_BOOT_PARTSIZE)*1024*1024/$(FAT32_BLOCK_SIZE))))
14
15 KERNEL_LOADADDR:=0x40008000
16
17 define Build/sunxi-sdcard
18         rm -f $@.boot
19         mkfs.fat $@.boot -C $(FAT32_BLOCKS)
20
21         mcopy -i $@.boot $(KDIR)/uboot-sunxi-$(SUNXI_UBOOT)-boot.scr ::boot.scr
22         mcopy -i $@.boot $(DTS_DIR)/$(SUNXI_DTS).dtb ::dtb
23         mcopy -i $@.boot $(IMAGE_KERNEL) ::uImage
24         ./gen_sunxi_sdcard_img.sh $@ \
25                 $@.boot \
26                 $(IMAGE_ROOTFS) \
27                 $(CONFIG_SUNXI_SD_BOOT_PARTSIZE) \
28                 $(CONFIG_TARGET_ROOTFS_PARTSIZE) \
29                 $(KDIR)/uboot-sunxi-$(SUNXI_UBOOT)-u-boot-with-spl.bin
30         rm -f $@.boot
31 endef
32
33 # why \x00\x00\x00\x00 for zImage-initramfs
34 define Device/Default
35   PROFILES := Default
36   DEVICE_VARS := SUNXI_DTS SUNXI_UBOOT
37   KERNEL_NAME := zImage
38   KERNEL := kernel-bin | uImage none
39   IMAGES := sdcard.img.gz
40   IMAGE/sdcard.img.gz := sunxi-sdcard | append-metadata | gzip
41 endef
42
43 define Device/sun4i-a10-olinuxino-lime
44   DEVICE_TITLE:=Olimex A10-OLinuXino-LIME
45   DEVICE_PACKAGES:=uboot-sunxi-A10-OLinuXino-Lime kmod-ata-core kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi
46   SUPPORTED_DEVICES:=olimex,a10-olinuxino-lime
47   SUNXI_DTS:=sun4i-a10-olinuxino-lime
48   SUNXI_UBOOT:=A10-OLinuXino-Lime
49 endef
50
51 TARGET_DEVICES += sun4i-a10-olinuxino-lime
52
53
54 define Device/sun5i-a13-olimex-som
55   DEVICE_TITLE:=Olimex A13 SOM
56   DEVICE_PACKAGES:=uboot-sunxi-OLIMEX_A13_SOM kmod-rtl8192cu
57   SUPPORTED_DEVICES:=olimex,a13-olinuxino
58   SUNXI_DTS:=sun5i-a13-olinuxino
59   SUNXI_UBOOT:=OLIMEX_A13_SOM
60 endef
61
62 TARGET_DEVICES += sun5i-a13-olimex-som
63
64
65 define Device/sun5i-a13-olinuxino
66   DEVICE_TITLE:=Olimex A13-Olinuxino
67   DEVICE_PACKAGES:=uboot-sunxi-A13-OLinuXino kmod-rtl8192cu
68   SUPPORTED_DEVICES:=olimex,a13-olinuxino
69   SUNXI_DTS:=sun5i-a13-olinuxino
70   SUNXI_UBOOT:=A13-OLinuXino
71 endef
72
73 TARGET_DEVICES += sun5i-a13-olinuxino
74
75
76 define Device/sun7i-a20-olinuxino-lime
77   DEVICE_TITLE:=Olimex A20-OLinuXino-LIME
78   DEVICE_PACKAGES:=uboot-sunxi-A20-OLinuXino-Lime kmod-ata-core kmod-ata-sunxi kmod-rtc-sunxi
79   SUPPORTED_DEVICES:=olimex,a20-olinuxino-lime
80   SUNXI_DTS:=sun7i-a20-olinuxino-lime
81   SUNXI_UBOOT:=A20-OLinuXino-Lime
82 endef
83
84 TARGET_DEVICES += sun7i-a20-olinuxino-lime
85
86
87 define Device/sun7i-a20-olinuxino-micro
88   DEVICE_TITLE:=Olimex A20-Olinuxino Micro
89   DEVICE_PACKAGES:=uboot-sunxi-A20-OLinuXino_MICRO kmod-ata-core kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi
90   SUPPORTED_DEVICES:=olimex,a20-olinuxino-micro
91   SUNXI_DTS:=sun7i-a20-olinuxino-micro
92   SUNXI_UBOOT:=A20-OLinuXino_MICRO
93 endef
94
95 TARGET_DEVICES += sun7i-a20-olinuxino-micro
96
97
98 define Device/sun7i-a20-bananapi
99   DEVICE_TITLE:=LeMaker Banana Pi
100   DEVICE_PACKAGES:=uboot-sunxi-Bananapi kmod-rtc-sunxi kmod-ata-core kmod-ata-sunxi
101   SUPPORTED_DEVICES:=lemaker,bananapi
102   SUNXI_DTS:=sun7i-a20-bananapi
103   SUNXI_UBOOT:=Bananapi
104 endef
105
106 TARGET_DEVICES += sun7i-a20-bananapi
107
108
109 define Device/sun7i-a20-bananapro
110   DEVICE_TITLE:=LeMaker Banana Pro
111   DEVICE_PACKAGES:=uboot-sunxi-Bananapro kmod-rtc-sunxi kmod-ata-core kmod-ata-sunxi kmod-brcmfmac
112   SUPPORTED_DEVICES:=lemaker,bananapro
113   SUNXI_DTS:=sun7i-a20-bananapro
114   SUNXI_UBOOT:=Bananapro
115 endef
116
117 TARGET_DEVICES += sun7i-a20-bananapro
118
119
120 define Device/sun7i-a20-cubieboard2
121   DEVICE_TITLE:=Cubietech Cubieboard2
122   DEVICE_PACKAGES:=uboot-sunxi-Cubieboard2 kmod-ata-core kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi
123   SUPPORTED_DEVICES:=cubietech,cubieboard2
124   SUNXI_DTS:=sun7i-a20-cubieboard2
125   SUNXI_UBOOT:=Cubieboard2
126 endef
127
128 TARGET_DEVICES += sun7i-a20-cubieboard2
129
130
131 define Device/sun4i-a10-cubieboard
132   DEVICE_TITLE:=Cubietech Cubieboard
133   DEVICE_PACKAGES:=uboot-sunxi-Cubieboard kmod-ata-core kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi
134   SUPPORTED_DEVICES:=cubietech,a10-cubieboard
135   SUNXI_DTS:=sun4i-a10-cubieboard
136   SUNXI_UBOOT:=Cubieboard
137 endef
138
139 TARGET_DEVICES += sun4i-a10-cubieboard
140
141
142 define Device/sun7i-a20-cubietruck
143   DEVICE_TITLE:=Cubietech Cubietruck
144   DEVICE_PACKAGES:=uboot-sunxi-Cubietruck kmod-ata-core kmod-ata-sunxi kmod-rtc-sunxi kmod-brcmfmac
145   SUPPORTED_DEVICES:=cubietech,cubietruck
146   SUNXI_DTS:=sun7i-a20-cubietruck
147   SUNXI_UBOOT:=Cubietruck
148 endef
149
150 TARGET_DEVICES += sun7i-a20-cubietruck
151
152
153 define Device/sun7i-a20-lamobo-r1
154   DEVICE_TITLE:=Lamobo R1
155   DEVICE_PACKAGES:=uboot-sunxi-Lamobo_R1 kmod-ata-sunxi kmod-rtl8192cu swconfig wpad-mini
156   SUPPORTED_DEVICES:=lamobo,lamobo-r1
157   SUNXI_DTS:=sun7i-a20-lamobo-r1
158   SUNXI_UBOOT:=Lamobo_R1
159 endef
160
161 TARGET_DEVICES += sun7i-a20-lamobo-r1
162
163
164 define Device/sun6i-a31-m9
165   DEVICE_TITLE:=Mele M9 top set box
166   DEVICE_PACKAGES:=uboot-sunxi-Mele_M9 kmod-sun4i-emac kmod-rtc-sunxi kmod-rtl8192cu
167   SUPPORTED_DEVICES:=mele,m9
168   SUNXI_DTS:=sun6i-a31-m9
169   SUNXI_UBOOT:=Mele_M9
170 endef
171
172 TARGET_DEVICES += sun6i-a31-m9
173
174
175 define Device/sun8i-h3-orangepi-plus
176   DEVICE_TITLE:=Xunlong Orange Pi Plus
177   DEVICE_PACKAGES:=kmod-rtc-sunxi uboot-sunxi-orangepi_plus
178   SUPPORTED_DEVICES:=xunlong,orangepi-plus
179   SUNXI_DTS:=sun8i-h3-orangepi-plus
180   SUNXI_UBOOT:=orangepi_plus
181 endef
182
183 TARGET_DEVICES += sun8i-h3-orangepi-plus
184
185
186 define Device/sun7i-a20-pcduino3
187   DEVICE_TITLE:=LinkSprite pcDuino3
188   DEVICE_PACKAGES:=uboot-sunxi-Linksprite_pcDuino3 kmod-sun4i-emac kmod-rtc-sunxi kmod-ata-core kmod-ata-sunxi kmod-rtl8xxxu rtl8188eu-firmware
189   SUPPORTED_DEVICES:=linksprite,pcduino3
190   SUNXI_DTS:=sun7i-a20-pcduino3
191   SUNXI_UBOOT:=Linksprite_pcDuino3
192 endef
193
194 TARGET_DEVICES += sun7i-a20-pcduino3
195
196
197 define Device/sun4i-a10-pcduino
198   DEVICE_TITLE:=LinkSprite pcDuino
199   DEVICE_PACKAGES:=uboot-sunxi-Linksprite_pcDuino kmod-sun4i-emac kmod-rtc-sunxi kmod-rtl8192cu
200   SUPPORTED_DEVICES:=linksprite,a10-pcduino
201   SUNXI_DTS:=sun4i-a10-pcduino
202   SUNXI_UBOOT:=Linksprite_pcDuino
203 endef
204
205 TARGET_DEVICES += sun4i-a10-pcduino
206
207
208 $(eval $(call BuildImage))