summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Heimpold2024-09-15 08:39:40 +0000
committerZoltan HERPAI2025-02-05 21:00:09 +0000
commit77a1a5ef8e74e8c64ae02b846f827252c978451c (patch)
tree8e51d2f04c0964b60346dabf853d55975e7b4ae7
parentb410f2216c7a4e6c5646f999d18b952b63c85817 (diff)
downloadopenwrt-77a1a5ef8e74e8c64ae02b846f827252c978451c.tar.gz
mxs: fix image generation for I2SE Duckbills
The standard U-Boot boot scripts for Duckbills expect the Linux kernel and device tree files installed below /boot within the (ext4) root filesystem. Also a raw zImage is expected instead of uImage. Extend the SD card generation accordingly and while at, install all possible Duckbill DT blobs there. Signed-off-by: Michael Heimpold <mhei@heimpold.de>
-rw-r--r--target/linux/mxs/image/Makefile29
1 files changed, 26 insertions, 3 deletions
diff --git a/target/linux/mxs/image/Makefile b/target/linux/mxs/image/Makefile
index b95409741a..6fd832a9f4 100644
--- a/target/linux/mxs/image/Makefile
+++ b/target/linux/mxs/image/Makefile
@@ -10,11 +10,33 @@ FAT32_BLOCKS=$(shell echo $$(($(CONFIG_MXS_SD_BOOT_PARTSIZE)*1024*1024/$(FAT32_B
KERNEL_LOADADDR:=0x40008000
+define Build/mxs-ext4-rootfs-with-boot
+ rm -rf $(call mkfs_target_dir,$(1))/boot
+ mkdir -p $(call mkfs_target_dir,$(1))/boot
+ $(CP) --no-preserve=mode $(KDIR)/$(KERNEL_NAME) $(call mkfs_target_dir,$(1))/boot/
+ $(foreach dts,$(DEVICE_DTS), \
+ $(CP) \
+ $(DTS_DIR)/$(dts).dtb \
+ $(call mkfs_target_dir,$(1))/boot/; \
+ )
+
+ rm -rf $@.rootfs
+ $(STAGING_DIR_HOST)/bin/make_ext4fs -L rootfs \
+ -l $(ROOTFS_PARTSIZE) -b $(CONFIG_TARGET_EXT4_BLOCKSIZE) \
+ $(if $(CONFIG_TARGET_EXT4_RESERVED_PCT),-m $(CONFIG_TARGET_EXT4_RESERVED_PCT)) \
+ $(if $(CONFIG_TARGET_EXT4_JOURNAL),,-J) \
+ $(if $(SOURCE_DATE_EPOCH),-T $(SOURCE_DATE_EPOCH)) \
+ $@.rootfs $(call mkfs_target_dir,$(1))/
+ mv $@.rootfs $@
+endef
+
define Build/mxs-sdcard-ext4-ext4
+ mv $@ $@.rootfs
+
./gen_sdcard_ext4_ext4.sh \
$@ \
$(STAGING_DIR_IMAGE)/$(DEVICE_NAME)/u-boot.sb \
- $(IMAGE_ROOTFS) \
+ $@.rootfs \
$(CONFIG_TARGET_ROOTFS_PARTSIZE)
endef
@@ -50,8 +72,9 @@ define Device/i2se_duckbill
uboot-envtools kmod-leds-gpio -kmod-nf-nathelper
SUPPORTED_DEVICES:=i2se,duckbill
SOC:=imx28
- DEVICE_DTS:=imx28-duckbill
- IMAGE/sdcard.img.gz = mxs-sdcard-ext4-ext4 | append-metadata | gzip
+ KERNEL := kernel-bin
+ DEVICE_DTS:=imx28-duckbill imx28-duckbill-2 imx28-duckbill-2-485 imx28-duckbill-2-spi
+ IMAGE/sdcard.img.gz = mxs-ext4-rootfs-with-boot | mxs-sdcard-ext4-ext4 | append-metadata | gzip
endef
TARGET_DEVICES += i2se_duckbill