summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2025-12-07 08:05:09 -0600
committerTom Rini <[email protected]>2025-12-07 08:05:09 -0600
commit06e1e2e271a27a3184b05954d313c751014a6c1b (patch)
treeef3f5667af0223e464ea4c5dc08411965a7e9256
parent17d1e039e1c41a7bd3ca04756a7dd647744db9eb (diff)
parent76948dd22d7ef5c4b5edaf09e29c422ce7d288dd (diff)
Merge tag 'u-boot-imx-next-20251206' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx into next
CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/28658 - Fix the i.MX9 USB instance number for revision B0. - Add nxp-imx9image etype for binman node. - Use default for SYS_MALLOC_F_LEN for apalis-imx8 and colibri-imx8x. - Switch phycore-imx93 to standard boot. - Update the nitrogen6x maintainer.
-rw-r--r--arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi16
-rw-r--r--arch/arm/dts/imx93-u-boot.dtsi125
-rw-r--r--arch/arm/mach-imx/imx9/scmi/soc.c2
-rw-r--r--board/boundary/nitrogen6x/MAINTAINERS2
-rw-r--r--board/phytec/phycore_imx93/phycore-imx93.c2
-rw-r--r--board/phytec/phycore_imx93/phycore_imx93.env70
-rw-r--r--configs/apalis-imx8_defconfig1
-rw-r--r--configs/colibri-imx8x_defconfig1
-rw-r--r--configs/imx93-phycore_defconfig10
9 files changed, 92 insertions, 137 deletions
diff --git a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
index 0c8d0ba9693..646b617949d 100644
--- a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
+++ b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
@@ -30,6 +30,22 @@
ethernet1 = &eqos;
};
+ bootstd {
+ bootph-verify;
+ compatible = "u-boot,boot-std";
+
+ filename-prefixes = "/", "/boot/";
+ bootdev-order = "mmc0", "mmc1", "ethernet";
+
+ rauc {
+ compatible = "u-boot,distro-rauc";
+ };
+
+ script {
+ compatible = "u-boot,script";
+ };
+ };
+
firmware {
optee {
compatible = "linaro,optee-tz";
diff --git a/arch/arm/dts/imx93-u-boot.dtsi b/arch/arm/dts/imx93-u-boot.dtsi
index b2b3d57318f..dc86746ac90 100644
--- a/arch/arm/dts/imx93-u-boot.dtsi
+++ b/arch/arm/dts/imx93-u-boot.dtsi
@@ -6,93 +6,80 @@
/ {
binman: binman {
multiple-images;
- };
-};
-&A55_0 {
- clocks = <&clk IMX93_CLK_ARM_PLL>;
-};
-
-&A55_1 {
- clocks = <&clk IMX93_CLK_ARM_PLL>;
-};
+ u-boot-spl-ddr {
+ align = <4>;
+ align-size = <4>;
+ filename = "u-boot-spl-ddr.bin";
+ pad-byte = <0xff>;
-&binman {
- u-boot-spl-ddr {
- align = <4>;
- align-size = <4>;
- filename = "u-boot-spl-ddr.bin";
- pad-byte = <0xff>;
-
- u-boot-spl {
- align-end = <4>;
- filename = "u-boot-spl.bin";
- };
+ u-boot-spl {
+ align-end = <4>;
+ filename = "u-boot-spl.bin";
+ };
- ddr-1d-imem-fw {
- filename = "lpddr4_imem_1d_v202201.bin";
- align-end = <4>;
- type = "blob-ext";
- };
+ ddr-1d-imem-fw {
+ filename = "lpddr4_imem_1d_v202201.bin";
+ align-end = <4>;
+ type = "blob-ext";
+ };
- ddr-1d-dmem-fw {
- filename = "lpddr4_dmem_1d_v202201.bin";
- align-end = <4>;
- type = "blob-ext";
- };
+ ddr-1d-dmem-fw {
+ filename = "lpddr4_dmem_1d_v202201.bin";
+ align-end = <4>;
+ type = "blob-ext";
+ };
- ddr-2d-imem-fw {
- filename = "lpddr4_imem_2d_v202201.bin";
- align-end = <4>;
- type = "blob-ext";
- };
+ ddr-2d-imem-fw {
+ filename = "lpddr4_imem_2d_v202201.bin";
+ align-end = <4>;
+ type = "blob-ext";
+ };
- ddr-2d-dmem-fw {
- filename = "lpddr4_dmem_2d_v202201.bin";
- align-end = <4>;
- type = "blob-ext";
+ ddr-2d-dmem-fw {
+ filename = "lpddr4_dmem_2d_v202201.bin";
+ align-end = <4>;
+ type = "blob-ext";
+ };
};
- };
- spl {
- filename = "spl.bin";
+ imx-boot {
+ filename = "flash.bin";
+ pad-byte = <0x00>;
- mkimage {
- args = "-n spl/u-boot-spl.cfgout -T imx8image -e 0x2049A000";
+ spl {
+ type = "nxp-imx9image";
+ cfg-path = "spl/u-boot-spl.cfgout";
+ args;
- blob {
- filename = "u-boot-spl-ddr.bin";
+ boot-from = "sd";
+ soc-type = "IMX9";
+ append = "mx93a1-ahab-container.img";
+ container;
+ image = "a55", "u-boot-spl-ddr.bin", "0x2049A000";
};
- };
- };
-
- u-boot-container {
- filename = "u-boot-container.bin";
- mkimage {
- args = "-n u-boot-container.cfgout -T imx8image -e 0x0";
+ u-boot {
+ type = "nxp-imx9image";
+ cfg-path = "u-boot-container.cfgout";
+ args;
- blob {
- filename = "u-boot.bin";
+ boot-from = "sd";
+ soc-type = "IMX9";
+ container;
+ image0 = "a55", "bl31.bin", "0x204E0000";
+ image1 = "a55", "u-boot.bin", "0x80200000";
};
};
};
+};
- imx-boot {
- filename = "flash.bin";
- pad-byte = <0x00>;
-
- spl: blob-ext@1 {
- filename = "spl.bin";
- offset = <0x0>;
- align-size = <0x400>;
- align = <0x400>;
- };
+&A55_0 {
+ clocks = <&clk IMX93_CLK_ARM_PLL>;
+};
- uboot: blob-ext@2 {
- filename = "u-boot-container.bin";
- };
- };
+&A55_1 {
+ clocks = <&clk IMX93_CLK_ARM_PLL>;
};
&tmu {
diff --git a/arch/arm/mach-imx/imx9/scmi/soc.c b/arch/arm/mach-imx/imx9/scmi/soc.c
index dbaa19a9e6e..c1458ccca3c 100644
--- a/arch/arm/mach-imx/imx9/scmi/soc.c
+++ b/arch/arm/mach-imx/imx9/scmi/soc.c
@@ -921,7 +921,7 @@ enum boot_device get_boot_device(void)
break;
case BT_DEV_TYPE_USB:
boot_dev = boot_instance + USB_BOOT;
- if (IS_ENABLED(CONFIG_IMX95))
+ if (is_imx95() && (soc_rev() < CHIP_REV_2_0))
boot_dev -= 3; //iMX95 usb instance start at 3
break;
default:
diff --git a/board/boundary/nitrogen6x/MAINTAINERS b/board/boundary/nitrogen6x/MAINTAINERS
index 17018d69f64..c7355b0e40e 100644
--- a/board/boundary/nitrogen6x/MAINTAINERS
+++ b/board/boundary/nitrogen6x/MAINTAINERS
@@ -1,5 +1,5 @@
NITROGEN6X BOARD
-M: Troy Kisky <[email protected]>
+M: Simon Gaynor <[email protected]>
S: Maintained
F: arch/arm/dts/imx6dl-nitrogen6x.dts
F: arch/arm/dts/imx6q-nitrogen6x.dts
diff --git a/board/phytec/phycore_imx93/phycore-imx93.c b/board/phytec/phycore_imx93/phycore-imx93.c
index c6a4e923b07..cfc6d91f20f 100644
--- a/board/phytec/phycore_imx93/phycore-imx93.c
+++ b/board/phytec/phycore_imx93/phycore-imx93.c
@@ -38,6 +38,8 @@ int board_late_init(void)
switch (get_boot_device()) {
case SD2_BOOT:
env_set_ulong("mmcdev", 1);
+ if (!env_get("boot_targets"))
+ env_set("boot_targets", "mmc1 mmc0 ethernet");
break;
case MMC1_BOOT:
env_set_ulong("mmcdev", 0);
diff --git a/board/phytec/phycore_imx93/phycore_imx93.env b/board/phytec/phycore_imx93/phycore_imx93.env
index 7b0a90e6447..4e89c4ae26c 100644
--- a/board/phytec/phycore_imx93/phycore_imx93.env
+++ b/board/phytec/phycore_imx93/phycore_imx93.env
@@ -1,70 +1,14 @@
/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
-#include <env/phytec/rauc.env>
-#include <env/phytec/overlays.env>
-
-bootcmd=
- mmc dev ${mmcdev};
- if mmc rescan; then
- if test ${doraucboot} = 1; then
- run raucinit;
- fi;
- if run loadimage; then
- run mmcboot;
- else
- run netboot;
- fi;
- fi;
-image=Image
+boot_script_dhcp=net_boot_fit.scr.uimg
console=ttyLP0
+emmc_dev=0 /* This is needed by built-in uuu flash scripts */
fdt_addr_r=0x90000000
-fdtoverlay_addr_r=0x900c0000
-bootenv_addr_r=0x90500000
fdtfile=CONFIG_DEFAULT_FDT_FILE
+fdtoverlay_addr_r=0x900c0000
ip_dyn=yes
+kernel_addr_r=0x88000000
+nfsroot=/srv/nfs
prepare_mcore=setenv optargs "${optargs} clk-imx93.mcore_booted"
-mmcdev=CONFIG_ENV_MMC_DEVICE_INDEX
-mmcpart=1
-mmcroot=2
-mmcautodetect=yes
-mmcargs=setenv bootargs console=${console},${baudrate} earlycon
- root=/dev/mmcblk${mmcdev}p${mmcroot} ${raucargs} rootwait rw ${optargs}
-loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}
-loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr_r} ${fdtfile}
-mmcboot=
- echo Booting from mmc ...;
- if test ${no_bootenv} = 0; then
- if run mmc_load_bootenv; then
- env import -t ${bootenv_addr_r} ${filesize};
- fi;
- fi;
- run mmcargs;
- if run loadfdt; then
- run mmc_apply_overlays;
- booti ${loadaddr} - ${fdt_addr_r};
- else
- echo WARN: Cannot load the DT;
- fi;
-nfsroot=/nfs
-netargs=setenv bootargs console=${console},${baudrate} earlycon
- root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp ${optargs}
-netboot=
- echo Booting from net ...;
- run netargs;
- if test ${ip_dyn} = yes; then
- setenv get_cmd dhcp;
- else
- setenv get_cmd tftp;
- fi;
- if test ${no_bootenv} = 0; then
- if run net_load_bootenv; then
- env import -t ${bootenv_addr_r} ${filesize};
- fi;
- fi;
- ${get_cmd} ${loadaddr} ${image};
- if ${get_cmd} ${fdt_addr_r} ${fdtfile}; then
- run net_apply_overlays;
- booti ${loadaddr} - ${fdt_addr_r};
- else
- echo WARN: Cannot load the DT;
- fi;
+scriptaddr=0x83500000
+sd_dev=1 /* This is needed by built-in uuu flash scripts */
diff --git a/configs/apalis-imx8_defconfig b/configs/apalis-imx8_defconfig
index b8754f912a4..064ab0546f1 100644
--- a/configs/apalis-imx8_defconfig
+++ b/configs/apalis-imx8_defconfig
@@ -2,7 +2,6 @@ CONFIG_ARM=y
CONFIG_ARCH_IMX8=y
CONFIG_TEXT_BASE=0x80020000
CONFIG_SYS_MALLOC_LEN=0x2800000
-CONFIG_SYS_MALLOC_F_LEN=0x4000
CONFIG_NR_DRAM_BANKS=3
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80200000
diff --git a/configs/colibri-imx8x_defconfig b/configs/colibri-imx8x_defconfig
index d90bce3ebb6..fdd4a51a70a 100644
--- a/configs/colibri-imx8x_defconfig
+++ b/configs/colibri-imx8x_defconfig
@@ -2,7 +2,6 @@ CONFIG_ARM=y
CONFIG_ARCH_IMX8=y
CONFIG_TEXT_BASE=0x80020000
CONFIG_SYS_MALLOC_LEN=0x2800000
-CONFIG_SYS_MALLOC_F_LEN=0x4000
CONFIG_NR_DRAM_BANKS=3
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80200000
diff --git a/configs/imx93-phycore_defconfig b/configs/imx93-phycore_defconfig
index 4c952e966d1..ac719372b41 100644
--- a/configs/imx93-phycore_defconfig
+++ b/configs/imx93-phycore_defconfig
@@ -5,10 +5,10 @@ CONFIG_SYS_MALLOC_LEN=0x2000000
CONFIG_SYS_MALLOC_F_LEN=0x20000
CONFIG_SPL_LIBCOMMON_SUPPORT=y
CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_ENV_SOURCE_FILE="phycore_imx93"
CONFIG_NR_DRAM_BANKS=2
CONFIG_PHYTEC_SOM_DETECTION=y
CONFIG_PHYTEC_EEPROM_BUS=2
-CONFIG_ENV_SOURCE_FILE="phycore_imx93"
CONFIG_ENV_SIZE=0x10000
CONFIG_ENV_OFFSET=0x700000
CONFIG_IMX_CONFIG="arch/arm/mach-imx/imx9/imximage.cfg"
@@ -33,6 +33,9 @@ CONFIG_SYS_MEMTEST_START=0x80000000
CONFIG_SYS_MEMTEST_END=0x90000000
CONFIG_REMAKE_ELF=y
# CONFIG_ANDROID_BOOT_IMAGE is not set
+CONFIG_FIT=y
+CONFIG_FIT_SIGNATURE=y
+CONFIG_BOOTSTD_FULL=y
CONFIG_DISTRO_DEFAULTS=y
CONFIG_OF_SYSTEM_SETUP=y
CONFIG_DEFAULT_FDT_FILE="oftree"
@@ -52,6 +55,9 @@ CONFIG_SPL_I2C=y
CONFIG_SPL_POWER=y
CONFIG_SPL_WATCHDOG=y
CONFIG_SYS_PROMPT="u-boot=> "
+# CONFIG_CMD_BOOTDEV is not set
+# CONFIG_CMD_BOOTMETH is not set
+# CONFIG_CMD_BOOTSTD is not set
CONFIG_CMD_ERASEENV=y
CONFIG_CMD_NVEDIT_EFI=y
CONFIG_CRC32_VERIFY=y
@@ -149,5 +155,7 @@ CONFIG_USB_GADGET_VENDOR_NUM=0x1fc9
CONFIG_USB_GADGET_PRODUCT_NUM=0x0152
CONFIG_CI_UDC=y
CONFIG_ULP_WATCHDOG=y
+# CONFIG_RSA is not set
+# CONFIG_SPL_SHA256 is not set
CONFIG_LZO=y
CONFIG_BZIP2=y