X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=arch%2Fsandbox%2Fcpu%2Fstart.c;h=00742fd95e22636f2474960b339ae438f260770b;hb=19d1f1a2f3ccfbf85125150f7876ce22714b38bd;hp=097f29a2901b7348171359c596ba53036a738d0f;hpb=358b8bc204f365be28fed94f23e53e04183a8c7f;p=platform%2Fkernel%2Fu-boot.git diff --git a/arch/sandbox/cpu/start.c b/arch/sandbox/cpu/start.c index 097f29a..00742fd 100644 --- a/arch/sandbox/cpu/start.c +++ b/arch/sandbox/cpu/start.c @@ -4,6 +4,7 @@ */ #include +#include #include #include #include @@ -65,6 +66,11 @@ int sandbox_early_getopt_check(void) os_exit(0); } +int misc_init_f(void) +{ + return sandbox_early_getopt_check(); +} + static int sandbox_cmdline_cb_help(struct sandbox_state *state, const char *arg) { /* just flag to sandbox_early_getopt_check to show usage */ @@ -72,21 +78,40 @@ static int sandbox_cmdline_cb_help(struct sandbox_state *state, const char *arg) } SANDBOX_CMDLINE_OPT_SHORT(help, 'h', 0, "Display help"); +#ifndef CONFIG_SPL_BUILD int sandbox_main_loop_init(void) { struct sandbox_state *state = state_get_current(); /* Execute command if required */ - if (state->cmd) { + if (state->cmd || state->run_distro_boot) { + int retval = 0; + cli_init(); - run_command_list(state->cmd, -1, 0); +#ifdef CONFIG_CMDLINE + if (state->cmd) + retval = run_command_list(state->cmd, -1, 0); + + if (state->run_distro_boot) + retval = cli_simple_run_command("run distro_bootcmd", + 0); +#endif if (!state->interactive) - os_exit(state->exit_type); + os_exit(retval); } return 0; } +#endif + +static int sandbox_cmdline_cb_boot(struct sandbox_state *state, + const char *arg) +{ + state->run_distro_boot = true; + return 0; +} +SANDBOX_CMDLINE_OPT_SHORT(boot, 'b', 0, "Run distro boot commands"); static int sandbox_cmdline_cb_command(struct sandbox_state *state, const char *arg) @@ -240,6 +265,27 @@ static int sandbox_cmdline_cb_terminal(struct sandbox_state *state, SANDBOX_CMDLINE_OPT_SHORT(terminal, 't', 1, "Set terminal to raw/cooked mode"); +static int sandbox_cmdline_cb_verbose(struct sandbox_state *state, + const char *arg) +{ + state->show_test_output = true; + return 0; +} +SANDBOX_CMDLINE_OPT_SHORT(verbose, 'v', 0, "Show test output"); + +int board_run_command(const char *cmdline) +{ + printf("## Commands are disabled. Please enable CONFIG_CMDLINE.\n"); + + return 1; +} + +static void setup_ram_buf(struct sandbox_state *state) +{ + gd->arch.ram_buf = state->ram_buf; + gd->ram_size = state->ram_size; +} + int main(int argc, char *argv[]) { struct sandbox_state *state; @@ -264,9 +310,10 @@ int main(int argc, char *argv[]) memset(&data, '\0', sizeof(data)); gd = &data; -#ifdef CONFIG_SYS_MALLOC_F_LEN +#if CONFIG_VAL(SYS_MALLOC_F_LEN) gd->malloc_base = CONFIG_MALLOC_F_ADDR; #endif + setup_ram_buf(state); /* Do pre- and post-relocation init */ board_init_f(0);