From 5031fbfd22c9a2c126bcab92998d70342b044c5e Mon Sep 17 00:00:00 2001 From: Tomasz Maciej Nowak Date: Tue, 25 Feb 2020 20:07:39 +0100 Subject: [PATCH] layerscape: ls1012afrdm: introduce dynamic partitioning Combine fixed sizes of "kernel" and "rootfs" partitions into one partition managed by OpenWrt splitter, it will allow better management of chip capacity and less maintenance burden when compiled kernel image will outgrow allocated size for kernel partition. This also changes kernel image format, since splitter only manages kernel and rootfs partitions, the dtb needs to be updated with the kernel, so for convenience, kernel is packed to FIT image. Signed-off-by: Tomasz Maciej Nowak --- package/boot/uboot-layerscape/files/ls1012afrdm-uEnv.txt | 4 ++-- target/linux/layerscape/armv8_64b/config-4.14 | 2 ++ target/linux/layerscape/image/armv8_64b.mk | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/package/boot/uboot-layerscape/files/ls1012afrdm-uEnv.txt b/package/boot/uboot-layerscape/files/ls1012afrdm-uEnv.txt index 0f213d85e8..415155810e 100644 --- a/package/boot/uboot-layerscape/files/ls1012afrdm-uEnv.txt +++ b/package/boot/uboot-layerscape/files/ls1012afrdm-uEnv.txt @@ -2,7 +2,7 @@ fdtaddr=0x8f000000 loadaddr=0x81000000 fdt_high=0xffffffffffffffff initrd_high=0xffffffffffffffff -qspi_boot=sf probe 0:0;sf read $fdtaddr f00000 100000;sf read $loadaddr 1000000 1000000;bootm $loadaddr - $fdtaddr -bootargs=rootfstype=squashfs,jffs2 noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=1550000.quadspi:1m(bl2),4m(fip),1m(u-boot-env),4m(reserved-1),3m(pfe),2m(reserved-2),1m(dtb),16m(kernel),32m(rootfs) +qspi_boot=sf probe 0:0;sf read $loadaddr 1000000 2800000;bootm $loadaddr +bootargs=rootfstype=squashfs,jffs2 noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=1550000.quadspi:1m(bl2),4m(fip),1m(u-boot-env),4m(reserved-1),3m(pfe),2m(reserved-2),1m(dtb),-(firmware) bootcmd=echo starting OpenWrt ...;pfe stop;run qspi_boot bootdelay=3 diff --git a/target/linux/layerscape/armv8_64b/config-4.14 b/target/linux/layerscape/armv8_64b/config-4.14 index 54e6d4cd9d..c1bd718366 100644 --- a/target/linux/layerscape/armv8_64b/config-4.14 +++ b/target/linux/layerscape/armv8_64b/config-4.14 @@ -630,6 +630,8 @@ CONFIG_MTD_NAND_FSL_IFC=y CONFIG_MTD_SPI_NOR=y CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y CONFIG_MTD_SPI_NOR_USE_4K_SECTORS_LIMIT=16384 +CONFIG_MTD_SPLIT_FIRMWARE=y +CONFIG_MTD_SPLIT_FIT_FW=y CONFIG_MTD_SST25L=y CONFIG_MTD_UBI=y CONFIG_MTD_UBI_BEB_LIMIT=20 diff --git a/target/linux/layerscape/image/armv8_64b.mk b/target/linux/layerscape/image/armv8_64b.mk index 70af95aa28..3a7b28c416 100644 --- a/target/linux/layerscape/image/armv8_64b.mk +++ b/target/linux/layerscape/image/armv8_64b.mk @@ -32,8 +32,9 @@ define Device/ls1012afrdm ls-append $(1)-uboot-env.bin | pad-to 10M | \ ls-append pfe.itb | pad-to 15M | \ ls-append-dtb $$(DEVICE_DTS) | pad-to 16M | \ - append-kernel | pad-to 32M | \ + append-kernel | pad-to $$(BLOCKSIZE) | \ append-rootfs | pad-rootfs | check-size 67108865 + KERNEL := kernel-bin | gzip | fit gzip $$(DTS_DIR)/$$(DEVICE_DTS).dtb KERNEL_INITRAMFS := kernel-bin | fit none $$(DTS_DIR)/$$(DEVICE_DTS).dtb endef TARGET_DEVICES += ls1012afrdm