
Hello Tim,
On 09.07.21 16:47, Tim Harvey wrote:
On Wed, Jul 7, 2021 at 5:58 AM Teresa Remmet t.remmet@phytec.de wrote:
Factor out the common node settings for dm-spl and dm-pre-reloc and move them to imx8mp-u-boot.dtsi
Signed-off-by: Teresa Remmet t.remmet@phytec.de Reviewed-by: Fabio Estevam festevam@gmail.com Reviewed-by: Heiko Schocher hs@denx.de
Changes in v3:
- Moved binman nodes to common imx8mp-u-boot.dtsi
Changes in v2:
- none
arch/arm/dts/imx8mp-evk-u-boot.dtsi | 143 +---------------- .../imx8mp-phyboard-pollux-rdk-u-boot.dtsi | 39 +---- arch/arm/dts/imx8mp-u-boot.dtsi | 149 ++++++++++++++++++ 3 files changed, 153 insertions(+), 178 deletions(-) create mode 100644 arch/arm/dts/imx8mp-u-boot.dtsi
diff --git a/arch/arm/dts/imx8mp-evk-u-boot.dtsi b/arch/arm/dts/imx8mp-evk-u-boot.dtsi index 4162f41cffb6..2abcf1f03d4f 100644 --- a/arch/arm/dts/imx8mp-evk-u-boot.dtsi +++ b/arch/arm/dts/imx8mp-evk-u-boot.dtsi @@ -3,11 +3,9 @@
- Copyright 2019 NXP
*/
-/ {
binman: binman {
multiple-images;
};
+#include "imx8mp-u-boot.dtsi"
+/ { wdt-reboot { compatible = "wdt-reboot"; wdt = <&wdog1>; @@ -21,43 +19,6 @@ }; };
-&{/soc@0} {
u-boot,dm-pre-reloc;
u-boot,dm-spl;
-};
-&clk {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
-};
-&osc_32k {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
-};
-&osc_24m {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
-};
-&aips1 {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
-};
-&aips2 {
u-boot,dm-spl;
-};
-&aips3 {
u-boot,dm-spl;
-};
-&iomuxc {
u-boot,dm-spl;
-};
®_usdhc2_vmmc { u-boot,off-on-delay-us = <20000>; }; @@ -156,104 +117,4 @@ phy-reset-post-delay = <100>; };
-&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_202006.bin";
size = <0x8000>;
};
blob_2: blob-ext@2 {
filename = "lpddr4_pmu_train_1d_dmem_202006.bin";
size = <0x4000>;
};
blob_3: blob-ext@3 {
filename = "lpddr4_pmu_train_2d_imem_202006.bin";
size = <0x8000>;
};
blob_4: blob-ext@4 {
filename = "lpddr4_pmu_train_2d_dmem_202006.bin";
size = <0x4000>;
};
};
flash {
mkimage {
args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 0x920000";
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 = <0x970000>;
entry = <0x970000>;
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";
};
};
};
};
-}; diff --git a/arch/arm/dts/imx8mp-phyboard-pollux-rdk-u-boot.dtsi b/arch/arm/dts/imx8mp-phyboard-pollux-rdk-u-boot.dtsi index 20e7f63ff91f..6c1528934a98 100644 --- a/arch/arm/dts/imx8mp-phyboard-pollux-rdk-u-boot.dtsi +++ b/arch/arm/dts/imx8mp-phyboard-pollux-rdk-u-boot.dtsi @@ -4,6 +4,8 @@
- Author: Teresa Remmet t.remmet@phytec.de
*/
+#include "imx8mp-u-boot.dtsi"
/ { wdt-reboot { compatible = "wdt-reboot"; @@ -12,43 +14,6 @@ }; };
-&{/soc@0} {
u-boot,dm-pre-reloc;
u-boot,dm-spl;
-};
-&clk {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
-};
-&osc_32k {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
-};
-&osc_24m {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
-};
-&aips1 {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
-};
-&aips2 {
u-boot,dm-spl;
-};
-&aips3 {
u-boot,dm-spl;
-};
-&iomuxc {
u-boot,dm-spl;
-};
®_usdhc2_vmmc { u-boot,dm-spl; }; diff --git a/arch/arm/dts/imx8mp-u-boot.dtsi b/arch/arm/dts/imx8mp-u-boot.dtsi new file mode 100644 index 000000000000..d61346da3032 --- /dev/null +++ b/arch/arm/dts/imx8mp-u-boot.dtsi @@ -0,0 +1,149 @@ +// SPDX-License-Identifier: GPL-2.0-or-later +/*
- Copyright (C) 2021 PHYTEC Messtechnik GmbH
- Author: Teresa Remmet t.remmet@phytec.de
- */
+/ {
binman: binman {
multiple-images;
};
+};
+&{/soc@0} {
u-boot,dm-pre-reloc;
u-boot,dm-spl;
+};
+&clk {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
+};
+&osc_32k {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
+};
+&osc_24m {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
+};
+&aips1 {
u-boot,dm-spl;
u-boot,dm-pre-reloc;
+};
+&aips2 {
u-boot,dm-spl;
+};
+&aips3 {
u-boot,dm-spl;
+};
+&iomuxc {
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_202006.bin";
size = <0x8000>;
};
blob_2: blob-ext@2 {
filename = "lpddr4_pmu_train_1d_dmem_202006.bin";
size = <0x4000>;
};
blob_3: blob-ext@3 {
filename = "lpddr4_pmu_train_2d_imem_202006.bin";
size = <0x8000>;
};
blob_4: blob-ext@4 {
filename = "lpddr4_pmu_train_2d_dmem_202006.bin";
size = <0x4000>;
};
};
flash {
mkimage {
args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 0x920000";
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 = <0x970000>;
entry = <0x970000>;
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";
};
};
};
};
+};
2.25.1
Teresa,
I've noticed many of the imx8m boards migrating to using binman for image packaging.
Doesn't this change from having a single flash.bin encompasing the SPL and U-Boot proper to having split files? I noticed that happened with imx8mm_evk for example when it switched to binman.
Yes, but you can easy generate there a single image again.
What are the benefits to using binman?
Beside the pros from binmal in general, I see the benefit in special for imx8mp, that you can get all infos you need for signing the image from within the image. No need to save some log output from U-Boot build and parse this output ...
bye, Heiko