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
/imx6-sdcard
65 $(CP
) $(STAGING_DIR_IMAGE
)/$(UBOOT
)-u-boot.img
$@.boot
/u-boot.img
66 $(CP
) $(IMAGE_KERNEL
) $@.boot
/uImage
68 $(foreach dts
,$(DEVICE_DTS
), \
70 $(DTS_DIR
)/$(dts
).dtb \
74 mkimage
-A arm
-O linux
-T script
-C none
-a
0 -e
0 \
75 -n
'$(DEVICE_ID) OpenWrt bootscript' \
81 $(SCRIPT_DIR
)/gen_image_generic.sh
$@ \
82 $(CONFIG_TARGET_KERNEL_PARTSIZE
) \
84 $(CONFIG_TARGET_ROOTFS_PARTSIZE
) \
88 dd if
=$(STAGING_DIR_IMAGE
)/$(UBOOT
)-SPL of
=$@ bs
=1024 seek
=1 conv
=notrunc
93 #################################################
95 #################################################
97 KERNEL_LOADADDR
=0x10008000
101 FILESYSTEMS
:= squashfs ext4
103 KERNEL_SUFFIX
:= -uImage
104 KERNEL_NAME
:= zImage
105 KERNEL_PREFIX
:= $$(IMAGE_PREFIX
)
106 KERNEL
:= kernel-bin | uImage none
110 define Device
/ventana
111 DEVICE_TITLE
:= Gateworks Ventana family
(normal NAND flash
)
130 DEVICE_PACKAGES
:= kmod-sky2 kmod-sound-core kmod-sound-soc-imx kmod-sound-soc-imx-sgtl5000 \
131 kmod-can kmod-can-flexcan kmod-can-raw \
133 kmod-leds-gpio kmod-pps-gpio \
135 KERNEL
+= | boot-overlay
136 IMAGES
:= nand.ubi bootfs.
tar.gz
137 IMAGE_NAME
= $$(IMAGE_PREFIX
)-$$(1).
$$(2)
138 UBINIZE_PARTS
= boot
=$$(KDIR_KERNEL_IMAGE
).boot.ubifs
=15
139 IMAGE
/nand.ubi
:= append-ubi
140 IMAGE
/bootfs.
tar.gz
:= bootfs.
tar.gz | install-dtb
141 IMAGE_NAME
= $$(IMAGE_PREFIX
)-$$(1)-$$(2)
144 MKUBIFS_OPTS
:= -m
$$(PAGESIZE
) -e
124KiB
146 TARGET_DEVICES
+= ventana
148 define Device
/ventana-large
150 DEVICE_NAME
:= ventana
151 DEVICE_TITLE
:= Gateworks Ventana family
(large NAND flash
)
155 MKUBIFS_OPTS
:= -m
$$(PAGESIZE
) -e
248KiB
157 TARGET_DEVICES
+= ventana-large
159 define Device
/wandboard
160 DEVICE_TITLE
:= Wandboard Dual
161 DEVICE_DTS
:= imx6dl-wandboard
163 TARGET_DEVICES
+= wandboard
165 define Device
/cubox-i
166 KERNEL
:= kernel-bin | install-dtb
168 BOOT_SCRIPT
= bootscript-cubox
170 DEVICE_TITLE
:= SolidRun CuBox-i
171 DEVICE_PACKAGES
:= kmod-drm-imx kmod-drm-imx-hdmi kmod-usb-hid
172 DEVICE_DTS
:= imx6q-cubox-i imx6dl-cubox-i imx6q-hummingboard imx6dl-hummingboard
173 IMAGES
:= combined.bin
174 FILESYSTEMS
:= squashfs
175 IMAGE
/combined.bin
:= append-rootfs | pad-extra
128k | imx6-sdcard
177 TARGET_DEVICES
+= cubox-i
179 $(eval
$(call BuildImage
))