Thomas missed the add-hoc parameter parsing in here, which did break
things for Paulo since the core now fails for unknown options.

Convert them over to the new infrastructure, which has the nice upside
that we can remove the comments and put them into the usage available
with --help.

Cc: Thomas Wood <thomas.w...@intel.com>
Cc: Paulo Zanoni <paulo.r.zan...@intel.com>
Signed-off-by: Daniel Vetter <daniel.vet...@ffwll.ch>
---
 tests/pm_rpm.c | 42 ++++++++++++++++++++++++++++--------------
 1 file changed, 28 insertions(+), 14 deletions(-)

diff --git a/tests/pm_rpm.c b/tests/pm_rpm.c
index 1e63bc8f99e4..869e6f3d3bdb 100644
--- a/tests/pm_rpm.c
+++ b/tests/pm_rpm.c
@@ -1407,24 +1407,38 @@ static void dpms_mode_unset_subtest(enum screen_type 
type)
        igt_assert(wait_for_suspended());
 }
 
-int main(int argc, char *argv[])
+int rounds = 50;
+bool stay = false;
+
+static int opt_handler(int opt, int opt_index)
 {
-       int rounds = 50;
-       bool stay = false;
+       switch (opt) {
+       case 'q':
+               rounds = 10;
+               break;
+       case 's':
+               stay = true;
+               break;
+       default:
+               igt_assert(0);
+       }
 
-       igt_subtest_init(argc, argv);
+       return 0;
+}
 
-       /* The --quick option makes the stress tests not so stressful. Useful
-        * when you're developing and just want to make a quick test to make
-        * sure you didn't break everything. */
-       if (argc > 1 && strcmp(argv[1], "--quick") == 0)
-               rounds = 10;
+int main(int argc, char *argv[])
+{
+       const char *help_str =
+              "  --quick\t\tMake the stress-tests not stressful, for quick 
regression testing.\n"
+              "  --stay\t\tDisable all screen and try to go into runtime pm. 
Useful for debugging.";
+       static struct option long_options[] = {
+               {"quick", 0, 0, 'q'},
+               {"stay", 0, 0, 's'},
+               { 0, 0, 0, 0 }
+       };
 
-       /* The --stay option enables a mode where we disable all the screens,
-        * then stay like that, runtime suspended. This mode is useful for
-        * running manual tests while debugging. */
-       if (argc > 1 && strcmp(argv[1], "--stay") == 0)
-               stay = true;
+       igt_subtest_init_parse_opts(argc, argv, "", long_options,
+                                   help_str, opt_handler);
 
        /* Skip instead of failing in case the machine is not prepared to reach
         * PC8+. We don't want bug reports from cases where the machine is just
-- 
2.0.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to