2 # Copyright (C) 2013 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
7 include $(TOPDIR
)/rules.mk
8 include $(INCLUDE_DIR
)/image.mk
10 #################################################
12 #################################################
14 DEVICE_VARS
+= MKUBIFS_OPTS UBOOT BOOT_SCRIPT
16 define Build
/boot-overlay
20 $(CP
) $@
$@.boot
/$(IMG_PREFIX
)-uImage
21 ln
-sf
$(IMG_PREFIX
)-uImage
$@.boot
/uImage
23 $(foreach dts
,$(DEVICE_DTS
), \
25 $(DTS_DIR
)/$(dts
).dtb \
26 $@.boot
/$(IMG_PREFIX
)-$(dts
).dtb
; \
28 $(IMG_PREFIX
)-$(dts
).dtb \
31 mkimage
-A arm
-O linux
-T script
-C none
-a
0 -e
0 \
32 -n
'$(DEVICE_ID) OpenWrt bootscript' \
33 -d .
/bootscript-
$(DEVICE_NAME
) \
34 $@.boot
/6x_bootscript-
$(DEVICE_NAME
)
36 $(STAGING_DIR_HOST
)/bin
/mkfs.ubifs \
37 --space-fixup
--compr
=zlib
--squash-uids \
38 $(MKUBIFS_OPTS
) -c
8124 \
39 -o
$@.boot.ubifs
-d
$@.boot
41 $(TAR
) -C
$@.boot
-cf
$@.boot.
tar .
44 define Build
/bootfs.
tar.gz
48 $(TAR
) -C
$@.boot
-xf
$(IMAGE_KERNEL
).boot.
tar
50 --numeric-owner
--owner
=0 --group
=0 --transform
"s,./,./boot/," \
55 mkimage
-A arm
-O linux
-T script
-C none
-a
0 -e
0 \
56 -n
'$(DEVICE_ID) OpenWrt bootscript' \
57 -d .
/bootscript-
$(DEVICE_NAME
) \
61 define Build
/recovery-scr
62 mkimage
-A arm
-O linux
-T script
-C none
-a
0 -e
0 \
63 -n
'$(DEVICE_ID) OpenWrt recovery bootscript' \
64 -d .
/recovery-
$(DEVICE_NAME
) $@
67 define Build
/imx6-combined-image-prepare
72 define Build
/imx6-combined-image-clean
76 define Build
/imx6-combined-image
77 $(CP
) $(IMAGE_KERNEL
) $@.boot
/uImage
79 $(foreach dts
,$(DEVICE_DTS
), \
81 $(DTS_DIR
)/$(dts
).dtb \
85 mkimage
-A arm
-O linux
-T script
-C none
-a
0 -e
0 \
86 -n
'$(DEVICE_ID) OpenWrt bootscript' \
92 $(SCRIPT_DIR
)/gen_image_generic.sh
$@ \
93 $(CONFIG_TARGET_KERNEL_PARTSIZE
) \
95 $(CONFIG_TARGET_ROOTFS_PARTSIZE
) \
100 define Build
/imx6-sdcard
101 $(Build
/imx6-combined-image-prepare
)
103 $(CP
) $(STAGING_DIR_IMAGE
)/$(UBOOT
)-u-boot.img
$@.boot
/u-boot.img
104 $(Build
/imx6-combined-image
)
105 dd if
=$(STAGING_DIR_IMAGE
)/$(UBOOT
)-SPL of
=$@ bs
=1024 seek
=1 conv
=notrunc
107 $(Build
/imx6-combined-image-clean
)
110 define Build
/apalis-emmc
111 $(Build
/imx6-combined-image-prepare
)
112 $(Build
/imx6-combined-image
)
113 $(Build
/imx6-combined-image-clean
)
116 #################################################
118 #################################################
120 KERNEL_LOADADDR
=0x10008000
122 define Device
/Default
124 FILESYSTEMS
:= squashfs ext4
126 KERNEL_SUFFIX
:= -uImage
127 KERNEL_NAME
:= zImage
128 KERNEL_PREFIX
:= $$(IMAGE_PREFIX
)
129 KERNEL
:= kernel-bin | uImage none
133 define Device
/ventana
134 DEVICE_VENDOR
:= Gateworks
135 DEVICE_MODEL
:= Ventana family
136 DEVICE_VARIANT
:= normal NAND flash
155 DEVICE_PACKAGES
:= kmod-sky2 kmod-sound-core kmod-sound-soc-imx kmod-sound-soc-imx-sgtl5000 \
156 kmod-can kmod-can-flexcan kmod-can-raw \
158 kmod-leds-gpio kmod-pps-gpio \
160 KERNEL
+= | boot-overlay
161 IMAGES
:= nand.ubi bootfs.
tar.gz dtb
162 IMAGE_NAME
= $$(IMAGE_PREFIX
)-$$(1).
$$(2)
163 UBINIZE_PARTS
= boot
=$$(KDIR_KERNEL_IMAGE
).boot.ubifs
=15
164 BOOT_SCRIPT
:= bootscript-ventana
165 IMAGE
/nand.ubi
:= append-ubi
166 IMAGE
/bootfs.
tar.gz
:= bootfs.
tar.gz
167 IMAGE
/dtb
:= install-dtb
168 IMAGE_NAME
= $$(IMAGE_PREFIX
)-$$(1)-$$(2)
171 MKUBIFS_OPTS
:= -m
$$(PAGESIZE
) -e
124KiB
173 TARGET_DEVICES
+= ventana
175 define Device
/ventana-large
177 DEVICE_VENDOR
:= Gateworks
178 DEVICE_MODEL
:= Ventana family
179 DEVICE_VARIANT
:= large NAND flash
180 DEVICE_NAME
:= ventana
184 MKUBIFS_OPTS
:= -m
$$(PAGESIZE
) -e
248KiB
186 TARGET_DEVICES
+= ventana-large
188 define Device
/wandboard
189 DEVICE_VENDOR
:= Wandboard
191 DEVICE_DTS
:= imx6dl-wandboard
193 TARGET_DEVICES
+= wandboard
195 define Device
/cubox-i
196 DEVICE_VENDOR
:= SolidRun
197 DEVICE_MODEL
:= CuBox-i
200 BOOT_SCRIPT
= bootscript-cubox
202 DEVICE_PACKAGES
:= kmod-drm-imx kmod-drm-imx-hdmi kmod-usb-hid
203 DEVICE_DTS
:= imx6q-cubox-i imx6dl-cubox-i imx6q-hummingboard imx6dl-hummingboard
204 IMAGES
:= combined.bin dtb
205 FILESYSTEMS
:= squashfs
206 IMAGE
/combined.bin
:= append-rootfs | pad-extra
128k | imx6-sdcard
207 IMAGE
/dtb
:= install-dtb
209 TARGET_DEVICES
+= cubox-i
212 DEVICE_VENDOR
:= Toradex
213 DEVICE_MODEL
:= Apalis family
214 SUPPORTED_DEVICES
:= apalis
,ixora apalis
,eval
218 imx6q-apalis-ixora-v1.1
220 kmod-can kmod-can-flexcan kmod-can-raw \
221 kmod-leds-gpio kmod-gpio-button-hotplug \
222 kmod-pps-gpio kmod-rtc-ds1307
223 BOOT_SCRIPT
:= bootscript-apalis
225 FILESYSTEMS
:= squashfs
226 IMAGES
:= combined.bin sysupgrade.bin
227 IMAGE_NAME
= $$(IMAGE_PREFIX
)-$$(1).
$$(2)
228 IMAGE
/combined.bin
:= append-rootfs | pad-extra
128k | apalis-emmc
229 IMAGE
/sysupgrade.bin
:= sysupgrade-tar | append-metadata
230 ARTIFACTS
:= recovery.scr
231 ARTIFACT
/recovery.scr
:= recovery-scr
233 TARGET_DEVICES
+= apalis
235 $(eval
$(call BuildImage
))