[PATCH 3/4] rockchip: spl: default to Falcon mode boot in SPL if enabled
Alexey Charkov
alchark at flipper.net
Tue Jun 9 18:52:26 CEST 2026
Common code calls into a platform specific function to determine whether
to attempt OS boot in Falcon mode.
There is currently no platform logic to drive that decision on Rockchip,
so attempt Falcon mode boot whenever it is enabled in the configuration.
This can be overridden by board code if needed with appropriate logic, such
as checking for a button state to skip Falcon mode boot when pressed.
Signed-off-by: Alexey Charkov <alchark at flipper.net>
---
arch/arm/mach-rockchip/spl.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/arch/arm/mach-rockchip/spl.c b/arch/arm/mach-rockchip/spl.c
index e989c148079a..604199f72a0c 100644
--- a/arch/arm/mach-rockchip/spl.c
+++ b/arch/arm/mach-rockchip/spl.c
@@ -153,6 +153,18 @@ void spl_board_prepare_for_boot(void)
cleanup_before_linux();
}
+#if CONFIG_IS_ENABLED(OS_BOOT)
+/*
+ * For Rockchip Falcon mode (direct Linux boot via ATF from SPL), always
+ * request OS boot. Boards that need conditional U-Boot fallback can
+ * override this function.
+ */
+__weak int spl_start_uboot(void)
+{
+ return 0;
+}
+#endif
+
#if CONFIG_IS_ENABLED(RAM_DEVICE) && IS_ENABLED(CONFIG_SPL_LOAD_FIT)
binman_sym_declare_optional(ulong, payload, image_pos);
binman_sym_declare_optional(ulong, payload, size);
--
2.53.0
More information about the U-Boot
mailing list