[PATCH] cmd: spl: Remove ATAG support from this command

Anshul Dalal anshuld at ti.com
Tue Sep 16 08:29:41 CEST 2025


On Tue Sep 16, 2025 at 12:35 AM IST, Tom Rini wrote:
> While we continue to have some systems which support extremely legacy
> OS booting methods, we do not have use cases for supporting this in
> Falcon mode anymore. Remove this support and references from the
> documentation.
>
> Signed-off-by: Tom Rini <trini at konsulko.com>
> ---
>  cmd/spl.c               | 18 ---------
>  doc/README.commands.spl | 14 ++-----
>  doc/develop/falcon.rst  | 84 ++++-------------------------------------
>  include/cmd_spl.h       |  3 +-
>  4 files changed, 11 insertions(+), 108 deletions(-)
>
> diff --git a/cmd/spl.c b/cmd/spl.c
> index 379b512f1ffd..90193b43abf4 100644
> --- a/cmd/spl.c
> +++ b/cmd/spl.c
> @@ -27,19 +27,6 @@ static const char **subcmd_list[] = {
>  		"cmdline",
>  		"bdt",
>  		"prep",
> -#endif
> -		NULL,
> -	},
> -	[SPL_EXPORT_ATAGS] = (const char * []) {
> -#ifdef CONFIG_SUPPORT_PASSING_ATAGS
> -		"start",
> -		"loados",
> -#ifdef CONFIG_SYS_BOOT_RAMDISK_HIGH
> -		"ramdisk",
> -#endif
> -		"cmdline",
> -		"bdt",
> -		"prep",
>  #endif
>  		NULL,
>  	},
> @@ -96,7 +83,6 @@ static int call_bootm(int argc, char *const argv[], const char *subcommand[])
>  
>  static struct cmd_tbl cmd_spl_export_sub[] = {
>  	U_BOOT_CMD_MKENT(fdt, 0, 1, (void *)SPL_EXPORT_FDT, "", ""),
> -	U_BOOT_CMD_MKENT(atags, 0, 1, (void *)SPL_EXPORT_ATAGS, "", ""),
>  };
>  
>  static int spl_export(struct cmd_tbl *cmdtp, int flag, int argc,
> @@ -128,10 +114,6 @@ static int spl_export(struct cmd_tbl *cmdtp, int flag, int argc,
>  #endif
>  			break;
>  #endif
> -		case SPL_EXPORT_ATAGS:
> -			printf("Argument image is now in RAM at: 0x%p\n",
> -				(void *)gd->bd->bi_boot_params);
> -			break;
>  		}
>  	} else {
>  		/* Unrecognized command */
> diff --git a/doc/README.commands.spl b/doc/README.commands.spl
> index ecfd3ca9ee58..54cc5b1ec421 100644
> --- a/doc/README.commands.spl
> +++ b/doc/README.commands.spl
> @@ -5,24 +5,16 @@ SUBCOMMAND EXPORT
>  To execute the command everything has to be in place as if bootm should be
>  used. (kernel image, initrd-image, fdt-image etc.)
>  
> -export has two subcommands:
> -	atags: exports the ATAGS
> +export has one subcommand:
>  	fdt: exports the FDT

Why do we even need the fdt subcommand anymore? Can't we just have the
command be 'spl export [kernel_addr] [initrd_addr] [fdt_addr]' now?

>  
>  Call is:
> -spl export <fdt|atags> [kernel_addr] [initrd_addr] [fdt_addr if fdt]
> +spl export fdt [kernel_addr] [initrd_addr] [fdt_addr if fdt]
>  

Also, we should just drop the 'if fdt' from the command help.

>  

[snip]  

> diff --git a/include/cmd_spl.h b/include/cmd_spl.h
> index 51ec12edb906..45ea91e9bce6 100644
> --- a/include/cmd_spl.h
> +++ b/include/cmd_spl.h
> @@ -8,7 +8,6 @@
>  #define SPL_EXPORT	(0x00000001)
>  
>  #define SPL_EXPORT_FDT		(0x00000001)
> -#define SPL_EXPORT_ATAGS	(0x00000002)
> -#define SPL_EXPORT_LAST		SPL_EXPORT_ATAGS
> +#define SPL_EXPORT_LAST		SPL_EXPORT_FDT
>  
>  #endif /* _NAND_SPL_H_ */

The below diff should also be part of the patch:

diff --git a/arch/arm/lib/spl.c b/arch/arm/lib/spl.c
index c43a63f1819..6c7d1fb5629 100644
--- a/arch/arm/lib/spl.c
+++ b/arch/arm/lib/spl.c
@@ -46,8 +46,7 @@ void __weak board_init_f(ulong dummy)
 }

 /*
- * This function jumps to an image with argument. Normally an FDT or ATAGS
- * image.
+ * This function jumps to an image with argument, usually an FDT.
  */
 #if CONFIG_IS_ENABLED(OS_BOOT)
 #ifdef CONFIG_ARM64
diff --git a/arch/powerpc/lib/spl.c b/arch/powerpc/lib/spl.c
index 3a24cbfff3b..a2bf52c5adc 100644
--- a/arch/powerpc/lib/spl.c
+++ b/arch/powerpc/lib/spl.c
@@ -9,8 +9,7 @@
 #include <linux/compiler.h>

 /*
- * This function jumps to an image with argument. Normally an FDT or ATAGS
- * image.
+ * This function jumps to an image with argument, usually an FDT.
  */
 #ifdef CONFIG_SPL_OS_BOOT
 void __noreturn jump_to_image_linux(struct spl_image_info *spl_image)
diff --git a/cmd/spl.c b/cmd/spl.c
index 90193b43abf..f591dc07fb6 100644
--- a/cmd/spl.c
+++ b/cmd/spl.c
@@ -158,11 +158,10 @@ static int do_spl(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])

 U_BOOT_CMD(
 	spl, 6 , 1, do_spl, "SPL configuration",
-	"export <img=atags|fdt> [kernel_addr] [initrd_addr] [fdt_addr]\n"
-	"\timg\t\t\"atags\" or \"fdt\"\n"
+	"export fdt [kernel_addr] [initrd_addr] [fdt_addr]\n"
 	"\tkernel_addr\taddress where a kernel image is stored.\n"
 	"\t\t\tkernel is loaded as part of the boot process, but it is not started.\n"
 	"\tinitrd_addr\taddress of initial ramdisk\n"
 	"\t\t\tcan be set to \"-\" if fdt_addr without initrd_addr is used.\n"
-	"\tfdt_addr\tin case of fdt, the address of the device tree.\n"
+	"\tfdt_addr\tthe address of the device tree.\n"
 	);

---

Regards,
Anshul



More information about the U-Boot mailing list