qconfig: Move arg parsing into a separate function

Reduce the size of main() by putting this code into its own function.
For now the parser object needs to be returned too.

Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/tools/qconfig.py b/tools/qconfig.py
index 07d7838..d8f0a71 100755
--- a/tools/qconfig.py
+++ b/tools/qconfig.py
@@ -1453,8 +1453,14 @@
                 print(item, file=out)
 
 
-def main():
-    """Main program"""
+def parse_args():
+    """Parse the program arguments
+
+    Returns:
+        tuple:
+            argparse.ArgumentParser: parser
+            argparse.Namespace: Parsed arguments
+    """
     try:
         cpu_count = multiprocessing.cpu_count()
     except NotImplementedError:
@@ -1512,8 +1518,12 @@
                       help='show any build errors as boards are built')
     parser.add_argument('configs', nargs='*')
 
-    args = parser.parse_args()
+    return parser, parser.parse_args()
 
+
+def main():
+    """Main program"""
+    parser, args = parse_args()
     if args.test:
         sys.argv = [sys.argv[0]]
         fail, _ = doctest.testmod()