All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] cmd: dm: migrate dm command to use U_BOOT_CMD_WITH_SUBCMDS()
@ 2022-05-08 10:01 Ovidiu Panait
  2022-06-07 16:45 ` Tom Rini
  0 siblings, 1 reply; 2+ messages in thread
From: Ovidiu Panait @ 2022-05-08 10:01 UTC (permalink / raw)
  To: u-boot; +Cc: Ovidiu Panait, Simon Glass

Migrate dm command to use U_BOOT_CMD_WITH_SUBCMDS() helper macro, to reduce
duplicated code. We can also drop the CONFIG_NEEDS_MANUAL_RELOC exception,
as the command list is updated post relocation in board_r.c initcall
initr_manual_reloc_cmdtable().

Signed-off-by: Ovidiu Panait <ovpanait@gmail.com>
---

 cmd/dm.c | 64 +++++++++++---------------------------------------------
 1 file changed, 12 insertions(+), 52 deletions(-)

diff --git a/cmd/dm.c b/cmd/dm.c
index 1dd19fe45b..ca609224f5 100644
--- a/cmd/dm.c
+++ b/cmd/dm.c
@@ -8,12 +8,6 @@
 
 #include <common.h>
 #include <command.h>
-#include <dm.h>
-#include <malloc.h>
-#include <mapmem.h>
-#include <errno.h>
-#include <asm/io.h>
-#include <dm/root.h>
 #include <dm/util.h>
 
 static int do_dm_dump_all(struct cmd_tbl *cmdtp, int flag, int argc,
@@ -64,55 +58,21 @@ static int do_dm_dump_static_driver_info(struct cmd_tbl *cmdtp, int flag, int ar
 	return 0;
 }
 
-static struct cmd_tbl test_commands[] = {
-	U_BOOT_CMD_MKENT(tree, 0, 1, do_dm_dump_all, "", ""),
-	U_BOOT_CMD_MKENT(uclass, 1, 1, do_dm_dump_uclass, "", ""),
-	U_BOOT_CMD_MKENT(devres, 1, 1, do_dm_dump_devres, "", ""),
-	U_BOOT_CMD_MKENT(drivers, 1, 1, do_dm_dump_drivers, "", ""),
-	U_BOOT_CMD_MKENT(compat, 1, 1, do_dm_dump_driver_compat, "", ""),
-	U_BOOT_CMD_MKENT(static, 1, 1, do_dm_dump_static_driver_info, "", ""),
-};
-
-static __maybe_unused void dm_reloc(void)
-{
-	static int relocated;
-
-	if (!relocated) {
-		fixup_cmdtable(test_commands, ARRAY_SIZE(test_commands));
-		relocated = 1;
-	}
-}
-
-static int do_dm(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
-{
-	struct cmd_tbl *test_cmd;
-	int ret;
-
-#ifdef CONFIG_NEEDS_MANUAL_RELOC
-	dm_reloc();
-#endif
-
-	if (argc < 2)
-		return CMD_RET_USAGE;
-	test_cmd = find_cmd_tbl(argv[1], test_commands,
-				ARRAY_SIZE(test_commands));
-	argc -= 2;
-	argv += 2;
-	if (!test_cmd || argc > test_cmd->maxargs)
-		return CMD_RET_USAGE;
-
-	ret = test_cmd->cmd(test_cmd, flag, argc, argv);
-
-	return cmd_process_error(test_cmd, ret);
-}
-
-U_BOOT_CMD(
-	dm,	3,	1,	do_dm,
-	"Driver model low level access",
+#if CONFIG_IS_ENABLED(SYS_LONGHELP)
+static char dm_help_text[] =
 	"tree          Dump driver model tree ('*' = activated)\n"
 	"dm uclass        Dump list of instances for each uclass\n"
 	"dm devres        Dump list of device resources for each device\n"
 	"dm drivers       Dump list of drivers with uclass and instances\n"
 	"dm compat        Dump list of drivers with compatibility strings\n"
 	"dm static        Dump list of drivers with static platform data"
-);
+	;
+#endif
+
+U_BOOT_CMD_WITH_SUBCMDS(dm, "Driver model low level access", dm_help_text,
+	U_BOOT_SUBCMD_MKENT(tree, 1, 1, do_dm_dump_all),
+	U_BOOT_SUBCMD_MKENT(uclass, 1, 1, do_dm_dump_uclass),
+	U_BOOT_SUBCMD_MKENT(devres, 1, 1, do_dm_dump_devres),
+	U_BOOT_SUBCMD_MKENT(drivers, 1, 1, do_dm_dump_drivers),
+	U_BOOT_SUBCMD_MKENT(compat, 1, 1, do_dm_dump_driver_compat),
+	U_BOOT_SUBCMD_MKENT(static, 1, 1, do_dm_dump_static_driver_info));
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] cmd: dm: migrate dm command to use U_BOOT_CMD_WITH_SUBCMDS()
  2022-05-08 10:01 [PATCH] cmd: dm: migrate dm command to use U_BOOT_CMD_WITH_SUBCMDS() Ovidiu Panait
@ 2022-06-07 16:45 ` Tom Rini
  0 siblings, 0 replies; 2+ messages in thread
From: Tom Rini @ 2022-06-07 16:45 UTC (permalink / raw)
  To: Ovidiu Panait; +Cc: u-boot, Simon Glass

[-- Attachment #1: Type: text/plain, Size: 433 bytes --]

On Sun, May 08, 2022 at 01:01:42PM +0300, Ovidiu Panait wrote:

> Migrate dm command to use U_BOOT_CMD_WITH_SUBCMDS() helper macro, to reduce
> duplicated code. We can also drop the CONFIG_NEEDS_MANUAL_RELOC exception,
> as the command list is updated post relocation in board_r.c initcall
> initr_manual_reloc_cmdtable().
> 
> Signed-off-by: Ovidiu Panait <ovpanait@gmail.com>

Applied to u-boot/next, thanks!

-- 
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-06-07 16:46 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-08 10:01 [PATCH] cmd: dm: migrate dm command to use U_BOOT_CMD_WITH_SUBCMDS() Ovidiu Panait
2022-06-07 16:45 ` Tom Rini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.