To have only one place to describe the binman images us the
imx8mn-u-boot.dtsi. To have support for different DDR firmwares this
nodes are included dependent on the used DDR config option.

Signed-off-by: Heiko Thiery <heiko.thi...@gmail.com>
---
 arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi | 125 +-----------------
 arch/arm/dts/imx8mn-evk-u-boot.dtsi      | 120 +----------------
 arch/arm/dts/imx8mn-u-boot.dtsi          | 156 +++++++++++++++++++++++
 3 files changed, 159 insertions(+), 242 deletions(-)
 create mode 100644 arch/arm/dts/imx8mn-u-boot.dtsi

diff --git a/arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi 
b/arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi
index 2e39790766..ce06e7d797 100644
--- a/arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi
+++ b/arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi
@@ -3,11 +3,9 @@
  * Copyright 2019 NXP
  */
 
-/ {
-       binman: binman {
-               multiple-images;
-       };
+#include "imx8mn-u-boot.dtsi"
 
+/ {
        wdt-reboot {
                compatible = "wdt-reboot";
                wdt = <&wdog1>;
@@ -123,122 +121,3 @@
 &wdog1 {
        u-boot,dm-spl;
 };
-
-&binman {
-        u-boot-spl-ddr {
-               filename = "u-boot-spl-ddr.bin";
-               pad-byte = <0xff>;
-               align-size = <4>;
-               align = <4>;
-
-               u-boot-spl {
-                       align-end = <4>;
-               };
-
-               blob_1: blob-ext@1 {
-                       filename = "ddr4_imem_1d_201810.bin";
-                       size = <0x8000>;
-               };
-
-               blob_2: blob-ext@2 {
-                       filename = "ddr4_dmem_1d_201810.bin";
-                       size = <0x4000>;
-               };
-
-               blob_3: blob-ext@3 {
-                       filename = "ddr4_imem_2d_201810.bin";
-                       size = <0x8000>;
-               };
-
-               blob_4: blob-ext@4 {
-                       filename = "ddr4_dmem_2d_201810.bin";
-                       size = <0x4000>;
-               };
-       };
-
-
-       spl {
-               filename = "spl.bin";
-
-               mkimage {
-                       args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 
0x912000";
-
-                       blob {
-                               filename = "u-boot-spl-ddr.bin";
-                       };
-               };
-       };
-
-       itb {
-               filename = "u-boot.itb";
-
-               fit {
-                       description = "Configuration to load ATF before U-Boot";
-                       #address-cells = <1>;
-                       fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
-
-                       images {
-                               uboot {
-                                       description = "U-Boot (64-bit)";
-                                       type = "standalone";
-                                       arch = "arm64";
-                                       compression = "none";
-                                       load = <CONFIG_SYS_TEXT_BASE>;
-
-                                       uboot_blob: blob-ext {
-                                               filename = "u-boot-nodtb.bin";
-                                       };
-                               };
-
-                               atf {
-                                       description = "ARM Trusted Firmware";
-                                       type = "firmware";
-                                       arch = "arm64";
-                                       compression = "none";
-                                       load = <0x960000>;
-                                       entry = <0x960000>;
-
-                                       atf_blob: blob-ext {
-                                               filename = "bl31.bin";
-                                       };
-                               };
-
-                               fdt {
-                                       description = "NAME";
-                                       type = "flat_dt";
-                                       compression = "none";
-
-                                       uboot_fdt_blob: blob-ext {
-                                               filename = "u-boot.dtb";
-                                       };
-                               };
-                       };
-
-                       configurations {
-                               default = "conf";
-
-                               conf {
-                                       description = "NAME";
-                                       firmware = "uboot";
-                                       loadables = "atf";
-                                       fdt = "fdt";
-                               };
-                       };
-               };
-       };
-
-       imx-boot {
-               filename = "flash.bin";
-               pad-byte = <0x00>;
-
-               spl: blob-ext@1 {
-                       offset = <0x0>;
-                       filename = "spl.bin";
-               };
-
-               uboot: blob-ext@2 {
-                       offset = <0x58000>;
-                       filename = "u-boot.itb";
-               };
-       };
-};
diff --git a/arch/arm/dts/imx8mn-evk-u-boot.dtsi 
b/arch/arm/dts/imx8mn-evk-u-boot.dtsi
index d1427941eb..339c3dd681 100644
--- a/arch/arm/dts/imx8mn-evk-u-boot.dtsi
+++ b/arch/arm/dts/imx8mn-evk-u-boot.dtsi
@@ -3,6 +3,7 @@
  * Copyright 2019 NXP
  */
 
+#include "imx8mn-u-boot.dtsi"
 #include "imx8mn-ddr4-evk-u-boot.dtsi"
 
 &i2c1 {
@@ -24,122 +25,3 @@
 &pinctrl_pmic {
        u-boot,dm-spl;
 };
-
-&binman {
-        u-boot-spl-ddr {
-               filename = "u-boot-spl-ddr.bin";
-               pad-byte = <0xff>;
-               align-size = <4>;
-               align = <4>;
-
-               u-boot-spl {
-                       align-end = <4>;
-               };
-
-               blob_1: blob-ext@1 {
-                       filename = "lpddr4_pmu_train_1d_imem.bin";
-                       size = <0x8000>;
-               };
-
-               blob_2: blob-ext@2 {
-                       filename = "lpddr4_pmu_train_1d_dmem.bin";
-                       size = <0x4000>;
-               };
-
-               blob_3: blob-ext@3 {
-                       filename = "lpddr4_pmu_train_2d_imem.bin";
-                       size = <0x8000>;
-               };
-
-               blob_4: blob-ext@4 {
-                       filename = "lpddr4_pmu_train_2d_dmem.bin";
-                       size = <0x4000>;
-               };
-       };
-
-
-       spl {
-               filename = "spl.bin";
-
-               mkimage {
-                       args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 
0x912000";
-
-                       blob {
-                               filename = "u-boot-spl-ddr.bin";
-                       };
-               };
-       };
-
-       itb {
-               filename = "u-boot.itb";
-
-               fit {
-                       description = "Configuration to load ATF before U-Boot";
-                       #address-cells = <1>;
-                       fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
-
-                       images {
-                               uboot {
-                                       description = "U-Boot (64-bit)";
-                                       type = "standalone";
-                                       arch = "arm64";
-                                       compression = "none";
-                                       load = <CONFIG_SYS_TEXT_BASE>;
-
-                                       uboot_blob: blob-ext {
-                                               filename = "u-boot-nodtb.bin";
-                                       };
-                               };
-
-                               atf {
-                                       description = "ARM Trusted Firmware";
-                                       type = "firmware";
-                                       arch = "arm64";
-                                       compression = "none";
-                                       load = <0x960000>;
-                                       entry = <0x960000>;
-
-                                       atf_blob: blob-ext {
-                                               filename = "bl31.bin";
-                                       };
-                               };
-
-                               fdt {
-                                       description = "NAME";
-                                       type = "flat_dt";
-                                       compression = "none";
-
-                                       uboot_fdt_blob: blob-ext {
-                                               filename = "u-boot.dtb";
-                                       };
-                               };
-                       };
-
-                       configurations {
-                               default = "conf";
-
-                               conf {
-                                       description = "NAME";
-                                       firmware = "uboot";
-                                       loadables = "atf";
-                                       fdt = "fdt";
-                               };
-                       };
-               };
-       };
-
-       imx-boot {
-               filename = "flash.bin";
-               pad-byte = <0x00>;
-
-               spl: blob-ext@1 {
-                       offset = <0x0>;
-                       filename = "spl.bin";
-               };
-
-               uboot: blob-ext@2 {
-                       offset = <0x58000>;
-                       filename = "u-boot.itb";
-               };
-       };
-};
diff --git a/arch/arm/dts/imx8mn-u-boot.dtsi b/arch/arm/dts/imx8mn-u-boot.dtsi
new file mode 100644
index 0000000000..7b591085a0
--- /dev/null
+++ b/arch/arm/dts/imx8mn-u-boot.dtsi
@@ -0,0 +1,156 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright 2019 NXP
+ */
+
+/ {
+       binman: binman {
+               multiple-images;
+       };
+};
+
+&binman {
+        u_boot_spl_ddr: u-boot-spl-ddr {
+               filename = "u-boot-spl-ddr.bin";
+               pad-byte = <0xff>;
+               align-size = <4>;
+               align = <4>;
+
+               u-boot-spl {
+                       align-end = <4>;
+               };
+       };
+
+       spl {
+               filename = "spl.bin";
+
+               mkimage {
+                       args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 
0x912000";
+
+                       blob {
+                               filename = "u-boot-spl-ddr.bin";
+                       };
+               };
+       };
+
+       itb {
+               filename = "u-boot.itb";
+
+               fit {
+                       description = "Configuration to load ATF before U-Boot";
+                       #address-cells = <1>;
+                       fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
+
+                       images {
+                               uboot {
+                                       description = "U-Boot (64-bit)";
+                                       type = "standalone";
+                                       arch = "arm64";
+                                       compression = "none";
+                                       load = <CONFIG_SYS_TEXT_BASE>;
+
+                                       uboot_blob: blob-ext {
+                                               filename = "u-boot-nodtb.bin";
+                                       };
+                               };
+
+                               atf {
+                                       description = "ARM Trusted Firmware";
+                                       type = "firmware";
+                                       arch = "arm64";
+                                       compression = "none";
+                                       load = <0x960000>;
+                                       entry = <0x960000>;
+
+                                       atf_blob: blob-ext {
+                                               filename = "bl31.bin";
+                                       };
+                               };
+
+                               fdt {
+                                       description = "NAME";
+                                       type = "flat_dt";
+                                       compression = "none";
+
+                                       uboot_fdt_blob: blob-ext {
+                                               filename = "u-boot.dtb";
+                                       };
+                               };
+                       };
+
+                       configurations {
+                               default = "conf";
+
+                               conf {
+                                       description = "NAME";
+                                       firmware = "uboot";
+                                       loadables = "atf";
+                                       fdt = "fdt";
+                               };
+                       };
+               };
+       };
+
+       imx-boot {
+               filename = "flash.bin";
+               pad-byte = <0x00>;
+
+               spl: blob-ext@1 {
+                       offset = <0x0>;
+                       filename = "spl.bin";
+               };
+
+               uboot: blob-ext@2 {
+                       offset = <0x58000>;
+                       filename = "u-boot.itb";
+               };
+       };
+};
+
+#ifdef CONFIG_IMX8M_DDR4
+&u_boot_spl_ddr {
+       blob_1: blob-ext@1 {
+               filename = "ddr4_imem_1d_201810.bin";
+               size = <0x8000>;
+       };
+
+       blob_2: blob-ext@2 {
+               filename = "ddr4_dmem_1d_201810.bin";
+               size = <0x4000>;
+       };
+
+       blob_3: blob-ext@3 {
+               filename = "ddr4_imem_2d_201810.bin";
+               size = <0x8000>;
+       };
+
+       blob_4: blob-ext@4 {
+               filename = "ddr4_dmem_2d_201810.bin";
+               size = <0x4000>;
+       };
+};
+#elif CONFIG_IMX8M_LPDDR4
+&u_boot_spl_ddr {
+       blob_1: blob-ext@1 {
+               filename = "lpddr4_pmu_train_1d_imem.bin";
+               size = <0x8000>;
+       };
+
+       blob_2: blob-ext@2 {
+               filename = "lpddr4_pmu_train_1d_dmem.bin";
+               size = <0x4000>;
+       };
+
+       blob_3: blob-ext@3 {
+               filename = "lpddr4_pmu_train_2d_imem.bin";
+               size = <0x8000>;
+       };
+
+       blob_4: blob-ext@4 {
+               filename = "lpddr4_pmu_train_2d_dmem.bin";
+               size = <0x4000>;
+       };
+};
+#else
+       #error "no valid ddr config selected"
+#endif
-- 
2.30.2

Reply via email to