diff --git a/extended/code_update/code_update_utils.robot b/extended/code_update/code_update_utils.robot
index f8d030c..96f0378 100755
--- a/extended/code_update/code_update_utils.robot
+++ b/extended/code_update/code_update_utils.robot
@@ -101,6 +101,7 @@
 
 
 Check If File Exist
+    [Documentation]  Verify that the file exists on this machine.
     [Arguments]  ${filepath}
     Log   \n PATH: ${filepath}
     OperatingSystem.File Should Exist  ${filepath}
@@ -110,6 +111,7 @@
 
 
 System Readiness Test
+    [Documentation]  Verify that the system can be pinged and authenticated through REST.
     ${l_status}=   Run Keyword and Return Status
     ...   Verify Ping and REST Authentication
     Run Keyword If  '${l_status}' == '${False}'
diff --git a/extended/code_update/test_image_upload.robot b/extended/code_update/test_image_upload.robot
index 28c903f..2fc615f 100644
--- a/extended/code_update/test_image_upload.robot
+++ b/extended/code_update/test_image_upload.robot
@@ -169,6 +169,7 @@
 
 
 Upload Post Request
+    [Documentation]  Make POST request.
     [Arguments]  ${uri}  ${timeout}=10  ${quiet}=${QUIET}  &{kwargs}
 
     # Description of argument(s):
diff --git a/extended/full_suite_regression.robot b/extended/full_suite_regression.robot
index 04f55d6..b767c1c 100755
--- a/extended/full_suite_regression.robot
+++ b/extended/full_suite_regression.robot
@@ -81,6 +81,4 @@
    ${output}=
    ...  Run  wkhtmltopdf ./${combined_report_html_file_path} ./${combined_report_pdf_file_path}
    Should Not Be Empty  ${output}
-   OperatingSystem.File Should Exist  ${combined_report_pdf_file_path}
-
-
+   OperatingSystem.File Should Exist  ${combined_report_pdf_file_path}
\ No newline at end of file
diff --git a/extended/obmc_boot_test_resource.robot b/extended/obmc_boot_test_resource.robot
index a9b0052..49e74e1 100644
--- a/extended/obmc_boot_test_resource.robot
+++ b/extended/obmc_boot_test_resource.robot
@@ -69,6 +69,7 @@
 
 *** Keywords ***
 OBMC Boot Test
+    [Documentation]  Run the OBMC boot test.
     [Teardown]  OBMC Boot Test Teardown
     [Arguments]  ${pos_arg1}=${EMPTY}  &{arguments}
 
diff --git a/extended/run_keyword.robot b/extended/run_keyword.robot
index 96ff3d9..31253c7 100644
--- a/extended/run_keyword.robot
+++ b/extended/run_keyword.robot
@@ -22,9 +22,12 @@
 # cd $HOME/git/openbmc-test-automation
 # export PYTHONPATH=${HOME}/git/openbmc-test-automation/lib/
 
-# robot --outputdir=/tmp -v OPENBMC_HOST:barp01 -v 'keyword_string:Log To Console  Hi.' extended/run_keyword.robot
+# robot --outputdir=/tmp -v OPENBMC_HOST:barp01 -v 'keyword_string:Log To Console Hi.'
+# extended/run_keyword.robot
 
-# robot --outputdir=/tmp -v OPENBMC_HOST:barp01 -v 'keyword_string:${state}=  Get State  quiet=${1} ; Rpvar  state' -v lib_file_path:state.py extended/run_keyword.robot
+# robot --outputdir=/tmp -v OPENBMC_HOST:barp01
+# -v 'keyword_string:${state}= Get State quiet=${1} ; Rpvar state'
+# -v lib_file_path:state.py extended/run_keyword.robot
 
 # NOTE: Robot searches PYTHONPATH for libraries.
 Library   run_keyword.py
@@ -48,10 +51,12 @@
 
 *** Test Cases ***
 Run Keyword Pgm
+    [Documentation]  Run the keyword program.
     Main
 
 *** Keywords ***
 Main
+    [Documentation]  Do main program processing.
     [Teardown]  Program Teardown
 
     Main Py
diff --git a/extended/standby_bmc.robot b/extended/standby_bmc.robot
index b85110c..0de48e0 100644
--- a/extended/standby_bmc.robot
+++ b/extended/standby_bmc.robot
@@ -103,7 +103,7 @@
 
 
 Powercycle System Via PDU
-    [Documentation]   AC cycle the system via PDU
+    [Documentation]   AC cycle the system via PDU.
 
     Validate Parameters
     PDU Power Cycle
@@ -111,6 +111,7 @@
 
 
 Validate Parameters
+    [Documentation]  Validate PDU parameters.
     Should Not Be Empty   ${PDU_IP}
     Should Not Be Empty   ${PDU_TYPE}
     Should Not Be Empty   ${PDU_SLOT_NO}
