blob: ffe4b78470944db5b7b551d289061b756485cf5c [file] [log] [blame]
Sridevi Ramesh3ed96342018-01-15 05:14:37 -06001*** Settings ***
2Documentation This suite tests checkstop operations through HOST.
3Resource ../lib/utils.robot
4Resource ../lib/openbmc_ffdc.robot
5Resource ../lib/ras/host_utils.robot
6Resource ../lib/resource.txt
7Resource ../lib/state_manager.robot
8Resource ../lib/openbmc_ffdc_methods.robot
9Resource ../lib/boot_utils.robot
10Variables ../lib/ras/variables.py
11
12Library DateTime
13Library OperatingSystem
14Library random
15Library Collections
16
17Suite Setup RAS Suite Setup
18Test Setup RAS Test Setup
19Test Teardown FFDC On Test Case Fail
20Suite Teardown RAS Suite Cleanup
21
22Force Tags Host_RAS
23*** Variables ***
24${stack_mode} normal
25
26*** Test Cases ***
27# Memory channel (MCACALIFIR) related error injection.
28
29Verify Recoverable Callout Handling For MCA With Threshold 1
30 [Documentation] Verify recoverable callout handling for MCACALIFIR with
31 ... threshold 1.
32 [Tags] Verify_Recoverable_Callout_Handling_For_MCA_With_Threshold_1
33
34 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} MCACALIFIR_RECV1
35 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}mcacalfir_th1
36 Inject Recoverable Error With Threshold Limit Through Host
37 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
38
39
40Verify Recoverable Callout Handling For MCA With Threshold 32
41 [Documentation] Verify recoverable callout handling for MCACALIFIR with
42 ... threshold 32.
43 [Tags] Verify_Recoverable_Callout_Handling_For_MCA_With_Threshold_32
44
45 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} MCACALIFIR_RECV32
46 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}mcacalfir_th32
47 Inject Recoverable Error With Threshold Limit Through Host
48 ... ${value[0]} ${value[1]} 32 ${value[2]} ${err_log_path}
49
50Verify Unrecoverable Callout Handling For MCA
51 [Documentation] Verify unrecoverable callout handling for MCACALIFIR.
52 [Tags] Verify_Unrecoverable_Callout_Handling_For_MCA
53
54 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} MCACALIFIR_UE
55 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}mcacalfir
56 Inject Unrecoverable Error Through Host
57 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
58
59# Memory buffer (MCIFIR) related error injection.
60
61Verify Recoverable Callout Handling For MCI With Threshold 1
62 [Documentation] Verify recoverable callout handling for mci with
63 ... threshold 1.
64 [Tags] Verify_Recoverable_Callout_Handling_For_MCI_With_Threshold_1
65
66 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} MCS_RECV1
67 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}mcifir_th1
68 Inject Recoverable Error With Threshold Limit Through Host
69 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
70
71Verify Unrecoverable Callout Handling For MCI
72 [Documentation] Verify unrecoverable callout handling for mci.
73 [Tags] Verify_Unrecoverable_Callout_Handling_For_MCI
74
75 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} MCS_UE
76 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}mcifir
77 Inject Unrecoverable Error Through Host
78 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
79
80# CAPP accelerator (CXAFIR) related error injection.
81
82Verify Recoverable Callout Handling For CXA With Threshold 5
83 [Documentation] Verify recoverable callout handling for CXA with
84 ... threshold 5.
85 [Tags] Verify_Recoverable_Callout_Handling_For_CXA_With_Threshold_5
86
87 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} CXA_RECV5
88 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}cxafir_th5
89 Inject Recoverable Error With Threshold Limit Through Host
90 ... ${value[0]} ${value[1]} 5 ${value[2]} ${err_log_path}
91
92Verify Recoverable Callout Handling For CXA With Threshold 32
93 [Documentation] Verify recoverable callout handling for CXA with
94 ... threshold 32.
95 [Tags] Verify_Recoverable_Callout_Handling_For_CXA_With_Threshold_32
96
97 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} CXA_RECV32
98 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}cxafir_th32
99 Inject Recoverable Error With Threshold Limit Through Host
100 ... ${value[0]} ${value[1]} 32 ${value[2]} ${err_log_path}
101
102Verify Unrecoverable Callout Handling For CXA
103 [Documentation] Verify unrecoverable callout handling for CXAFIR.
104 [Tags] Verify_Unrecoverable_Callout_Handling_For_CXA
105
106 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} CXA_UE
107 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}cxafir_ue
108 Inject Unrecoverable Error Through Host
109 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
110
111# OBUSFIR related error injection.
112
113Verify Recoverable Callout Handling For OBUS With Threshold 32
114 [Documentation] Verify recoverable callout handling for OBUS with
115 ... threshold 32.
116 [Tags] Verify_Recoverable_Callout_Handling_For_OBUS_With_Threshold_32
117
118 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} OBUS_RECV32
119 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}obusfir_th32
120 Inject Recoverable Error With Threshold Limit Through Host
121 ... ${value[0]} ${value[1]} 32 ${value[2]} ${err_log_path}
122
123# Nvidia graphics processing units (NPU0FIR) related error injection.
124
125Verify Recoverable Callout Handling For NPU0 With Threshold 32
126 [Documentation] Verify recoverable callout handling for NPU0 with
127 ... threshold 32.
128 [Tags] Verify_Recoverable_Callout_Handling_For_NPU0_With_Threshold_32
129
130 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} NPU0_RECV32
131 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}npu0fir_th32
132 Inject Recoverable Error With Threshold Limit Through Host
133 ... ${value[0]} ${value[1]} 32 ${value[2]} ${err_log_path}
134
135# Nest accelerator NXDMAENGFIR related error injection.
136
137Verify Recoverable Callout Handling For NXDMAENG With Threshold 1
138 [Documentation] Verify recoverable callout handling for NXDMAENG with
139 ... threshold 1.
140 [Tags] Verify_Recoverable_Callout_Handling_For_NXDMAENG_With_Threshold_1
141
142 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} NX_RECV1
143 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}nxfir_th1
144 Inject Recoverable Error With Threshold Limit Through Host
145 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
146
147
148Verify Recoverable Callout Handling For NXDMAENG With Threshold 32
149 [Documentation] Verify recoverable callout handling for NXDMAENG with
150 ... threshold 32.
151 [Tags] Verify_Recoverable_Callout_Handling_For_NXDMAENG_With_Threshold_32
152
153 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} NX_RECV32
154 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}nxfir_th32
155 Inject Recoverable Error With Threshold Limit Through Host
156 ... ${value[0]} ${value[1]} 32 ${value[2]} ${err_log_path}
157
158Verify Unrecoverable Callout Handling For NXDMAENG
159 [Documentation] Verify unrecoverable callout handling for NXDMAENG.
160 [Tags] Verify_Unrecoverable_Callout_Handling_For_NXDMAENG
161
162 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} NX_UE
163 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}nxfir_ue
164 Inject Unrecoverable Error Through Host
165 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
166
167
168# L2FIR related error injection.
169
170Verify Recoverable Callout Handling For L2FIR With Threshold 1
171 [Documentation] Verify recoverable callout handling for L2FIR with
172 ... threshold 1.
173 [Tags] Verify_Recoverable_Callout_Handling_For_L2FIR_With_Threshold_1
174
175 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} L2FIR_RECV1
176 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
177 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}l2fir_th1
178 Inject Recoverable Error With Threshold Limit Through Host
179 ... ${translated_fir} ${value[1]} 1 ${value[2]} ${err_log_path}
180
181Verify Recoverable Callout Handling For L2FIR With Threshold 32
182 [Documentation] Verify recoverable callout handling for L2FIR with
183 ... threshold 32.
184 [Tags] Verify_Recoverable_Callout_Handling_For_L2FIR_With_Threshold_32
185
186 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} L2FIR_RECV32
187 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
188 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}l2fir_th32
189 Inject Recoverable Error With Threshold Limit Through Host
190 ... ${translated_fir} ${value[1]} 32 ${value[2]} ${err_log_path}
191
192Verify Unrecoverable Callout Handling For L2FIR
193 [Documentation] Verify unrecoverable callout handling for L2FIR.
194 [Tags] Verify_Unrecoverable_Callout_Handling_For_L2FIR
195
196 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} L2FIR_UE
197 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
198 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}l2fir_ue
199 Inject Unrecoverable Error Through Host
200 ... ${translated_fir} ${value[1]} 1 ${value[2]} ${err_log_path}
201
202# L3FIR related error injection.
203
204Verify Recoverable Callout Handling For L3FIR With Threshold 1
205 [Documentation] Verify recoverable callout handling for L3FIR with
206 ... threshold 1.
207 [Tags] Verify_Recoverable_Callout_Handling_For_L3FIR_With_Threshold_1
208
209 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} L3FIR_RECV1
210 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
211 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}l3fir_th1
212 Inject Recoverable Error With Threshold Limit Through Host
213 ... ${translated_fir} ${value[1]} 1 ${value[2]} ${err_log_path}
214
215Verify Recoverable Callout Handling For L3FIR With Threshold 32
216 [Documentation] Verify recoverable callout handling for L3FIR with
217 ... threshold 32.
218 [Tags] Verify_Recoverable_Callout_Handling_For_L3FIR_With_Threshold_32
219
220 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} L3FIR_RECV32
221 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
222 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}l3fir_th32
223 Inject Recoverable Error With Threshold Limit Through Host
224 ... ${translated_fir} ${value[1]} 32 ${value[2]} ${err_log_path}
225
226Verify Unrecoverable Callout Handling For L3FIR
227 [Documentation] Verify unrecoverable callout handling for L3FIR.
228 [Tags] Verify_Unrecoverable_Callout_Handling_For_L3FIR
229
230 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} L3FIR_UE
231 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
232 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}l3fir_ue
233 Inject Unrecoverable Error Through Host
234 ... ${translated_fir} ${value[1]} 1 ${value[2]} ${err_log_path}
235
236# On chip controller (OCCFIR) related error injection.
237
238Verify Recoverable Callout Handling For OCC With Threshold 1
239 [Documentation] Verify recoverable callout handling for OCCFIR with
240 ... threshold 1.
241 [Tags] Verify_Recoverable_Callout_Handling_For_OCC_With_Threshold_1
242
243 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} OCCFIR_RECV1
244 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}occfir_th1
245 Inject Recoverable Error With Threshold Limit Through Host
246 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
247
248# Core management engine (CMEFIR) related error injection.
249
250Verify Recoverable Callout Handling For CMEFIR With Threshold 1
251 [Documentation] Verify recoverable callout handling for CMEFIR with
252 ... threshold 1.
253 [Tags] Verify_Recoverable_Callout_Handling_For_CMEFIR_With_Threshold_1
254
255 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} CMEFIR_RECV1
256 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
257 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}cmefir_th1
258 Inject Recoverable Error With Threshold Limit Through Host
259 ... ${translated_fir} ${value[1]} 1 ${value[2]} ${err_log_path}
260
261# Nest control vunit (NCUFIR) related error injection.
262
263Verify Recoverable Callout Handling For NCUFIR With Threshold 1
264 [Documentation] Verify recoverable callout handling for NCUFIR with
265 ... threshold 1.
266 [Tags] Verify_Recoverable_Callout_Handling_For_NCUFIR_With_Threshold_1
267
268 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} NCUFIR_RECV1
269 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
270 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}ncufir_th1
271 Inject Recoverable Error With Threshold Limit Through Host
272 ... ${translated_fir} ${value[1]} 1 ${value[2]} ${err_log_path}
273
274Verify Unrecoverable Callout Handling For NCUFIR
275 [Documentation] Verify unrecoverable callout handling for NCUFIR.
276 [Tags] Verify_Unrecoverable_Callout_Handling_For_NCUFIR
277
278 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} NCUFIR_UE
279 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
280 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}ncufir_ue
281 Inject Unrecoverable Error Through Host
282 ... ${translated_fir} ${value[1]} 1 ${value[2]} ${err_log_path}
283
284# Core FIR related error injection.
285
286Verify Recoverable Callout Handling For CoreFIR With Threshold 5
287 [Documentation] Verify recoverable callout handling for CoreFIR with
288 ... threshold 5.
289 [Tags] Verify_Recoverable_Callout_Handling_For_CoreFIR_With_Threshold_5
290
291 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} COREFIR_RECV5
292 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
293 Disable CPU States Through HOST
294 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}corefir_th5
295 Inject Recoverable Error With Threshold Limit Through Host
296 ... ${value[0]} ${value[1]} 5 ${value[2]} ${err_log_path}
297
298Verify Recoverable Callout Handling For CoreFIR With Threshold 1
299 [Documentation] Verify recoverable callout handling for CoreFIR with
300 ... threshold 1.
301 [Tags] Verify_Recoverable_Callout_CoreFIR_Handling_For_With_Threshold_1
302
303 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} COREFIR_RECV1
304 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
305 Disable CPU States Through HOST
306 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}corefir_th1
307 Inject Recoverable Error With Threshold Limit Through Host
308 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
309
310Verify Unrecoverable Callout Handling For CoreFIR
311 [Documentation] Verify unrecoverable callout handling for CoreFIR.
312 [Tags] Verify_Unrecoverable_Callout_Handling_For_CoreFIR
313
314 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} COREFIR_UE
315 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EX
316 Disable CPU States Through HOST
317 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}corefir_ue
318 Inject Unrecoverable Error Through Host
319 ... ${value[0]} ${value[1]} 1 ${value[2]} ${err_log_path}
320
321Verify Recoverable Callout Handling For EQFIR With Threshold 32
322 [Documentation] Verify recoverable callout handling for L3FIR with
323 ... threshold 32.
324 [Tags] Verify_Recoverable_Callout_Handling_For_EQFIR_With_Threshold_32
325
326 ${value}= Get From Dictionary ${ERROR_INJECT_DICT} EQFIR_RECV32
327 ${translated_fir}= Fetch FIR Address Translation Value ${value[0]} EQ
328 ${err_log_path}= Catenate ${RAS_LOG_DIR_PATH}eqfir_th32
329 Inject Recoverable Error With Threshold Limit Through Host
330 ... ${translated_fir} ${value[1]} 32 ${value[2]} ${err_log_path}
331
332
333*** Keywords ***
334
335Verify And Clear Gard Records On HOST
336 [Documentation] Verify And Clear gard records on HOST.
337
338 ${output}= Gard Operations On OS list
339 Should Not Contain ${output} No GARD
340 Gard Operations On OS clear all
341
342Verify Error Log Entry
343 [Documentation] Verify error log entry & signature description.
344 [Arguments] ${signature_desc} ${log_prefix}
345 # Description of argument(s):
346 # signature_desc Error log signature description.
347 # log_prefix Log path prefix.
348
349 ${resp}= OpenBMC Get Request ${BMC_LOGGING_ENTRY}/list
350 Should Not Be Equal As Strings ${resp.status_code} ${HTTP_NOT_FOUND}
351
352 Collect eSEL Log ${log_prefix}
353 ${error_log_file_path}= Catenate ${log_prefix}esel.txt
354 ${rc} ${output} = Run and Return RC and Output
355 ... grep -i ${signature_desc} ${error_log_file_path}
Sridevi Ramesh76f2dbc2018-01-17 09:52:10 -0600356 Should Be Equal ${rc} ${0}
Sridevi Ramesh3ed96342018-01-15 05:14:37 -0600357 Should Not Be Empty ${output}
358
359Inject Recoverable Error With Threshold Limit Through Host
360 [Documentation] Inject and verify recoverable error on processor through
361 ... host.
362 ... Test sequence:
363 ... 1. Enable Auto Reboot Setting
364 ... 2. Inject Error on processor/centaur
365 ... 3. Check If HOST is running.
366 ... 4. Verify error log entry & signature description.
367 ... 4. Verify & clear gard records.
368 [Arguments] ${fir} ${chip_address} ${threshold_limit}
369 ... ${signature_desc} ${log_prefix}
370 # Description of argument(s):
371 # fir FIR (Fault isolation register) value (e.g. 2011400).
372 # chip_address Chip address (e.g 2000000000000000).
373 # threshold_limit Threshold limit (e.g 1, 5, 32).
374 # signature_desc Error log signature description.
375 # log_prefix Log path prefix.
376
377 Set Auto Reboot 1
378 Inject Error Through HOST ${fir} ${chip_address} ${threshold_limit}
379 ... ${master_proc_chip}
380
381 Is Host Running
382 ${output}= Gard Operations On OS list
383 Should Contain ${output} No GARD
384 Verify Error Log Entry ${signature_desc} ${log_prefix}
385
386
387Inject Unrecoverable Error Through Host
388 [Documentation] Inject and verify recoverable error on processor through
389 ... host.
390 ... Test sequence:
391 ... 1. Enable Auto Reboot Setting
392 ... 2. Inject Error on processor/centaur
393 ... 3. Check If HOST is rebooted.
394 ... 4. Verify error log entry & signature description.
395 ... 4. Verify & clear gard records.
396 [Arguments] ${fir} ${chip_address} ${threshold_limit}
397 ... ${signature_desc} ${log_prefix}
398 # Description of argument(s):
399 # fir FIR (Fault isolation register) value (e.g. 2011400).
400 # chip_address Chip address (e.g 2000000000000000).
401 # threshold_limit Threshold limit (e.g 1, 5, 32).
402 # signature_desc Error Log signature description.
403 # (e.g 'mcs(n0p0c0) (MCFIR[0]) mc internal recoverable')
404 # log_prefix Log path prefix.
405
406 Set Auto Reboot 1
407 Inject Error Through HOST ${fir} ${chip_address} ${threshold_limit}
408 ... ${master_proc_chip}
409 Wait Until Keyword Succeeds 500 sec 20 sec Is Host Rebooted
410 Wait for OS
411 Verify And Clear Gard Records On HOST
412 Verify Error Log Entry ${signature_desc} ${log_prefix}
413
414Fetch FIR Address Translation Value
415 [Documentation] Fetch FIR address translation value through HOST.
416 [Arguments] ${fir} ${target_type}
417 # Description of argument(s):
418 # fir FIR (Fault isolation register) value (e.g. 2011400).
419 # core_id Core ID (e.g. 9).
420 # target_type Target type (e.g. 'EX', 'EQ', 'C').
421
422 Login To OS Host
423 Copy Address Translation Utils To HOST OS
424
425 # Fetch processor chip IDs.
426 ${proc_chip_id}= Get ProcChipId From OS Processor ${master_proc_chip}
427 # Example output:
428 # 00000000
429
430 ${core_ids}= Get Core IDs From OS ${proc_chip_id[-1]}
431 # Example output:
432 #./probe_cpus.sh | grep 'CHIP ID: 0' | cut -c21-22
433 # ['14', '15', '16', '17']
434
435 # Ignoring master core ID.
436 ${output}= Get Slice From List ${core_ids} 1
437 # Feth random non-master core ID.
438 ${core_ids_sub_list}= Evaluate random.sample(${core_ids}, 1) random
439 ${core_id}= Get From List ${core_ids_sub_list} 0
440 ${translated_fir_addr}= FIR Address Translation Through HOST
441 ... ${fir} ${core_id} ${target_type}
442
443 [Return] ${translated_fir_addr}
444
445RAS Test SetUp
446 [Documentation] Validates input parameters.
447
448 Should Not Be Empty
449 ... ${OS_HOST} msg=You must provide DNS name/IP of the OS host.
450 Should Not Be Empty
451 ... ${OS_USERNAME} msg=You must provide OS host user name.
452 Should Not Be Empty
453 ... ${OS_PASSWORD} msg=You must provide OS host user password.
454
455 # Boot to OS.
456 REST Power On quiet=${1}
457 # Adding delay after host bring up.
458 Sleep 60s
459
460RAS Suite Setup
461 [Documentation] Create RAS log directory to store all RAS test logs.
462
463 ${RAS_LOG_DIR_PATH}= Catenate ${EXECDIR}/RAS_logs/
464 Set Suite Variable ${RAS_LOG_DIR_PATH}
465 Set Suite Variable ${master_proc_chip} False
466
467 Create Directory ${RAS_LOG_DIR_PATH}
468 OperatingSystem.Directory Should Exist ${RAS_LOG_DIR_PATH}
469 Empty Directory ${RAS_LOG_DIR_PATH}
470
Sridevi Ramesh76f2dbc2018-01-17 09:52:10 -0600471 Should Not Be Empty ${ESEL_BIN_PATH}
472 Set Environment Variable PATH %{PATH}:${ESEL_BIN_PATH}
473
Sridevi Ramesh3ed96342018-01-15 05:14:37 -0600474 # Boot to Os.
475 REST Power On quiet=${1}
476
477RAS Suite Cleanup
478 [Documentation] Perform RAS suite cleanup and verify that host
479 ... boots after test suite run.
480
481 # Boot to OS.
482 REST Power On quiet=${1}
483 Delete Error Logs
484 Gard Operations On OS clear all