diff options
author | Geoff Levand <geoffrey.levand@am.sony.com> | 2009-07-09 10:40:44 -0700 |
---|---|---|
committer | Geoff Levand <geoffrey.levand@am.sony.com> | 2009-07-09 10:40:44 -0700 |
commit | 192291bf0e5ae7ad714c863926ed0b8981102e9c (patch) | |
tree | 0aa40a7f75dedaf25b93754ceb08dfcecbde85ca | |
parent | aea1d55d7e09f4544f96ccc54196c674d52420e8 (diff) | |
download | talos-petitboot-192291bf0e5ae7ad714c863926ed0b8981102e9c.tar.gz talos-petitboot-192291bf0e5ae7ad714c863926ed0b8981102e9c.zip |
Add PS3 timeout option
Add an option --timeout to the PS3 CUI program to enable
the use of the autoboot timer.
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
-rw-r--r-- | ui/ncurses/ps3-cui.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/ui/ncurses/ps3-cui.c b/ui/ncurses/ps3-cui.c index 96a6e72..71a2177 100644 --- a/ui/ncurses/ps3-cui.c +++ b/ui/ncurses/ps3-cui.c @@ -53,7 +53,7 @@ static void print_usage(void) print_version(); printf( "Usage: pb-cui [-h, --help] [-l, --log log-file] [-r, --reset-defaults]\n" -" [-V, --version]\n"); +" [-t, --timeout] [-V, --version]\n"); } /** @@ -70,6 +70,7 @@ struct opts { enum opt_value show_help; const char *log_file; enum opt_value reset_defaults; + enum opt_value use_timeout; enum opt_value show_version; }; @@ -83,10 +84,11 @@ static int opts_parse(struct opts *opts, int argc, char *argv[]) {"help", no_argument, NULL, 'h'}, {"log", required_argument, NULL, 'l'}, {"reset-defaults", no_argument, NULL, 'r'}, + {"timeout", no_argument, NULL, 't'}, {"version", no_argument, NULL, 'V'}, { NULL, 0, NULL, 0}, }; - static const char short_options[] = "hl:rV"; + static const char short_options[] = "hl:trV"; static const struct opts default_values = { .log_file = "pb-cui.log", }; @@ -107,6 +109,9 @@ static int opts_parse(struct opts *opts, int argc, char *argv[]) case 'l': opts->log_file = optarg; break; + case 't': + opts->use_timeout = opt_yes; + break; case 'r': opts->reset_defaults = opt_yes; break; @@ -119,7 +124,7 @@ static int opts_parse(struct opts *opts, int argc, char *argv[]) } } - return 0; + return optind != argc; } /** @@ -551,7 +556,8 @@ int main(int argc, char *argv[]) ps3.mm = ps3_mm_init(&ps3); ps3.svm = ps3_svm_init(&ps3); - if (ps3.values.timeout == ps3_timeout_forever) + if (opts.use_timeout != opt_yes + || ps3.values.timeout == ps3_timeout_forever) ui_timer_disable(&ps3.cui->timer); else { ps3.cui->timer.update_display = ps3_timer_update; |