
Hi Emmanuel,
On 2 January 2018 at 14:27, Emmanuel Vadot manu@freebsd.org wrote:
Some commands (like sysboot) might want to call go as they can encounter a raw binary. Make do_go callable for everyone.
Signed-off-by: Emmanuel Vadot manu@freebsd.org
cmd/boot.c | 2 +- include/command.h | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-)
Can we instead move the code out of do_go() into another function which accepts C arguments, and then call that from do_go()?
diff --git a/cmd/boot.c b/cmd/boot.c index 72f2cf362d..5691c5f883 100644 --- a/cmd/boot.c +++ b/cmd/boot.c @@ -22,7 +22,7 @@ unsigned long do_go_exec(ulong (*entry)(int, char * const []), int argc, return entry (argc, argv); }
-static int do_go(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +int do_go(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { ulong addr, rc; int rcode = 0; diff --git a/include/command.h b/include/command.h index 767cabb3df..377e2eadd4 100644 --- a/include/command.h +++ b/include/command.h @@ -105,6 +105,10 @@ extern int do_bootz(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
extern int do_booti(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]);
+#ifdef CONFIG_CMD_GO +extern int do_go(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]); +#endif
extern int common_diskboot(cmd_tbl_t *cmdtp, const char *intf, int argc, char *const argv[]);
-- 2.15.1
Regards, Simon