summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Eichenberger <stefan.eichenberger@toradex.com>2026-08-07 13:41:53 +0200
committerFabio Estevam <festevam@gmail.com>2026-08-14 16:19:13 -0300
commit4ca344e2252ce5dae3d7e7762d32dd6e9892df1c (patch)
tree1cba9c3549365fb2c88477e780570fa7ee5ea000
parentff6696196bccfc2fe9746cf13490f6c96eaa8f3d (diff)
downloadu-boot-4ca344e2252ce5dae3d7e7762d32dd6e9892df1c.tar.gz
u-boot-4ca344e2252ce5dae3d7e7762d32dd6e9892df1c.zip
board: toradex: smarc-imx95: add SPL quick boot autosave support
Add support for the QuickBoot save feature in the SPL for Toradex SMARC iMX95 modules to speed up boot time by skipping DDR training if a valid QuickBoot save is found. When CONFIG_SPL_IMX_QB is enabled, the settings will be stored automatically from the SPL. Otherwise, the command 'qb save mmc 0:1' must be used. Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
-rw-r--r--board/toradex/smarc-imx95/spl.c4
-rw-r--r--configs/toradex-smarc-imx95_defconfig2
2 files changed, 6 insertions, 0 deletions
diff --git a/board/toradex/smarc-imx95/spl.c b/board/toradex/smarc-imx95/spl.c
index ce8da89410b..aebb4a2f0b6 100644
--- a/board/toradex/smarc-imx95/spl.c
+++ b/board/toradex/smarc-imx95/spl.c
@@ -6,6 +6,7 @@
#include <asm/arch/sys_proto.h>
#include <asm/mach-imx/boot_mode.h>
#include <asm/mach-imx/ele_api.h>
+#include <asm/mach-imx/qb.h>
#include <asm/sections.h>
#include <asm/global_data.h>
#include <clk.h>
@@ -81,6 +82,9 @@ void spl_board_init(void)
ret = ele_start_rng();
if (ret)
printf("Fail to start RNG: %d\n", ret);
+
+ if (IS_ENABLED(CONFIG_SPL_IMX_QB))
+ spl_imx_qb_save();
}
void board_init_f(ulong dummy)
diff --git a/configs/toradex-smarc-imx95_defconfig b/configs/toradex-smarc-imx95_defconfig
index 9abadb0ed1a..b76d1fb3cd7 100644
--- a/configs/toradex-smarc-imx95_defconfig
+++ b/configs/toradex-smarc-imx95_defconfig
@@ -26,6 +26,7 @@ CONFIG_SYS_LOAD_ADDR=0x90400000
CONFIG_WATCHDOG_TIMEOUT_MSECS=30000
CONFIG_SPL=y
CONFIG_SPL_RECOVER_DATA_SECTION=y
+CONFIG_SPL_IMX_QB=y
CONFIG_PCI=y
CONFIG_SYS_MEMTEST_START=0x90000000
CONFIG_SYS_MEMTEST_END=0xA0000000
@@ -59,6 +60,7 @@ CONFIG_SPL_SYS_MMCSD_RAW_MODE=y
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1040
CONFIG_SPL_I2C=y
CONFIG_SPL_DM_MAILBOX=y
+CONFIG_SPL_MMC_WRITE=y
CONFIG_SPL_POWER_DOMAIN=y
CONFIG_SPL_THERMAL=y
CONFIG_SPL_WATCHDOG=y