diff options
author | Greg Bellows <greg.bellows@linaro.org> | 2014-11-19 09:09:24 -0600 |
---|---|---|
committer | Alex Bennée <alex.bennee@linaro.org> | 2014-12-19 12:29:39 +0000 |
commit | 0b43976dc6ecdbb7a9162656e6e271de3460083a (patch) | |
tree | de9e18931bf64a9a8113616875aa17fccccc4dcd | |
parent | d2aadf4429217eee8bec62625708e0cececd20cf (diff) |
android-console: Add avd start command
Add Android emulator console "avd start" commmand and associated help messages.
Signed-off-by: Greg Bellows <greg.bellows@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
-rw-r--r-- | android-commands.h | 7 | ||||
-rw-r--r-- | android-console.c | 18 | ||||
-rw-r--r-- | android-console.h | 1 |
3 files changed, 26 insertions, 0 deletions
diff --git a/android-commands.h b/android-commands.h index 6057afc18..ca4052a8c 100644 --- a/android-commands.h +++ b/android-commands.h @@ -112,6 +112,13 @@ static mon_cmd_t android_avd_cmds[] = { .mhandler.cmd = android_console_avd_stop, }, { + .name = "start", + .args_type = "", + .params = "", + .help = "start/restart the virtual device", + .mhandler.cmd = android_console_avd_start, + }, + { .name = "status", .args_type = "", .params = "", diff --git a/android-console.c b/android-console.c index 37030699e..15e628811 100644 --- a/android-console.c +++ b/android-console.c @@ -732,6 +732,7 @@ void android_console_event(Monitor *mon, const QDict *qdict) enum { CMD_AVD, CMD_AVD_STOP, + CMD_AVD_START, CMD_AVD_STATUS, }; @@ -749,6 +750,9 @@ static const char *avd_help[] = { /* CMD_AVD_STOP */ "'avd stop' stops the virtual device immediately, use 'avd start' to " "continue execution", + /* CMD_AVD_START */ + "'avd start' will start or continue the virtual device, use 'avd stop' to " + "stop it", /* CMD_AVD_STATUS */ "'avd status' will indicate whether the virtual device is running or not", }; @@ -765,6 +769,18 @@ void android_console_avd_stop(Monitor *mon, const QDict *qdict) monitor_printf(mon, "OK\n"); } +void android_console_avd_start(Monitor *mon, const QDict *qdict) +{ + if (runstate_is_running()) { + monitor_printf(mon, "KO: virtual device already running\n"); + return; + } + + qmp_cont(NULL); + + monitor_printf(mon, "OK\n"); +} + void android_console_avd_status(Monitor *mon, const QDict *qdict) { monitor_printf(mon, "virtual device is %s\n", @@ -784,6 +800,8 @@ void android_console_avd(Monitor *mon, const QDict *qdict) if (helptext) { if (strstr(helptext, "stop")) { cmd = CMD_AVD_STOP; + } else if (strstr(helptext, "start")) { + cmd = CMD_AVD_START; } else if (strstr(helptext, "status")) { cmd = CMD_AVD_STATUS; } diff --git a/android-console.h b/android-console.h index 9f9d9cb44..36a4090ce 100644 --- a/android-console.h +++ b/android-console.h @@ -43,6 +43,7 @@ void android_console_event_text(Monitor *mon, const QDict *qdict); void android_console_event(Monitor *mon, const QDict *qdict); void android_console_avd_stop(Monitor *mon, const QDict *qdict); +void android_console_avd_start(Monitor *mon, const QDict *qdict); void android_console_avd_status(Monitor *mon, const QDict *qdict); void android_console_avd(Monitor *mon, const QDict *qdict); |