mxs: rework image generation
[openwrt/staging/stintel.git] / target / linux / mxs / image / Makefile
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Copyright (C) 2013-2015 OpenWrt.org
4
5 include $(TOPDIR)/rules.mk
6 include $(INCLUDE_DIR)/image.mk
7
8 FAT32_BLOCK_SIZE=1024
9 FAT32_BLOCKS=$(shell echo $$(($(CONFIG_MXS_SD_BOOT_PARTSIZE)*1024*1024/$(FAT32_BLOCK_SIZE))))
10
11 KERNEL_LOADADDR:=0x40008000
12
13 define Build/mxs-sdcard-ext4-ext4
14 ./gen_sdcard_ext4_ext4.sh \
15 $@ \
16 $(STAGING_DIR_IMAGE)/$(DEVICE_NAME)/u-boot.sb \
17 $(IMAGE_ROOTFS) \
18 $(CONFIG_TARGET_ROOTFS_PARTSIZE)
19 endef
20
21 define Build/mxs-sdcard-vfat-ext4
22 rm -f $@.boot
23 mkfs.fat $@.boot -C $(FAT32_BLOCKS)
24
25 mcopy -i $@.boot $(DTS_DIR)/$(DEVICE_DTS).dtb ::$(DEVICE_DTS).dtb
26 mcopy -i $@.boot $(IMAGE_KERNEL) ::uImage
27
28 ./gen_sdcard_vfat_ext4.sh \
29 $@ \
30 $(STAGING_DIR_IMAGE)/$(DEVICE_NAME)/u-boot.sb \
31 $@.boot \
32 $(IMAGE_ROOTFS) \
33 $(CONFIG_MXS_SD_BOOT_PARTSIZE) \
34 $(CONFIG_TARGET_ROOTFS_PARTSIZE)
35 endef
36
37 define Device/Default
38 PROFILES := Default
39 KERNEL_NAME := zImage
40 KERNEL := kernel-bin | uImage none
41 IMAGES := sdcard.img.gz
42 DEVICE_DTS = $$(SOC)-$(lastword $(subst _, ,$(1)))
43 endef
44
45 define Device/i2se_duckbill
46 DEVICE_VENDOR := I2SE
47 DEVICE_MODEL := Duckbill
48 DEVICE_PACKAGES := -dnsmasq -firewall -ppp -ip6tables -iptables -6relayd -mtd \
49 uboot-envtools kmod-leds-gpio -kmod-ipt-nathelper
50 SUPPORTED_DEVICES:=i2se,duckbill
51 SOC:=imx28
52 DEVICE_DTS:=imx28-duckbill
53 IMAGE/sdcard.img.gz = mxs-sdcard-ext4-ext4 | append-metadata | gzip
54 endef
55 TARGET_DEVICES += i2se_duckbill
56
57 define Device/olinuxino_maxi
58 DEVICE_VENDOR := Olimex
59 DEVICE_MODEL := OLinuXino Maxi
60 DEVICE_PACKAGES := kmod-usb-net-smsc95xx kmod-pinctrl-mcp23s08-i2c \
61 kmod-pinctrl-mcp23s08-spi kmod-leds-gpio kmod-sound-core
62 SUPPORTED_DEVICES:=olimex,imx23-olinuxino
63 SOC:=imx23
64 DEVICE_DTS:=imx23-olinuxino
65 IMAGE/sdcard.img.gz = mxs-sdcard-vfat-ext4 | append-metadata | gzip
66 endef
67 TARGET_DEVICES += olinuxino_maxi
68
69 define Device/olinuxino_micro
70 DEVICE_VENDOR := Olimex
71 DEVICE_MODEL := OLinuXino Micro
72 DEVICE_PACKAGES := kmod-pinctrl-mcp23s08-spi kmod-pinctrl-mcp23s08-i2c \
73 kmod-leds-gpio
74 SUPPORTED_DEVICES:=olimex,imx23-olinuxino
75 SOC:=imx23
76 DEVICE_DTS:=imx23-olinuxino
77 IMAGE/sdcard.img.gz = mxs-sdcard-vfat-ext4 | append-metadata | gzip
78 endef
79 TARGET_DEVICES += olinuxino_micro
80
81 $(eval $(call BuildImage))