| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 1 | *** Settings *** | 
|  | 2 |  | 
|  | 3 | Documentation       Module to test IPMI System Info Parameters functionality. | 
|  | 4 | ...                 Following parameters are verfied in the script, | 
|  | 5 | ...                 1. Set In Progress - param 0, | 
|  | 6 | ...                 2. System Firmware Version - param 1, | 
|  | 7 | ...                 3. System Name - param 2, | 
|  | 8 | ...                 4. Primary OS Name - param 3, | 
|  | 9 | ...                 5. OS Name - param 4, | 
|  | 10 | ...                 6. Present OS Version Number - param 5. | 
|  | 11 |  | 
|  | 12 | Library             Collections | 
|  | 13 | Library             String | 
|  | 14 | Resource            ../lib/ipmi_client.robot | 
|  | 15 | Resource            ../lib/openbmc_ffdc.robot | 
|  | 16 | Library             ../lib/ipmi_utils.py | 
|  | 17 | Variables           ../data/ipmi_raw_cmd_table.py | 
|  | 18 |  | 
|  | 19 | Suite Setup         Suite Setup Execution | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 20 | Test Teardown       Run Keywords  Restore Default Configuration  AND  FFDC On Test Case Fail | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 21 |  | 
|  | 22 |  | 
|  | 23 | *** Variables *** | 
|  | 24 |  | 
|  | 25 | # Converting to hexadecimal provides 14 bytes so string length is 0e for param 3, 4, 5. | 
|  | 26 | ${valid_os_version_name}       Version2.12345 | 
|  | 27 | ${invalid_os_version}          ${valid_os_version_name}${6789} | 
|  | 28 |  | 
|  | 29 |  | 
|  | 30 | *** Test Cases *** | 
|  | 31 |  | 
|  | 32 | Verify System Info Set In Progress | 
|  | 33 | [Documentation]  Verify Set In Progress of System Info Parameter, | 
|  | 34 | ...  to set the set-in-progress and set complete state via IPMI, | 
|  | 35 | ...  and verify whether the state is updated and restored as expected. | 
|  | 36 | [Tags]  Verify_System_Info_Set_In_Progress | 
|  | 37 |  | 
|  | 38 | # Set In Progress - set complete. | 
|  | 39 | Set System Info Set In Progress  0x00 | 
|  | 40 |  | 
|  | 41 | # Get System Info Parameter for param 0 - Set In Progress. | 
|  | 42 | # Check if set-in-progress set to set complete. | 
|  | 43 | ${complete}=  Get System Info Set In Progress | 
|  | 44 | # ${complete[0]} - parameter version. | 
|  | 45 | # ${complete[1]} - Configuration parameter data, | 
|  | 46 | # here,  01h (set in progress). | 
|  | 47 | Should Be Equal  ${complete[1]}  00 | 
|  | 48 |  | 
|  | 49 | # Set In Progress - set in progress. | 
|  | 50 | Set System Info Set In Progress  0x01 | 
|  | 51 |  | 
|  | 52 | # Get System Info Parameter for param 0 - Set In Progress. | 
|  | 53 | # Check if set-in-progress set to set inprogress. | 
|  | 54 | ${inprogress}=  Get System Info Set In Progress | 
|  | 55 | # ${inprogress[0]} - parameter version. | 
|  | 56 | # ${inprogress[1]} - Configuration parameter data, | 
|  | 57 | # here,  01h (set in progress). | 
|  | 58 | Should Be Equal  ${inprogress[1]}  01 | 
|  | 59 |  | 
|  | 60 |  | 
|  | 61 | Verify System Info Set In Progress After BMC Reboot | 
|  | 62 | [Documentation]  Verify Set In Progress changes to default, | 
|  | 63 | ...  after bmc reboot of System Info Parameter via IPMI, | 
|  | 64 | ...  and verify whether the default setting is reflected. | 
|  | 65 | [Tags]  Verify_System_Info_Set_In_Progress_After_BMC_Reboot | 
|  | 66 |  | 
|  | 67 | # Set the parameter 0 - Set_In_Progress to set in progress state. | 
|  | 68 | Set System Info Set In Progress  0x01 | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 69 | # Get System Info Parameter for param 0 - Set In Progress. | 
|  | 70 | # Check if set-in-progress set to set in progress. | 
|  | 71 | ${inprogress}=  Get System Info Set In Progress | 
|  | 72 | # ${inprogress[0]} - parameter version. | 
|  | 73 | # ${inprogress[1]} - Configuration parameter data, | 
|  | 74 | # here,  01h (set in progress). | 
|  | 75 | Should Be Equal  ${inprogress[1]}  01 | 
|  | 76 |  | 
|  | 77 | # Reboot BMC. | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 78 | IPMI MC Reset Cold (run) | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 79 |  | 
|  | 80 | # Since the param 0 - Set In Progress is volatile, | 
|  | 81 | # Default value should be updated after BMC reboot. | 
|  | 82 | ${state}=  Get System Info Set In Progress | 
|  | 83 | # ${state[0]} - parameter version. | 
|  | 84 | # ${state[1]} - Configuration parameter data, | 
|  | 85 | # here, 00h (set complete), 01h (set in progress), | 
|  | 86 | #       10 (commit write), 11 (reserved). | 
|  | 87 | Should Be Equal  ${state[1]}  ${set_in_progress} | 
|  | 88 |  | 
|  | 89 |  | 
|  | 90 | Verify Get System Info Set In Progress With Invalid Data Length | 
|  | 91 | [Documentation]  Verify Get System Info Parameter Set In Progress via IPMI with extra bytes, | 
|  | 92 | ...  and expect to get the error message for invalid length. | 
|  | 93 | [Tags]  Verify_Get_System_Info_Set_In_Progress_With_Invalid_Data_Length | 
|  | 94 |  | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 95 | # Check if the Get System Info Parameter for param 0 - set in progress throws | 
|  | 96 | # error for invalid data length. | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 97 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param0_Set_In_Progress']['Get'][1]}* | 
|  | 98 | ...  Run IPMI Standard Command | 
|  | 99 | ...  raw ${IPMI_RAW_CMD['System_Info']['param0_Set_In_Progress']['Get'][0]} 0x00 | 
|  | 100 |  | 
|  | 101 |  | 
|  | 102 | Verify Set System Info Set In Progress With Invalid Data Length | 
|  | 103 | [Documentation]  Verify Set System Info Parameter Set In Progress via IPMI with extra bytes, | 
|  | 104 | ...  and expect to get the error message for invalid length. | 
|  | 105 | [Tags]  Verify_Set_System_Info_Set_In_Progress_With_Invalid_Data_Length | 
|  | 106 |  | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 107 | # Check if the Set System Info Parameter for param 0 - set in progress throws | 
|  | 108 | # error for invalid data length. | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 109 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param0_Set_In_Progress']['Set'][1]}* | 
|  | 110 | ...  Run IPMI Standard Command | 
|  | 111 | ...  raw ${IPMI_RAW_CMD['System_Info']['param0_Set_In_Progress']['Set'][0]} 0x00 0x00 | 
|  | 112 |  | 
|  | 113 |  | 
|  | 114 | Verify Set System Info Set In Progress With Invalid State | 
|  | 115 | [Documentation]  Verify Set System Info Parameter Set In Progress via IPMI invalid state, | 
|  | 116 | ...  and expect to get the error message for invalid data. | 
|  | 117 | [Tags]  Verify_Set_System_Info_Set_In_Progress_With_Invalid_State | 
|  | 118 |  | 
|  | 119 | # Check if the Set System Info Parameter for param 0 - set in progress throws error for invalid State. | 
|  | 120 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param0_Set_In_Progress']['Set'][2]}* | 
|  | 121 | ...  Run IPMI Standard Command | 
|  | 122 | ...  raw ${IPMI_RAW_CMD['System_Info']['param0_Set_In_Progress']['Set'][0]} 0x04 | 
|  | 123 |  | 
|  | 124 |  | 
|  | 125 | Verify System Info System Firmware Version | 
|  | 126 | [Documentation]  Verify System Firmware Version of System Info Parameter via IPMI, | 
|  | 127 | ...  and verify whether the version is updated. | 
|  | 128 | [Tags]  Verify_System_Info_System_Firmware_Version | 
|  | 129 |  | 
|  | 130 | # Generate a random 14 byte data, | 
|  | 131 | # i,e 16-byte block for system firmware name string data. | 
|  | 132 | # data 1 - Encoding string type, | 
|  | 133 | # data 2 - string length (in bytes, 1-based), | 
|  | 134 | # data 3 to 16 - system firmware name string data - 14 bytes. | 
|  | 135 | ${firmware_version}=  Generate Random String  14  [LETTERS] | 
|  | 136 | ${firmware_version}  ${fw_hex_data}=  Identify Request Data  ${firmware_version} | 
|  | 137 | # Consider random string generated is 'zwclMXwfczMvcY'. | 
|  | 138 | # Set the System Firmware Version of System Info Parameter. | 
|  | 139 | Set System Firmware Version  ${firmware_version} | 
|  | 140 | # Get the response of System Firmware Version, | 
|  | 141 | # and compare against randomly generated data bytes. | 
|  | 142 | ${fw_version}=  Get System Firmware Version | 
|  | 143 | # The response data will something be like, | 
|  | 144 | # ${fw_version}= ["11","00","00","0e","7a","77","63","6c","4d","58","77","66","63","7a","4d","76"]. | 
|  | 145 | Should Be Equal  ${fw_version[4:]}  ${fw_hex_data} | 
|  | 146 |  | 
|  | 147 |  | 
|  | 148 | Verify Get System Info System Firmware Version With Invalid Data Length | 
|  | 149 | [Documentation]  Verify Get System Info Parameter System Firmware Version via IPMI with extra bytes, | 
|  | 150 | ...  and expect to get the error message for invalid length. | 
|  | 151 | [Tags]  Verify_Get_System_Info_System_Firmware_Version_With_Invalid_Data_Length | 
|  | 152 |  | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 153 | # Check if the Get System Info Parameter for param 1 - System Firmware Version throws | 
|  | 154 | # error for invalid data length. | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 155 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param1_System_Firmware_Version']['Get'][1]}* | 
|  | 156 | ...  Run IPMI Standard Command | 
|  | 157 | ...  raw ${IPMI_RAW_CMD['System_Info']['param1_System_Firmware_Version']['Get'][0]} 0x00 | 
|  | 158 |  | 
|  | 159 |  | 
|  | 160 | Verify Set System Info System Firmware Version With Invalid Data Length | 
|  | 161 | [Documentation]  Verify Set System Info Parameter System Firmware Version via IPMI with extra bytes, | 
|  | 162 | ...  and expect to get the error message for invalid length. | 
|  | 163 | [Tags]  Verify_Set_System_Info_System_Firmware_Version_With_Invalid_Data_Length | 
|  | 164 |  | 
|  | 165 | # Generate a random 15 byte data, | 
|  | 166 | # i,e 16-byte block for system firmware name string data, | 
|  | 167 | # data 1 - Encoding string type, | 
|  | 168 | # data 2 - string length (in bytes, 1-based), | 
|  | 169 | # data 3 to 16 - system firmware name string data - 14 bytes, | 
|  | 170 | # data 17 - extra byte. | 
|  | 171 | ${firmware_version}=  Generate Random String  15  [LETTERS] | 
|  | 172 | ${firmware_version}  ${fw_hex_data}=  Identify Request Data  ${firmware_version} | 
|  | 173 | # Consider random string generated is 'zwclMXwfczMvcYz'. | 
|  | 174 | # The request data bytes will be 15 bytes, in which 14 bytes are only expected. | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 175 | # Check if the Set System Info Parameter for param 1 - System Firmware Version throws | 
|  | 176 | # error for invalid request data. | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 177 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param1_System_Firmware_Version']['Set'][1]}* | 
|  | 178 | ...  Run IPMI Standard Command | 
|  | 179 | ...  raw ${IPMI_RAW_CMD['System_Info']['param1_System_Firmware_Version']['Set'][0]} ${firmware_version} | 
|  | 180 |  | 
|  | 181 |  | 
|  | 182 | Verify System Info System Name | 
|  | 183 | [Documentation]  Verify System Name of System Info Parameter via IPMI by setting, | 
|  | 184 | ...  a random system name and verify whether it is updated as expected. | 
|  | 185 | [Tags]  Verify_System_Info_System_Name | 
|  | 186 |  | 
|  | 187 | # Generate a random 14 byte data, | 
|  | 188 | # i,e 16-byte block for system firmware name string data, | 
|  | 189 | # data 1 - Encoding string type, | 
|  | 190 | # data 2 - string length (in bytes, 1-based), | 
|  | 191 | # data 3 to 16 - system firmware name string data - 14 bytes. | 
|  | 192 | ${system_name}=  Generate Random String  14  [LETTERS] | 
|  | 193 | ${system_name}  ${name_hex_data}=  Identify Request Data  ${system_name} | 
|  | 194 | # Consider random string generated is 'zwclMXwfczMvcY'. | 
|  | 195 |  | 
|  | 196 | # Set System Name for System Info Parameter. | 
|  | 197 | Set System Name  ${system_name} | 
|  | 198 |  | 
|  | 199 | # Get the response of System Name, | 
|  | 200 | # and compare against randomly generated data bytes. | 
|  | 201 | ${sys_name}=  Get System Name | 
|  | 202 | # The response data will something be like, | 
|  | 203 | # ${sys_name}= ["11","00","00","0e","7a","77","63","6c","4d","58","77","66","63","7a","4d","76"]. | 
|  | 204 | Should Be Equal  ${sys_name[4:]}  ${name_hex_data} | 
|  | 205 |  | 
|  | 206 |  | 
|  | 207 | Verify Get System Info System Name With Invalid Data Length | 
|  | 208 | [Documentation]  Verify Get System Info Parameter System Name via IPMI with extra bytes, | 
|  | 209 | ...  and expect to get the error message for invalid length. | 
|  | 210 | [Tags]  Verify_Get_System_Info_System_Name_With_Invalid_Data_Length | 
|  | 211 |  | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 212 | # Check if the Get System Info Parameter for param 2 - System Name throws error | 
|  | 213 | # for invalid request data length. | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 214 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param2_System_Name']['Get'][1]}* | 
|  | 215 | ...  Run IPMI Standard Command | 
|  | 216 | ...  raw ${IPMI_RAW_CMD['System_Info']['param2_System_Name']['Get'][0]} 0x00 | 
|  | 217 |  | 
|  | 218 |  | 
|  | 219 | Verify Set System Info System Name With Invalid Data Length | 
|  | 220 | [Documentation]  Verify Set System Info Parameter System Name via IPMI with extra bytes, | 
|  | 221 | ...  and expect to get the error message for invalid length. | 
|  | 222 | [Tags]  Verify_Set_System_Info_System_Name_With_Invalid_Data_Length | 
|  | 223 |  | 
|  | 224 | # Generate a random 15 byte data, | 
|  | 225 | # i,e 16-byte block for system firmware name string data, | 
|  | 226 | # data 1 - Encoding string type, | 
|  | 227 | # data 2 - string length (in bytes, 1-based), | 
|  | 228 | # data 3 to 16 - system firmware name string data - 14 bytes, | 
|  | 229 | # data 17 - extra byte. | 
|  | 230 | ${system_name}=  Generate Random String  15  [LETTERS] | 
|  | 231 | ${system_name}  ${name_hex_data}=  Identify Request Data  ${system_name} | 
|  | 232 | # Consider random string generated is 'zwclMXwfczMvcYz'. | 
| George Keishing | e16f158 | 2022-12-15 07:32:21 -0600 | [diff] [blame] | 233 | # The request data bytes will be 15 bytes, in which 14 bytes are only expected. | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 234 |  | 
|  | 235 | # Check if the Set System Info Parameter for param 2 - System Name throws error for invalid request data. | 
|  | 236 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param2_System_Name']['Set'][1]}* | 
|  | 237 | ...  Run IPMI Standard Command | 
|  | 238 | ...  raw ${IPMI_RAW_CMD['System_Info']['param2_System_Name']['Set'][0]} ${system_name} | 
|  | 239 |  | 
|  | 240 |  | 
|  | 241 | Verify System Info Primary OS Name | 
|  | 242 | [Documentation]  Verify Primary OS Name of System Info Parameter via IPMI, | 
|  | 243 | ...  by setting a valid os version and verify whether it is updated as expected. | 
|  | 244 | [Tags]  Verify_System_Info_Primary_OS_Name | 
|  | 245 |  | 
|  | 246 | # os_version_name given in variable section which is a 14 byte data. | 
|  | 247 | ${os_name}  ${os_hex_data}=  Identify Request Data  ${valid_os_version_name} | 
|  | 248 |  | 
|  | 249 | # Set Primary OS Name of System Info Parameter. | 
|  | 250 | Set Primary OS Name  ${os_name} | 
|  | 251 |  | 
|  | 252 | # Get Primary OS Name of System Info Parameter. | 
|  | 253 | # Compare with the assigned os version name data. | 
|  | 254 | ${pr_os}=  Get Primary OS Name | 
|  | 255 | # The response data will something be like, | 
|  | 256 | # ${pr_os}= ["11","00","00","0e","56","65","72","73","69","6f","6e","32","2e","31","32","33"]. | 
|  | 257 | Should Be Equal  ${pr_os[4:]}  ${os_hex_data} | 
|  | 258 |  | 
|  | 259 |  | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 260 | Verify Get System Info Primary OS Name With Invalid Data Length | 
|  | 261 | [Documentation]  Verify Get System Info Parameter Primary OS Name via IPMI with extra bytes, | 
|  | 262 | ...  and expect to get the error message for invalid length. | 
|  | 263 | [Tags]  Verify_Get_System_Info_Primary_OS_Name_With_Invalid_Data_Length | 
|  | 264 |  | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 265 | # Check if the Get System Info Parameter for param 3 - Primary OS Name throws | 
|  | 266 | # error for invalid request data. | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 267 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param3_Primary_Operating_System_Name']['Get'][1]}* | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 268 | ...  Run IPMI Standard Command | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 269 | ...  raw ${IPMI_RAW_CMD['System_Info']['param3_Primary_Operating_System_Name']['Get'][0]} 0x00 | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 270 |  | 
|  | 271 |  | 
|  | 272 | Verify Set System Info Primary OS Name With Invalid Data Length | 
|  | 273 | [Documentation]  Verify setting invalid os version name to Primary OS Name, | 
|  | 274 | ...  of Set System Info Parameter via IPMI, | 
|  | 275 | ...  and expect to get the error message for invalid length. | 
|  | 276 | [Tags]  Verify_Set_System_Info_Primary_OS_Name_With_Invalid_Data_Length | 
|  | 277 |  | 
|  | 278 | # invalid_os_version given in variable section which is a 15 byte data, | 
|  | 279 | # The actual request byte should be 16 byte data where, | 
|  | 280 | # data 1 - Encoding string type, | 
|  | 281 | # data 2 - string length (in bytes, 1-based), | 
|  | 282 | # data 3 to 16 - system firmware name string data - 14 bytes, | 
|  | 283 | # Here 15 bytes so, data 17 - extra byte. | 
|  | 284 | ${os_name}  ${name_hex_data}=  Identify Request Data  ${invalid_os_version} | 
|  | 285 |  | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 286 | # Check if the Set System Info Parameter for param 3 - Primary OS Name throws error | 
|  | 287 | # for invalid data request. | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 288 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param3_Primary_Operating_System_Name']['Set'][1]}* | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 289 | ...  Run IPMI Standard Command | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 290 | ...  raw ${IPMI_RAW_CMD['System_Info']['param3_Primary_Operating_System_Name']['Set'][0]} ${os_name} | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 291 |  | 
|  | 292 |  | 
|  | 293 | Verify System Info OS Name | 
|  | 294 | [Documentation]  Verify setting valid os version to OS Name, | 
|  | 295 | ...  of System Info Parameter via IPMI and verify whether it updates as expected. | 
|  | 296 | [Tags]  Verify_System_Info_OS_Name | 
|  | 297 |  | 
|  | 298 | # os_version_name given in variable section which is a 14 byte data. | 
|  | 299 | ${os_name}  ${os_hex_data}=  Identify Request Data  ${valid_os_version_name} | 
|  | 300 |  | 
|  | 301 | # Set OS Name of System Info Parameters. | 
|  | 302 | Set OS Name  ${os_name} | 
|  | 303 |  | 
|  | 304 | # Get the OS Name and compare against given os_version_name. | 
|  | 305 | ${sysos}=  Get OS Name | 
|  | 306 | # The response data will something be like, | 
|  | 307 | # ${sysos}= ["11","00","00","0e","56","65","72","73","69","6f","6e","32","2e","31","32","33"]. | 
|  | 308 | Should Be Equal  ${sysos[4:]}  ${os_hex_data} | 
|  | 309 |  | 
|  | 310 |  | 
|  | 311 | Verify System Info OS Name After BMC Reboot | 
|  | 312 | [Documentation]  Verify setting valid os version name for OS Name, | 
|  | 313 | ...  of System Info Parameter and verify it changes to default after BMC Reboot via IPMI. | 
|  | 314 | [Tags]  Verify_System_Info_OS_Name_After_BMC_Reboot | 
|  | 315 |  | 
|  | 316 | # os_version_name given in variable section which is a 14 byte data. | 
|  | 317 | ${os_name}  ${os_hex_data}=  Identify Request Data  ${valid_os_version_name} | 
|  | 318 |  | 
|  | 319 | # Set OS Name of System Info Parameters. | 
|  | 320 | Set OS Name  ${os_name} | 
|  | 321 |  | 
|  | 322 | # Get the OS Name and compare against given os_version_name. | 
|  | 323 | ${sysos}=  Get OS Name | 
|  | 324 | # The response data will something be like, | 
|  | 325 | # ${sysos}= ["11","00","00","0e","56","65","72","73","69","6f","6e","32","2e","31","32","33"]. | 
|  | 326 | Should Be Equal  ${sysos[4:]}  ${os_hex_data} | 
|  | 327 |  | 
|  | 328 | # Cold Reset via IPMI | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 329 | IPMI MC Reset Cold (run) | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 330 |  | 
|  | 331 | # Since OS Name is volatile, | 
|  | 332 | # compare with response data of Get OS Name, | 
|  | 333 | # with default OS Name. | 
|  | 334 | ${sysos}=  Get OS Name | 
|  | 335 | # Should return default response data. | 
|  | 336 | Should Be Equal  ${sysos[2:]}  ${default_os_name} | 
|  | 337 |  | 
|  | 338 |  | 
|  | 339 | Verify Get System Info OS Name With Invalid Data Length | 
|  | 340 | [Documentation]  Verify OS Name of Get System Info Parameter via IPMI, | 
|  | 341 | ...  with extra bytes, and expect to get the error message for invalid length. | 
|  | 342 | [Tags]  Verify_Get_System_Info_OS_Name_With_Invalid_Data_Length | 
|  | 343 |  | 
|  | 344 | # Check if the Get System Info Parameter for param 4 - OS Name throws error for invalid request data. | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 345 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param4_Operating_System_Name']['Get'][1]}* | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 346 | ...  Run IPMI Standard Command | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 347 | ...  raw ${IPMI_RAW_CMD['System_Info']['param4_Operating_System_Name']['Get'][0]} 0x00 | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 348 |  | 
|  | 349 |  | 
|  | 350 | Verify Set System Info OS Name With Invalid Data Length | 
|  | 351 | [Documentation]  Verify setting invalid os version name to OS Name, | 
|  | 352 | ...  of Get System Info Parameter via IPMI, | 
|  | 353 | ...  and expect to get the error message for invalid length. | 
|  | 354 | [Tags]  Verify_Set_System_Info_OS_Name_With_Invalid_Data_Length | 
|  | 355 |  | 
|  | 356 | # invalid_os_version given in variable section which is a 15 byte data, | 
|  | 357 | # The actual request byte should be 16 byte data where, | 
|  | 358 | # data 1 - Encoding string type, | 
|  | 359 | # data 2 - string length (in bytes, 1-based), | 
|  | 360 | # data 3 to 16 - system firmware name string data - 14 bytes, | 
|  | 361 | # Here 15 bytes so, data 17 - extra byte. | 
|  | 362 | ${os_name}  ${name_hex_data}=  Identify Request Data  ${invalid_os_version} | 
|  | 363 |  | 
|  | 364 | # Check if the Set System Info Parameter for param 4 - OS Name throws error for invalid request data. | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 365 | Run Keyword and Expect Error  *${IPMI_RAW_CMD['System_Info']['param4_Operating_System_Name']['Set'][1]}* | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 366 | ...  Run IPMI Standard Command | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 367 | ...  raw ${IPMI_RAW_CMD['System_Info']['param4_Operating_System_Name']['Set'][0]} ${os_name} | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 368 |  | 
|  | 369 |  | 
|  | 370 | Verify System Info Present OS Version Number | 
|  | 371 | [Documentation]  Verify setting valid os version for Present OS Version Number, | 
|  | 372 | ...  of System Info Parameter via IPMI and verify whether it is updated as expected. | 
|  | 373 | [Tags]  Verify_System_Info_Present_OS_Version_Number | 
|  | 374 |  | 
|  | 375 | # os_version_name given in variable section which is a 14 byte data. | 
|  | 376 | ${os_name}  ${os_hex_data}=  Identify Request Data  ${valid_os_version_name} | 
|  | 377 |  | 
|  | 378 | # Set Present OS Version Number for System Info Parameters. | 
|  | 379 | Set Present OS Version Number  ${os_name} | 
|  | 380 |  | 
|  | 381 | # Get Present OS Version Number for System Info Parameters, | 
|  | 382 | # compare with response data of Get OS Name, | 
|  | 383 | # with assigned os version name. | 
|  | 384 | ${os_version}=  Get Present OS Version Number | 
|  | 385 | # The response data will something be like, | 
|  | 386 | # ${os_version}= ["11","00","00","0e","56","65","72","73","69","6f","6e","32","2e","31","32","33"]. | 
|  | 387 | Should Be Equal  ${os_version[4:]}  ${os_hex_data} | 
|  | 388 |  | 
|  | 389 |  | 
|  | 390 | Verify Get System Info Present OS Version Number With Invalid Data Length | 
|  | 391 | [Documentation]  Verify Get System Info Parameter Present OS Version Number via IPMI, | 
|  | 392 | ...  with extra bytes, and expect to get the error message for invalid length. | 
|  | 393 | [Tags]  Verify_Get_System_Info_Present_OS_Version_Number_With_Invalid_Data_Length | 
|  | 394 |  | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 395 | # Check if the Get System Info Parameter for param 5 - Present OS Version Number throws | 
|  | 396 | # error for invalid request data. | 
|  | 397 | Run Keyword and Expect Error | 
|  | 398 | ...  *${IPMI_RAW_CMD['System_Info']['param5_Present_OS_Version_number']['Get'][1]}* | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 399 | ...  Run IPMI Standard Command | 
|  | 400 | ...  raw ${IPMI_RAW_CMD['System_Info']['param5_Present_OS_Version_number']['Get'][0]} 0x00 | 
|  | 401 |  | 
|  | 402 |  | 
|  | 403 | Verify Set System Info Present OS Version Number With Invalid Data Length | 
|  | 404 | [Documentation]  Verify setting invalid os version to Present OS Version Number | 
|  | 405 | ...  of Set System Info Parameter via IPMI, | 
|  | 406 | ...  and expect to get the error message for invalid length. | 
|  | 407 | [Tags]  Verify_Set_System_Info_Present_OS_Version_Number_With_Invalid_Data_Length | 
|  | 408 |  | 
|  | 409 | # invalid_os_version given in variable section which is a 15 byte data. | 
|  | 410 | # The actual request byte should be 16 byte data where, | 
|  | 411 | # data 1 - Encoding string type, | 
|  | 412 | # data 2 - string length (in bytes, 1-based), | 
|  | 413 | # data 3 to 16 - system firmware name string data - 14 bytes, | 
|  | 414 | # Here 15 bytes so, data 17 - extra byte. | 
|  | 415 | ${os_name}  ${name_hex_data}=  Identify Request Data  ${invalid_os_version} | 
|  | 416 |  | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 417 | # Check if the Set System Info Parameter for param 5 - Present OS Version Number throws | 
|  | 418 | # error for invalid request data. | 
|  | 419 | Run Keyword and Expect Error | 
|  | 420 | ...  *${IPMI_RAW_CMD['System_Info']['param5_Present_OS_Version_number']['Set'][1]}* | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 421 | ...  Run IPMI Standard Command | 
|  | 422 | ...  raw ${IPMI_RAW_CMD['System_Info']['param5_Present_OS_Version_number']['Set'][0]} ${os_name} | 
|  | 423 |  | 
|  | 424 |  | 
|  | 425 | *** Keywords *** | 
|  | 426 |  | 
|  | 427 | Identify Request Data | 
|  | 428 | [Documentation]  Convert string to hexadecimal request data with and without prefix 0x. | 
|  | 429 | [Arguments]  ${string} | 
|  | 430 |  | 
|  | 431 | # Given a string, convert to hexadecimal and prefix with 0x. | 
|  | 432 | # Consider random string generated ${string} is 'zwc'. | 
|  | 433 | ${fw_ver_hex_list}=  Create List | 
|  | 434 | ${hex_data_list}=  Create List | 
|  | 435 | ${resp_data_list}=  Split String With Index  ${string}  1 | 
|  | 436 | # ${resp_data_list} will be ['z', 'w', 'c']. | 
|  | 437 | FOR  ${data}  IN  @{resp_data_list} | 
|  | 438 | # prefixes 0x by default. | 
|  | 439 | # Example : 0x00. | 
|  | 440 | ${hex_value}=  Evaluate  hex(ord("${data}")) | 
|  | 441 | # provides only hexadecimal bytes. | 
|  | 442 | # Example : 00. | 
|  | 443 | ${hex}=  Evaluate  hex(ord("${data}"))[2:] | 
|  | 444 | # With prefix 0x. | 
|  | 445 | Append To List  ${fw_ver_hex_list}  ${hex_value} | 
|  | 446 | # Without prefix. | 
|  | 447 | Append To List  ${hex_data_list}  ${hex} | 
|  | 448 | END | 
|  | 449 | ${fw_ver_hex}=  Evaluate  " ".join(${fw_ver_hex_list}) | 
|  | 450 |  | 
|  | 451 | [Return]  ${fw_ver_hex}  ${hex_data_list} | 
|  | 452 |  | 
|  | 453 |  | 
|  | 454 | Get System Info Set In Progress | 
|  | 455 | [Documentation]  Run Get system info parameter command for set-in-progress and return response data. | 
|  | 456 |  | 
|  | 457 | # Get System Info Parameter for param 0 - Set In Progress. | 
|  | 458 | ${resp}=  Run IPMI Standard Command | 
|  | 459 | ...  raw ${IPMI_RAW_CMD['System_Info']['param0_Set_In_Progress']['Get'][0]} | 
|  | 460 | ${resp}=  Split String  ${resp} | 
|  | 461 |  | 
|  | 462 | [Return]  ${resp} | 
|  | 463 |  | 
|  | 464 |  | 
|  | 465 | Set System Info Set In Progress | 
|  | 466 | [Documentation]  Set System Info Set In Progress with valid state via IPMI. | 
|  | 467 | [Arguments]  ${state} | 
|  | 468 |  | 
|  | 469 | # Set System Info Parameter for param 0 - Set In Progress. | 
|  | 470 | # ${state} can be can be any - 00 | 01 | 10 | 11. | 
|  | 471 | Run IPMI Standard Command | 
|  | 472 | ...  raw ${IPMI_RAW_CMD['System_Info']['param0_Set_In_Progress']['Set'][0]} ${state} | 
|  | 473 |  | 
|  | 474 |  | 
|  | 475 | Get System Firmware Version | 
| George Keishing | 6e64126 | 2022-05-05 10:46:22 -0500 | [diff] [blame] | 476 | [Documentation]  Run Get system info parameter command for system firmware version | 
|  | 477 | ...              and return response data. | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 478 |  | 
|  | 479 | # Get System Info Parameter for param 1 - System Firmware Version. | 
|  | 480 | ${resp}=  Run IPMI Standard Command | 
|  | 481 | ...  raw ${IPMI_RAW_CMD['System_Info']['param1_System_Firmware_Version']['Get'][0]} | 
|  | 482 | ${resp}=  Split String  ${resp} | 
|  | 483 |  | 
|  | 484 | [Return]  ${resp} | 
|  | 485 |  | 
|  | 486 |  | 
|  | 487 | Set System Firmware Version | 
|  | 488 | [Documentation]  Set System Firmware Version for System Info with valid version. | 
|  | 489 | [Arguments]  ${version} | 
|  | 490 |  | 
|  | 491 | # Set System Info Parameter for param 1 - System Firmware Version. | 
|  | 492 | # ${version} can be any 14 data. | 
|  | 493 | Run IPMI Standard Command | 
|  | 494 | ...  raw ${IPMI_RAW_CMD['System_Info']['param1_System_Firmware_Version']['Set'][0]} ${version} | 
|  | 495 |  | 
|  | 496 |  | 
|  | 497 | Get System Name | 
|  | 498 | [Documentation]  Run system info parameter command for system name and return response data. | 
|  | 499 |  | 
|  | 500 | # Get System Info Parameter for param 2 - System Name. | 
|  | 501 | ${resp}=  Run IPMI Standard Command | 
|  | 502 | ...  raw ${IPMI_RAW_CMD['System_Info']['param2_System_Name']['Get'][0]} | 
|  | 503 | ${resp}=  Split String  ${resp} | 
|  | 504 |  | 
|  | 505 | [Return]  ${resp} | 
|  | 506 |  | 
|  | 507 |  | 
|  | 508 | Set System Name | 
|  | 509 | [Documentation]  Set System Name for System Info with valid name. | 
|  | 510 | [Arguments]  ${sys_name} | 
|  | 511 |  | 
|  | 512 | # Set System Info Parameter for param 2 - System Name. | 
|  | 513 | # ${sys_name} can be any 14 byte data. | 
|  | 514 | Run IPMI Standard Command | 
|  | 515 | ...  raw ${IPMI_RAW_CMD['System_Info']['param2_System_Name']['Set'][0]} ${sys_name} | 
|  | 516 |  | 
|  | 517 |  | 
|  | 518 | Get Primary OS Name | 
|  | 519 | [Documentation]  Run Get System Info command for primary OS name and return response data. | 
|  | 520 |  | 
|  | 521 | # Get System Info Parameter for param 3 - Primary OS Name. | 
|  | 522 | ${resp}=  Run IPMI Standard Command | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 523 | ...  raw ${IPMI_RAW_CMD['System_Info']['param3_Primary_Operating_System_Name']['Get'][0]} | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 524 | ${resp}=  Split String  ${resp} | 
|  | 525 |  | 
|  | 526 | [Return]  ${resp} | 
|  | 527 |  | 
|  | 528 |  | 
|  | 529 | Set Primary OS Name | 
|  | 530 | [Documentation]  Set Primary OS Name for System Info with valid os name. | 
|  | 531 | [Arguments]  ${os_name} | 
|  | 532 |  | 
|  | 533 | # Set System Info Parameter for param 3 - Primary OS Name. | 
|  | 534 | # ${os_name} can be any 14 byte data. | 
|  | 535 | Run IPMI Standard Command | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 536 | ...  raw ${IPMI_RAW_CMD['System_Info']['param3_Primary_Operating_System_Name']['Set'][0]} ${os_name} | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 537 |  | 
|  | 538 |  | 
|  | 539 | Get OS Name | 
|  | 540 | [Documentation]  Run get System Info command for OS name and return response data. | 
|  | 541 |  | 
|  | 542 | # Get System Info Parameter for param 4 - OS Name. | 
|  | 543 | ${resp}=  Run IPMI Standard Command | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 544 | ...  raw ${IPMI_RAW_CMD['System_Info']['param4_Operating_System_Name']['Get'][0]} | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 545 | ${resp}=  Split String  ${resp} | 
|  | 546 |  | 
|  | 547 | [Return]  ${resp} | 
|  | 548 |  | 
|  | 549 |  | 
|  | 550 | Set OS Name | 
|  | 551 | [Documentation]  Set OS Name for System Info with valid os name. | 
|  | 552 | [Arguments]  ${os_name} | 
|  | 553 |  | 
|  | 554 | # Set System Info Parameter for param 4 - OS Name. | 
|  | 555 | # ${os_name} can be any 14 byte data. | 
|  | 556 | Run IPMI Standard Command | 
| nagarjunb22 | c46f794 | 2022-05-11 10:33:17 +0530 | [diff] [blame] | 557 | ...  raw ${IPMI_RAW_CMD['System_Info']['param4_Operating_System_Name']['Set'][0]} ${os_name} | 
| chithrag | 015f787 | 2022-03-21 09:42:01 +0000 | [diff] [blame] | 558 |  | 
|  | 559 |  | 
|  | 560 | Get Present OS Version Number | 
|  | 561 | [Documentation]  Run Get System Info command for present os version name and return response. | 
|  | 562 |  | 
|  | 563 | # Get System Info Parameter for param 5 - Present OS Version Number. | 
|  | 564 | ${resp}=  Run IPMI Standard Command | 
|  | 565 | ...  raw ${IPMI_RAW_CMD['System_Info']['param5_Present_OS_Version_number']['Get'][0]} | 
|  | 566 | ${resp}=  Split String  ${resp} | 
|  | 567 |  | 
|  | 568 | [Return]  ${resp} | 
|  | 569 |  | 
|  | 570 |  | 
|  | 571 | Set Present OS Version Number | 
|  | 572 | [Documentation]  Set Present OS Version Number for System Info with valid os version. | 
|  | 573 | [Arguments]  ${os_name} | 
|  | 574 |  | 
|  | 575 | # Set System Info Parameter for param 5 - Present OS Version Number. | 
|  | 576 | # ${os_name} can be any 14 byte data | 
|  | 577 | Run IPMI Standard Command | 
|  | 578 | ...  raw ${IPMI_RAW_CMD['System_Info']['param5_Present_OS_Version_number']['Set'][0]} ${os_name} | 
|  | 579 |  | 
|  | 580 |  | 
|  | 581 | Add Prefix To List Objects And Join String | 
|  | 582 | [Documentation]  Adding prefix '0x' to each list object and join the string. | 
|  | 583 | [Arguments]  ${list} | 
|  | 584 |  | 
|  | 585 | # ${list} contains list of hexadecimal data. | 
|  | 586 |  | 
|  | 587 | # Prefix Bytes with 0x for each data bytes and makes a string of request bytes. | 
|  | 588 | # Prefix Bytes function under lib/ipmi_utils.py. | 
|  | 589 | # Prefixes every list item with 0x and returns list of prefixed hexadecimal data. | 
|  | 590 | ${prefix_list}=  Prefix Bytes  ${list} | 
|  | 591 | ${prefix_list}=  Evaluate  " ".join(${prefix_list}) | 
|  | 592 |  | 
|  | 593 | [Return]  ${prefix_list} | 
|  | 594 |  | 
|  | 595 |  | 
|  | 596 | Suite Setup Execution | 
|  | 597 | [Documentation]  Suite setup execution to fetch all the default response bytes, | 
|  | 598 | ...  prefix each byte with 0x and make them a suite variable. | 
|  | 599 |  | 
|  | 600 | # Get Default Values of each parameters. | 
|  | 601 | # Set In Progress - param 0. | 
|  | 602 | ${resp}=  Get System Info Set In Progress | 
|  | 603 | # Configuration parameter data - 11 xx (xx can be any - 00 | 01 | 10 | 11). | 
|  | 604 | ${set_in_progress}=  Set Variable  ${resp[1]} | 
|  | 605 |  | 
|  | 606 | Set Suite Variable  ${set_in_progress} | 
|  | 607 |  | 
|  | 608 | # System Firmware Version - param 1. | 
|  | 609 | ${resp}=  Get System Firmware Version | 
|  | 610 | # Configuration parameter data - 11 x1 x2 xx xx xx xx .. xx (xx - 14 bytes). | 
|  | 611 | # x1 - encoding, x2 - string length in bytes. | 
|  | 612 | ${sys_fw_version}=  Set Variable  ${resp[2:]} | 
|  | 613 | # Prefix all bytes with 0x. | 
|  | 614 | ${sys_fw_version_string}=  Add Prefix To List Objects And Join String  ${sys_fw_version} | 
|  | 615 |  | 
|  | 616 | Set Suite Variable  ${sys_fw_version} | 
|  | 617 | Set Suite Variable  ${sys_fw_version_string} | 
|  | 618 |  | 
|  | 619 | # System Name - param 2. | 
|  | 620 | ${resp}=  Get System Name | 
|  | 621 | # Configuration parameter data - 11 x1 x2 xx xx xx xx .. xx (xx - 14 bytes). | 
|  | 622 | # x1 - encoding, x2 - string length in bytes. | 
|  | 623 | ${sys_name_default}=  Set Variable  ${resp[2:]} | 
|  | 624 | # Prefix all bytes with 0x. | 
|  | 625 | ${sys_name_hex_default}=  Add Prefix To List Objects And Join String  ${sys_name_default} | 
|  | 626 |  | 
|  | 627 | Set Suite Variable  ${sys_name_default} | 
|  | 628 | Set Suite Variable  ${sys_name_hex_default} | 
|  | 629 |  | 
|  | 630 | # Primary OS Name - param 3. | 
|  | 631 | ${resp}=  Get Primary OS Name | 
|  | 632 | # Configuration parameter data - 11 x1 x2 xx xx xx xx .. xx (xx - 14 bytes). | 
|  | 633 | # x1 - encoding, x2 - string length in bytes. | 
|  | 634 | ${primary_os_name}=  Set Variable  ${resp[2:]} | 
|  | 635 | # Prefix all bytes with 0x. | 
|  | 636 | ${primary_os_name_hex}=  Add Prefix To List Objects And Join String  ${primary_os_name} | 
|  | 637 |  | 
|  | 638 | Set Suite Variable  ${primary_os_name} | 
|  | 639 | Set Suite Variable  ${primary_os_name_hex} | 
|  | 640 |  | 
|  | 641 | # OS Name - param 4. | 
|  | 642 | ${resp}=  Get OS Name | 
|  | 643 | # Configuration parameter data - 11 x1 x2 xx xx xx xx .. xx (xx - 14 bytes). | 
|  | 644 | # x1 - encoding, x2 - string length in bytes. | 
|  | 645 | ${default_os_name}=  Set Variable  ${resp[2:]} | 
|  | 646 | # Prefix all bytes with 0x. | 
|  | 647 | ${default_os_name_hex}=  Add Prefix To List Objects And Join String  ${default_os_name} | 
|  | 648 |  | 
|  | 649 | Set Suite Variable  ${default_os_name} | 
|  | 650 | Set Suite Variable  ${default_os_name_hex} | 
|  | 651 |  | 
|  | 652 | # Present OS Version Number - param 5. | 
|  | 653 | ${resp}=  Get Present OS Version Number | 
|  | 654 | # Configuration parameter data - 11 x1 x2 xx xx xx xx .. xx (xx - 14 bytes). | 
|  | 655 | # x1 - encoding, x2 - string length in bytes. | 
|  | 656 | ${present_os_num}=  Set Variable  ${resp[2:]} | 
|  | 657 | # Prefix all bytes with 0x. | 
|  | 658 | ${present_os_num_hex}=  Add Prefix To List Objects And Join String  ${present_os_num} | 
|  | 659 |  | 
|  | 660 | Set Suite Variable  ${present_os_num} | 
|  | 661 | Set Suite Variable  ${present_os_num_hex} | 
|  | 662 |  | 
|  | 663 |  | 
|  | 664 | Restore Default Configuration | 
|  | 665 | [Documentation]  Restore all system info parameter response data to, | 
|  | 666 | ...  default data obtained from suite setup. | 
|  | 667 |  | 
|  | 668 | # All variable to set are suite variables declared in suite setup. | 
|  | 669 |  | 
|  | 670 | # Set In Progress - param 0. | 
|  | 671 | Set System Info Set In Progress  0x${set_in_progress} | 
|  | 672 |  | 
|  | 673 | # System Firmware Version - param 1. | 
|  | 674 | Run IPMI Standard Command  raw 0x06 0x58 0x01 0x00 ${sys_fw_version_string} | 
|  | 675 |  | 
|  | 676 | # System Name - param 2. | 
|  | 677 | Run IPMI Standard Command  raw 0x06 0x58 0x02 0x00 ${sys_name_hex_default} | 
|  | 678 |  | 
|  | 679 | # Primary OS Name - param 3. | 
|  | 680 | Run IPMI Standard Command  raw 0x06 0x58 0x03 0x00 ${primary_os_name_hex} | 
|  | 681 |  | 
|  | 682 | # OS Name - param 4. | 
|  | 683 | Run IPMI Standard Command  raw 0x06 0x58 0x04 0x00 ${default_os_name_hex} | 
|  | 684 |  | 
|  | 685 | # Present OS Version Number - param 5. | 
|  | 686 | Run IPMI Standard Command  raw 0x06 0x58 0x05 0x00 ${present_os_num_hex} |