diff --git a/tools/ct_metrics/gen_csv_results.py b/tools/ct_metrics/gen_csv_results.py
index e46dca4..5419834 100755
--- a/tools/ct_metrics/gen_csv_results.py
+++ b/tools/ct_metrics/gen_csv_results.py
@@ -3,7 +3,7 @@
 r"""
 Use robot framework API to extract test result data from output.xml generated
 by robot tests. For more information on the Robot Framework API, see
-http://robot-framework.readthedocs.io/en/3.0/autodoc/robot.result.html
+https://robot-framework.readthedocs.io/en/stable/autodoc/robot.result.html
 """
 
 import csv
@@ -42,7 +42,7 @@
         "%(prog)s uses a robot framework API to extract test result    data"
         " from output.xml generated by robot tests. For more information on"
         " the    Robot Framework API, see   "
-        " http://robot-framework.readthedocs.io/en/3.0/autodoc/robot.result.html"
+        " https://robot-framework.readthedocs.io/en/stable/autodoc/robot.result.html"
     ),
     formatter_class=argparse.ArgumentDefaultsHelpFormatter,
     prefix_chars="-+",
@@ -52,7 +52,7 @@
     "--source",
     "-s",
     help=(
-        "The output.xml robot test result file path.  This parameter is       "
+        "The output.xml robot test result file path.  This parameter is "
         "    required."
     ),
 )
@@ -61,15 +61,15 @@
     "--dest",
     "-d",
     help=(
-        "The directory path where the generated .csv files will go.  This     "
-        "      parameter is required."
+        "The directory path where the generated .csv files will go.  This"
+        " parameter is required."
     ),
 )
 
 parser.add_argument(
     "--version_id",
     help=(
-        "Driver version of openbmc firmware which was used during test,       "
+        "Driver version of openbmc firmware which was used during test,"
         '   e.g. "v2.1-215-g6e7eacb".  This parameter is required.'
     ),
 )
@@ -77,7 +77,7 @@
 parser.add_argument(
     "--platform",
     help=(
-        "OpenBMC platform which was used during test,          e.g."
+        "OpenBMC platform which was used during test, e.g."
         ' "Witherspoon".  This parameter is required.'
     ),
 )
@@ -85,7 +85,7 @@
 parser.add_argument(
     "--level",
     help=(
-        "OpenBMC release level which was used during test,          e.g."
+        "OpenBMC release level which was used during test, e.g."
         ' "Master", "OBMC920".  This parameter is required.'
     ),
 )
@@ -93,7 +93,7 @@
 parser.add_argument(
     "--test_phase",
     help=(
-        'Name of testing phase, e.g. "DVT", "SVT", etc.          This'
+        'Name of testing phase, e.g. "CI", "Regression", etc. This'
         " parameter is optional."
     ),
     default="FVT",
@@ -102,7 +102,7 @@
 parser.add_argument(
     "--subsystem",
     help=(
-        'Name of the subsystem, e.g. "OPENBMC" etc.          This parameter is'
+        'Name of the subsystem, e.g. "OPENBMC" etc. This parameter is'
         " optional."
     ),
     default="OPENBMC",
@@ -110,7 +110,7 @@
 
 parser.add_argument(
     "--processor",
-    help='Name of processor, e.g. "P9". This parameter is optional.',
+    help='Name of processor, e.g. "XY". This parameter is optional.',
     default="OPENPOWER",
 )
 
@@ -119,7 +119,7 @@
 stock_list = [("test_mode", 0), ("quiet", 0), ("debug", 0)]
 
 
-def exit_function(signal_number=0, frame=None):
+def exit_function(signal_number=0):
     r"""
     Execute whenever the program ends normally or with the signals that we
     catch (i.e. TERM, INT).
@@ -132,7 +132,7 @@
     qprint_pgm_footer()
 
 
-def signal_handler(signal_number, frame):
+def signal_handler():
     r"""
     Handle signals.  Without a function to catch a SIGTERM or SIGINT, the
     program would terminate immediately with return code 143 and without
@@ -191,6 +191,9 @@
     platform                        Platform of the openbmc system.
     level                           Release level of the OpenBMC system
                                     (e.g. "Master").
+    test_phase                      Name of the test phase
+                                    e.g. "CI", "Regression", etc.
+    processor                       Name of processor, e.g. "XY".
     """
 
     # Initialize tallies
@@ -384,7 +387,7 @@
     and return it.
 
     Description of argument(s):
-    datetime                        The date in the following format: %Y%m%d
+    xml_datetime                        The date in the following format: %Y%m%d
                                     %H:%M:%S.%f (This is the format
                                     typically found in an XML file.)
 
