[PATCH 4/7] arm: dts: imx8mm: Create generic DTSI for booting from FlexSPI

Adam Ford aford173 at gmail.com
Sat Feb 5 17:22:36 CET 2022


There is a common imx8mm-u-boot.dtsi that generates images for
booting from MMC, but when booting FlexSPI, the image needs
to be created differently.  To facilitate this, the new
dtsi file includes the old one, deletes the node that
packages the  SPL + U-Boot.itb, and replaces it with a node that
packages the FlexSPI Config Block + SPL + U-Boot.itb and puts
them to their proper respective locations for FlexSPI booting.

Signed-off-by: Adam Ford <aford173 at gmail.com>

diff --git a/arch/arm/dts/imx8mm-flexspi-u-boot-dtsi b/arch/arm/dts/imx8mm-flexspi-u-boot-dtsi
new file mode 100644
index 0000000000..1b889afa0c
--- /dev/null
+++ b/arch/arm/dts/imx8mm-flexspi-u-boot-dtsi
@@ -0,0 +1,37 @@
+// SPDX-License-Identifier: GPL-2.0+
+
+#include "imx8mm-u-boot.dtsi"
+
+/*
+ * According to the TRM, the FlexSPI Configuration block exists at
+ * offset 0.  This pushes SPL and U-Boot proper to different addresses
+ * To facilicate this, we'll delete the previous node and create a new
+ * one specific to the FlexSPI booting.
+ */
+
+ &binman {
+ 	/delete-node/ imx-boot;
+
+	imx-fspi-boot {
+		filename = "flash.bin";
+		pad-byte = <0x00>;
+
+		fcfb {
+			filename = "arch/arm/mach-imx/imx8m/fcfb.bin";
+			offset = <0x00>;
+			type = "blob-ext";
+		};
+
+		spl {
+			filename = "spl.bin";
+			offset = <0x1000>;
+			type = "blob-ext";
+		};
+
+		binman_uboot: uboot {
+			filename = "u-boot.itb";
+			offset = <0x600000>;
+			type = "blob-ext";
+		};
+	};
+ };
-- 
2.32.0



More information about the U-Boot mailing list