diff --git a/extended/test_ac_cycles.robot b/extended/test_ac_cycles.robot
index 9ff1295..8b02797 100644
--- a/extended/test_ac_cycles.robot
+++ b/extended/test_ac_cycles.robot
@@ -16,6 +16,7 @@
 *** Test Cases ***
 
 Test OpenBMC Buster
+    [Documentation]  Test the OpenBMC buster.
     Validate Parameters
     ${output}=  Execute Command
     ...  find /var/lib -type f |xargs -n 1 touch
@@ -32,6 +33,7 @@
 *** Keywords ***
 
 Validate Parameters
+    [Documentation]  Validate the PDU parameters.
     Should Not Be Empty  ${PDU_IP}
     Should Not Be Empty  ${PDU_TYPE}
     Should Not Be Empty  ${PDU_SLOT_NO}
diff --git a/extended/test_esel.robot b/extended/test_esel.robot
index 1a2178b..4b3695c 100644
--- a/extended/test_esel.robot
+++ b/extended/test_esel.robot
@@ -128,7 +128,8 @@
     ${rev_id_ls}=   Get Substring   ${rev_id_1}   1   3
     ${rev_id_ms}=   Get Substring   ${rev_id_1}   -2
     Run Inband IPMI Raw Command   0x0a 0x42
-    ${output}=  Check IPMI OEMpartialadd Reject  0x3a 0xf0 0x${rev_id_ls} 0x${rev_id_ms} 0 0 0 0 0 1 2 3 4 5 6 7 8 9 0xa 0xb 0xc 0xd 0xe 0xf
+    ${output}=  Check IPMI OEMpartialadd Reject
+    ...  0x3a 0xf0 0x${rev_id_ls} 0x${rev_id_ms} 0 0 0 0 0 1 2 3 4 5 6 7 8 9 0xa 0xb 0xc 0xd 0xe 0xf
     Should Contain   ${output}   Reservation cancelled
 
 Test Correct Reservation_ID
@@ -142,7 +143,8 @@
     ${rev_id_2}=    Run Inband IPMI Raw Command  0x0a 0x42
     ${rev_id_ls}=   Get Substring   ${rev_id_2}   1   3
     ${rev_id_ms}=   Get Substring   ${rev_id_2}   -2
-    ${output}=  Check IPMI OEMpartialadd Accept  0x3a 0xf0 0x${rev_id_ls} 0x${rev_id_ms} 0 0 0 0 0 1 2 3 4 5 6 7 8 9 0xa 0xb 0xc 0xd 0xe 0xf
+    ${output}=  Check IPMI OEMpartialadd Accept
+    ...  0x3a 0xf0 0x${rev_id_ls} 0x${rev_id_ms} 0 0 0 0 0 1 2 3 4 5 6 7 8 9 0xa 0xb 0xc 0xd 0xe 0xf
     Should Be Empty    ${output}
 
 *** Keywords ***
@@ -197,18 +199,23 @@
 
     Sleep  10s  reason=Wait for service to restart properly.
 
+
 Run IPMI Command Returned
+    [Documentation]  Run the IPMI command and return the output.
     [Arguments]    ${args}
     ${output_1}=    Execute Command   /tmp/ipmitool -I dbus raw ${args}
     [Return]    ${output_1}
 
+
 Check IPMI OEMpartialadd Reject
+    [Documentation]  Check if IPMI rejects the OEM partial add command.
     [Arguments]    ${args}
     Login To OS Host  ${OS_HOST}  ${OS_USERNAME}  ${OS_PASSWORD}
     ${stdout}  ${stderr}  ${output_2}=  Execute Command  ipmitool raw ${args}
     ...        return_stdout=True  return_stderr=True  return_rc=True
     [Return]  ${stderr}
 
+
 Suite Setup Execution
     [Documentation]  Validates input parameters & check if HOST OS is up.
 
@@ -225,11 +232,12 @@
     Login To OS Host  ${OS_HOST}  ${OS_USERNAME}  ${OS_PASSWORD}
     Open Connection And Log In
 
+
 Check IPMI OEMpartialadd Accept
+    [Documentation]  Check if IPMI accepts the OEM partial add command.
     [Arguments]    ${args}
     Login To OS Host  ${OS_HOST}  ${OS_USERNAME}  ${OS_PASSWORD}
     ${stdout}  ${stderr}  ${output_3}=  Execute Command  ipmitool raw ${args}
     ...         return_stdout=True  return_stderr=True  return_rc=True
     Should Be Equal  ${output_3}  ${0}  msg=${stderr}
-    [Return]  ${stderr}
-
+    [Return]  ${stderr}
\ No newline at end of file
