diff --git a/lib/ras/host_utils.robot b/lib/ras/host_utils.robot
index 769e185..1d332ee 100644
--- a/lib/ras/host_utils.robot
+++ b/lib/ras/host_utils.robot
@@ -7,10 +7,11 @@
 *** Keywords ***
 
 Getscom Operations On OS
-    [Documentation]  Executes getscom command on OS
-    ...              with the given input command.
+    [Documentation]  Executes getscom command on OS with the given
+    ...              input command.
     [Arguments]      ${input_cmd}
-    #input_cmd       -l|--list-chips
+    # Description of arguments:
+    # input_cmd      -l|--list-chips
     #                -c|--chip <chip-id> <addr>
 
     ${output}  ${stderr}=  Execute Command  getscom ${input_cmd}
@@ -19,10 +20,11 @@
     [Return]  ${output}
 
 Gard Operations On OS
-    [Documentation]  Executes opal-gard command on OS
-    ...              with the given input command.
+    [Documentation]  Executes opal-gard command on OS with the given
+    ...              input command.
     [Arguments]      ${input_cmd}
-    #input_cmd       list/clear all/show <gard_record_id>
+    # Description of arguments:
+    # input_cmd      list/clear all/show <gard_record_id>
 
     ${output}  ${stderr}=  Execute Command  opal-gard ${input_cmd}
     ...        return_stderr=True
@@ -30,12 +32,30 @@
     [Return]  ${output}
 
 Putscom Through OS
-    [Documentation]  Executes putscom command on OS
-    ...              with the given input arguments.
-    [Arguments]  ${chip_id}  ${fru}  ${address}
-    #chip_id           processor ID
-    #fru               FRU value
-    #address           chip address
+    [Documentation]  Executes putscom command on OS with the given
+    ...              input arguments.
+    [Arguments]      ${chip_id}  ${fru}  ${address}
+    # Description of arguments:
+    # chip_id        processor ID (e.g 00000000).
+    # fru            FRU value (e.g. 2011400).
+    # address        chip address (e.g 4000000000000000).
 
     ${cmd}=  Catenate  putscom -c 0x${chip_id} 0x${fru} 0x${address}
     Start Command  ${cmd}
+
+Get Cores Values From OS
+    [Documentation]  Check if cores present on HOST OS & return core values.
+    ${cmd}=  Catenate  cat /sys/firmware/opal/msglog|grep -i chip|grep -i core
+    ${output}=  Execute Command  ${cmd}
+    Should Not Be Empty  ${output}
+    [Return]  ${output}
+
+Get ChipID From OS
+    [Documentation]  Get chip ID values based on the input.
+    [Arguments]      ${chip_type}
+    # Description of arguments:
+    # chip_type      The chip type (Processor/Centaur).
+
+    ${cmd}=  Catenate  -l | grep -i ${chip_type} | cut -c1-8
+    ${chip_id}=  Getscom Operations On OS  ${cmd}
+    [Return]  ${chip_id}
diff --git a/lib/utils.robot b/lib/utils.robot
index 6cfb9d5..09f98f7 100755
--- a/lib/utils.robot
+++ b/lib/utils.robot
@@ -708,7 +708,7 @@
 
 Get Auto Reboot
     [Documentation]  Returns auto reboot setting.
-    ${setting}=  Read Attribute  ${HOST_SETTING}  auto_reboot
+    ${setting}=  Read Attribute  ${HOST_SETTINGS}  auto_reboot
     [Return]  ${setting}
 
 
@@ -719,7 +719,7 @@
 
     ${valueDict}=  Set Variable  ${setting}
     ${data}=  Create Dictionary  data=${valueDict}
-    Write Attribute  ${HOST_SETTING}  auto_reboot  data=${data}
+    Write Attribute  ${HOST_SETTINGS}  auto_reboot  data=${data}
     ${current_setting}=  Get Auto Reboot
     Should Be Equal  ${current_setting}  ${setting}
 
@@ -754,6 +754,7 @@
     Should Be Empty  ${stderr}
     [Return]  ${stdout}
 
+
 Enable Core Dump On BMC
     [Documentation]  Enable core dump collection.
     Open Connection And Log In
@@ -810,7 +811,8 @@
     ...  Wait for OS  ${os_host}  ${os_username}  ${os_password}
 
     Open Connection  ${os_host}
-    Login  ${os_username}  ${os_password}
+    ${resp}=  Login  ${os_username}  ${os_password}
+    [Return]  ${resp}
 
 Configure Initial Settings
     [Documentation]  Restore old IP and route.
