aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomasz Maciej Nowak <tomek_n@o2.pl>2020-02-25 20:07:39 +0100
committerPetr Štetiar <ynezz@true.cz>2020-03-12 12:59:44 +0100
commit5031fbfd22c9a2c126bcab92998d70342b044c5e (patch)
tree15c7f3276d55b1a886c3bfa435ac72f61b932532
parent63f5268c7ffc774da6f1c3e2fa4bab15527a5632 (diff)
downloadupstream-5031fbfd22c9a2c126bcab92998d70342b044c5e.tar.gz
upstream-5031fbfd22c9a2c126bcab92998d70342b044c5e.tar.bz2
upstream-5031fbfd22c9a2c126bcab92998d70342b044c5e.zip
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 <tomek_n@o2.pl>
-rw-r--r--package/boot/uboot-layerscape/files/ls1012afrdm-uEnv.txt4
-rw-r--r--target/linux/layerscape/armv8_64b/config-4.142
-rw-r--r--target/linux/layerscape/image/armv8_64b.mk3
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