X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=common%2Fcli.c;h=a7e3d84b68f8e1e95b92ef5840d13c7db08822f9;hb=c9f85187e21ef64f65c1cd7202ef9199501a6f4d;hp=18d7e198a88235bd06fc82b6466d6bb865286071;hpb=814013253fd4cf932d0fb32f7043f09a2a748d9a;p=platform%2Fkernel%2Fu-boot.git diff --git a/common/cli.c b/common/cli.c index 18d7e19..a7e3d84 100644 --- a/common/cli.c +++ b/common/cli.c @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: GPL-2.0+ /* * (C) Copyright 2000 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. @@ -5,18 +6,20 @@ * Add to readline cmdline-editing by * (C) Copyright 2005 * JinHua Luo, GuangDong Linux Center, - * - * SPDX-License-Identifier: GPL-2.0+ */ #include +#include #include #include +#include #include +#include #include +#include #include - -DECLARE_GLOBAL_DATA_PTR; +#include +#include #ifdef CONFIG_CMDLINE /* @@ -24,11 +27,11 @@ DECLARE_GLOBAL_DATA_PTR; * * @param cmd Command to run * @param flag Execution flags (CMD_FLAG_...) - * @return 0 on success, or != 0 on error. + * Return: 0 on success, or != 0 on error. */ int run_command(const char *cmd, int flag) { -#ifndef CONFIG_SYS_HUSH_PARSER +#if !CONFIG_IS_ENABLED(HUSH_PARSER) /* * cli_run_command can return 0 or 1 for success, so clean up * its result. @@ -51,11 +54,11 @@ int run_command(const char *cmd, int flag) * * @param cmd Command to run * @param flag Execution flags (CMD_FLAG_...) - * @return 0 (not repeatable) or 1 (repeatable) on success, -1 on error. + * Return: 0 (not repeatable) or 1 (repeatable) on success, -1 on error. */ int run_command_repeatable(const char *cmd, int flag) { -#ifndef CONFIG_SYS_HUSH_PARSER +#ifndef CONFIG_HUSH_PARSER return cli_simple_run_command(cmd, flag); #else /* @@ -69,6 +72,13 @@ int run_command_repeatable(const char *cmd, int flag) return 0; #endif } +#else +__weak int board_run_command(const char *cmdline) +{ + printf("## Commands are disabled. Please enable CONFIG_CMDLINE.\n"); + + return 1; +} #endif /* CONFIG_CMDLINE */ int run_command_list(const char *cmd, int len, int flag) @@ -79,7 +89,7 @@ int run_command_list(const char *cmd, int len, int flag) if (len == -1) { len = strlen(cmd); -#ifdef CONFIG_SYS_HUSH_PARSER +#ifdef CONFIG_HUSH_PARSER /* hush will never change our string */ need_buff = 0; #else @@ -94,7 +104,7 @@ int run_command_list(const char *cmd, int len, int flag) memcpy(buff, cmd, len); buff[len] = '\0'; } -#ifdef CONFIG_SYS_HUSH_PARSER +#ifdef CONFIG_HUSH_PARSER rcode = parse_string_outer(buff, FLAG_PARSE_SEMICOLON); #else /* @@ -119,7 +129,7 @@ int run_command_list(const char *cmd, int len, int flag) /****************************************************************************/ #if defined(CONFIG_CMD_RUN) -int do_run(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +int do_run(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { int i; @@ -129,7 +139,7 @@ int do_run(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) for (i = 1; i < argc; ++i) { char *arg; - arg = getenv(argv[i]); + arg = env_get(argv[i]); if (arg == NULL) { printf("## Error: \"%s\" not defined\n", argv[i]); return 1; @@ -146,7 +156,7 @@ int do_run(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) bool cli_process_fdt(const char **cmdp) { /* Allow the fdt to override the boot command */ - char *env = fdtdec_get_config_string(gd->fdt_blob, "bootcmd"); + const char *env = ofnode_conf_read_str("bootcmd"); if (env) *cmdp = env; /* @@ -154,7 +164,7 @@ bool cli_process_fdt(const char **cmdp) * Always use 'env' in this case, since bootsecure requres that the * bootcmd was specified in the FDT too. */ - return fdtdec_get_config_int(gd->fdt_blob, "bootsecure", 0) != 0; + return ofnode_conf_read_int("bootsecure", 0); } /* @@ -173,7 +183,7 @@ bool cli_process_fdt(const char **cmdp) void cli_secure_boot_cmd(const char *cmd) { #ifdef CONFIG_CMDLINE - cmd_tbl_t *cmdtp; + struct cmd_tbl *cmdtp; #endif int rc; @@ -214,7 +224,8 @@ err: void cli_loop(void) { -#ifdef CONFIG_SYS_HUSH_PARSER + bootstage_mark(BOOTSTAGE_ID_ENTER_CLI_LOOP); +#ifdef CONFIG_HUSH_PARSER parse_file_outer(); /* This point is never reached */ for (;;); @@ -222,12 +233,12 @@ void cli_loop(void) cli_simple_loop(); #else printf("## U-Boot command line is disabled. Please enable CONFIG_CMDLINE\n"); -#endif /*CONFIG_SYS_HUSH_PARSER*/ +#endif /*CONFIG_HUSH_PARSER*/ } void cli_init(void) { -#ifdef CONFIG_SYS_HUSH_PARSER +#ifdef CONFIG_HUSH_PARSER u_boot_hush_start(); #endif