boards/freescale/common: Introduce genimage.cfg.template_no_boot_part_spl
authorJoris Offouga <offougajoris@gmail.com>
Mon, 10 Jun 2019 19:41:42 +0000 (21:41 +0200)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Mon, 10 Jun 2019 21:36:37 +0000 (23:36 +0200)
Modern U-Boot assumes a layout where the first partition is an ext2 and
the kernel and dtb can be found in /boot. In other words, a layout
without boot partition.

Add a genimage.cfg template for the freescale defconfigs with such a
layout.

For now, only the layout with SPL+u-boot.img is added. It's unlikely that
the u-boot.imx approach will be used.

Signed-off-by: Joris Offouga <offougajoris@gmail.com>
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
Tested-by: Pierre-Jean Texier <pjtexier@koncepto.io>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl [new file with mode: 0644]
board/freescale/common/imx/post-image.sh

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
new file mode 100644 (file)
index 0000000..9cdecc6
--- /dev/null
@@ -0,0 +1,30 @@
+# Minimal SD card image for the Freescale boards Template for SPL Boot
+#
+# We mimic the .sdcard Freescale's image format:
+# * the SD card must have 1 kB free space at the beginning,
+# * SPL is at the offset expected by ROM,
+# * U-Boot is at the offset expected by SPL,
+# * The first partition is expected to be an ext2 and have a /boot directory.
+#
+
+image sdcard.img {
+  hdimage {
+  }
+
+  partition spl {
+    in-partition-table = "no"
+    image = "SPL"
+    offset = 1024
+  }
+
+  partition u-boot-img {
+    in-partition-table = "no"
+    image = "u-boot.img"
+    offset = 69K
+  }
+
+  partition rootfs {
+    partition-type = 0x83
+    image = "rootfs.ext2"
+  }
+}
index d07ad2ef5d28f90e0122f1d4ff33609b212a08dd..12756c63d547a2f837d6510c81813102212763f8 100755 (executable)
@@ -38,6 +38,10 @@ genimage_type()
                echo "genimage.cfg.template_imx8"
        elif grep -Eq "^BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX8X=y$" ${BR2_CONFIG}; then
                echo "genimage.cfg.template_imx8"
+       elif grep -Eq "^BR2_LINUX_KERNEL_INSTALL_TARGET=y$" ${BR2_CONFIG}; then
+               if grep -Eq "^BR2_TARGET_UBOOT_SPL=y$" ${BR2_CONFIG}; then
+                   echo "genimage.cfg.template_no_boot_part_spl"
+               fi
        elif grep -Eq "^BR2_TARGET_UBOOT_SPL=y$" ${BR2_CONFIG}; then
                echo "genimage.cfg.template_spl"
        else