From 0351a60b95cfa775215d64646c81fbed1de4f341 Mon Sep 17 00:00:00 2001 From: Fabio Estevam Date: Sat, 13 Nov 2021 18:42:45 -0300 Subject: [PATCH] board/freescale/common/imx: place rootfs at proper offset when BR2_LINUX_KERNEL_INSTALL_TARGET=y Currently, when BR2_LINUX_KERNEL_INSTALL_TARGET=y is selected, issuing a "saveenv" command in the U-Boot prompt may lead to rootfs corruption. When BR2_LINUX_KERNEL_INSTALL_TARGET is not selected, then board/freescale/common/imx/genimage.cfg.template is used as per the logic inside board/freescale/common/imx/post-image.sh. board/freescale/common/imx/genimage.cfg.template correctly puts the rootfs at a safe offset. With BR2_LINUX_KERNEL_INSTALL_TARGET=y, then board/freescale/common/imx/genimage.cfg.template_no_boot_part or board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl are used and no offset to the rootfs is given, which may cause U-Boot environment area to write into the rootfs area, causing the rootfs corruption. Avoid this problem by placing the rootfs at an 8MB offset, just like it is done in board/freescale/common/imx/genimage.cfg. Tested on a imx6qp-wandboard and also on a custom imx6ull based board. "saveenv" does not corrupt the rootfs anymore after this change. Signed-off-by: Fabio Estevam Signed-off-by: Thomas Petazzoni --- board/freescale/common/imx/genimage.cfg.template_no_boot_part | 1 + .../freescale/common/imx/genimage.cfg.template_no_boot_part_spl | 1 + 2 files changed, 2 insertions(+) diff --git a/board/freescale/common/imx/genimage.cfg.template_no_boot_part b/board/freescale/common/imx/genimage.cfg.template_no_boot_part index edc34d0fcd..b8fa43210b 100644 --- a/board/freescale/common/imx/genimage.cfg.template_no_boot_part +++ b/board/freescale/common/imx/genimage.cfg.template_no_boot_part @@ -11,5 +11,6 @@ image sdcard.img { partition rootfs { partition-type = 0x83 image = "rootfs.ext2" + offset = 8M } } diff --git a/board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl b/board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl index c29032572a..ef015918a5 100644 --- a/board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl +++ b/board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl @@ -26,5 +26,6 @@ image sdcard.img { partition rootfs { partition-type = 0x83 image = "rootfs.ext2" + offset = 8M } }