1bba33901SGeorge Keishing*** Settings ***
2bba33901SGeorge KeishingDocumentation       This suite tests checkstop operations through HOST.
39c6ec28cSSridevi Ramesh
4bba33901SGeorge KeishingResource            ../../lib/openbmc_ffdc.robot
59c6ec28cSSridevi RameshResource            ../../lib/openbmc_ffdc_utils.robot
6bba33901SGeorge KeishingResource            ../../lib/openbmc_ffdc_methods.robot
71d85af0bSSridevi RameshResource            ../../openpower/ras/ras_utils.robot
84adb3f21SSridevi RameshVariables           ../../lib/ras/variables.py
94adb3f21SSridevi RameshVariables           ../../data/variables.py
10bba33901SGeorge Keishing
11bba33901SGeorge KeishingLibrary             DateTime
12bba33901SGeorge KeishingLibrary             OperatingSystem
13bba33901SGeorge KeishingLibrary             random
14bba33901SGeorge KeishingLibrary             Collections
15bba33901SGeorge Keishing
16bba33901SGeorge KeishingSuite Setup         RAS Suite Setup
17bba33901SGeorge KeishingTest Setup          RAS Test Setup
18bba33901SGeorge KeishingTest Teardown       FFDC On Test Case Fail
19bba33901SGeorge KeishingSuite Teardown      RAS Suite Cleanup
20bba33901SGeorge Keishing
21*6fb70d98SMatt FischerTest Tags          Host_RAS
229c6ec28cSSridevi Ramesh
23bba33901SGeorge Keishing*** Variables ***
24bba33901SGeorge Keishing${stack_mode}       normal
25bba33901SGeorge Keishing
26bba33901SGeorge Keishing*** Test Cases ***
27bba33901SGeorge Keishing# Memory channel (MCACALIFIR) related error injection.
28bba33901SGeorge Keishing
29bba33901SGeorge KeishingVerify Recoverable Callout Handling For MCA With Threshold 1
30bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for MCACALIFIR with
31bba33901SGeorge Keishing    ...              threshold 1.
32bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_MCA_With_Threshold_1
33bba33901SGeorge Keishing
34bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  MCACALIFIR_RECV1
35bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}mcacalfir_th1
361d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
371d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
38bba33901SGeorge Keishing
39bba33901SGeorge KeishingVerify Recoverable Callout Handling For MCA With Threshold 32
40bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for MCACALIFIR with
41bba33901SGeorge Keishing    ...              threshold 32.
42bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_MCA_With_Threshold_32
43bba33901SGeorge Keishing
44bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  MCACALIFIR_RECV32
45bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}mcacalfir_th32
461d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
471d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  32  ${value[2]}  ${err_log_path}
48bba33901SGeorge Keishing
495f9fee5bSSridevi RameshVerify Unrecoverable Callout Handling For MCA
505f9fee5bSSridevi Ramesh    [Documentation]  Verify unrecoverable callout handling for MCACALIFIR.
515f9fee5bSSridevi Ramesh    [Tags]  Verify_Unrecoverable_Callout_Handling_For_MCA
525f9fee5bSSridevi Ramesh
535f9fee5bSSridevi Ramesh    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  MCACALIFIR_UE
545f9fee5bSSridevi Ramesh    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}mcacalfir
559c6ec28cSSridevi Ramesh    Inject Unrecoverable Error  HOST
565f9fee5bSSridevi Ramesh    ...  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
575f9fee5bSSridevi Ramesh
58bba33901SGeorge Keishing#  Memory buffer (MCIFIR) related error injection.
59bba33901SGeorge Keishing
60bba33901SGeorge KeishingVerify Recoverable Callout Handling For MCI With Threshold 1
61bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for mci with
62bba33901SGeorge Keishing    ...              threshold 1.
63bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_MCI_With_Threshold_1
64bba33901SGeorge Keishing
654adb3f21SSridevi Ramesh    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  MCI_RECV1
66bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}mcifir_th1
671d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
681d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
69bba33901SGeorge Keishing
705f9fee5bSSridevi RameshVerify Unrecoverable Callout Handling For MCI
715f9fee5bSSridevi Ramesh    [Documentation]  Verify unrecoverable callout handling for mci.
725f9fee5bSSridevi Ramesh    [Tags]  Verify_Unrecoverable_Callout_Handling_For_MCI
735f9fee5bSSridevi Ramesh
744adb3f21SSridevi Ramesh    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  MCI_UE
755f9fee5bSSridevi Ramesh    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}mcifir
769c6ec28cSSridevi Ramesh    Inject Unrecoverable Error  HOST
775f9fee5bSSridevi Ramesh    ...  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
785f9fee5bSSridevi Ramesh
79bba33901SGeorge Keishing# CAPP accelerator (CXAFIR) related error injection.
80bba33901SGeorge Keishing
81bba33901SGeorge KeishingVerify Recoverable Callout Handling For CXA With Threshold 5
82bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for  CXA with
83bba33901SGeorge Keishing    ...              threshold 5.
84bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_CXA_With_Threshold_5
85bba33901SGeorge Keishing
86bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  CXA_RECV5
87bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}cxafir_th5
881d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
891d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  5  ${value[2]}  ${err_log_path}
90bba33901SGeorge Keishing
91bba33901SGeorge KeishingVerify Recoverable Callout Handling For CXA With Threshold 32
92bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for  CXA with
93bba33901SGeorge Keishing    ...              threshold 32.
94bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_CXA_With_Threshold_32
95bba33901SGeorge Keishing
96bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  CXA_RECV32
97bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}cxafir_th32
981d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
991d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  32  ${value[2]}  ${err_log_path}
100bba33901SGeorge Keishing
1015f9fee5bSSridevi RameshVerify Unrecoverable Callout Handling For CXA
1025f9fee5bSSridevi Ramesh    [Documentation]  Verify unrecoverable callout handling for CXAFIR.
1035f9fee5bSSridevi Ramesh    [Tags]  Verify_Unrecoverable_Callout_Handling_For_CXA
1045f9fee5bSSridevi Ramesh
1055f9fee5bSSridevi Ramesh    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  CXA_UE
1065f9fee5bSSridevi Ramesh    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}cxafir_ue
1079c6ec28cSSridevi Ramesh    Inject Unrecoverable Error  HOST
1085f9fee5bSSridevi Ramesh    ...  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
1095f9fee5bSSridevi Ramesh
110bba33901SGeorge Keishing
111bba33901SGeorge Keishing#  OBUSFIR  related error injection.
112bba33901SGeorge Keishing
113bba33901SGeorge KeishingVerify Recoverable Callout Handling For OBUS With Threshold 32
114bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for  OBUS with
115bba33901SGeorge Keishing    ...              threshold 32.
116bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_OBUS_With_Threshold_32
117bba33901SGeorge Keishing
118bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  OBUS_RECV32
119bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}obusfir_th32
1201d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
1211d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  32  ${value[2]}  ${err_log_path}
122bba33901SGeorge Keishing
123bba33901SGeorge Keishing# Nvidia graphics processing units (NPU0FIR) related error injection.
124bba33901SGeorge Keishing
125bba33901SGeorge KeishingVerify Recoverable Callout Handling For NPU0 With Threshold 32
126bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for  NPU0 with
127bba33901SGeorge Keishing    ...              threshold 32.
128bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_NPU0_With_Threshold_32
129bba33901SGeorge Keishing
130bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  NPU0_RECV32
131bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}npu0fir_th32
1321d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
1331d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  32  ${value[2]}  ${err_log_path}
134bba33901SGeorge Keishing
135bba33901SGeorge Keishing#  Nest accelerator NXDMAENGFIR related error injection.
136bba33901SGeorge Keishing
137bba33901SGeorge KeishingVerify Recoverable Callout Handling For NXDMAENG With Threshold 1
138bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for  NXDMAENG with
139bba33901SGeorge Keishing    ...              threshold 1.
140bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_NXDMAENG_With_Threshold_1
141bba33901SGeorge Keishing
142bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  NX_RECV1
143bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}nxfir_th1
1441d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
1451d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
146bba33901SGeorge Keishing
147bba33901SGeorge Keishing
148bba33901SGeorge KeishingVerify Recoverable Callout Handling For NXDMAENG With Threshold 32
149bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for  NXDMAENG with
150bba33901SGeorge Keishing    ...              threshold 32.
151bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_NXDMAENG_With_Threshold_32
152bba33901SGeorge Keishing
153bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  NX_RECV32
154bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}nxfir_th32
1551d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
1561d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  32  ${value[2]}  ${err_log_path}
157bba33901SGeorge Keishing
158bba33901SGeorge Keishing#  L2FIR related error injection.
159bba33901SGeorge Keishing
160bba33901SGeorge KeishingVerify Recoverable Callout Handling For L2FIR With Threshold 1
161bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for L2FIR with
162bba33901SGeorge Keishing    ...              threshold 1.
163bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_L2FIR_With_Threshold_1
164bba33901SGeorge Keishing
165bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  L2FIR_RECV1
166bba33901SGeorge Keishing    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
167bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}l2fir_th1
1681d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
1691d85af0bSSridevi Ramesh    ...  HOST  ${translated_fir}  ${value[1]}  1  ${value[2]}  ${err_log_path}
170bba33901SGeorge Keishing
171bba33901SGeorge KeishingVerify Recoverable Callout Handling For L2FIR With Threshold 32
172bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for L2FIR with
173bba33901SGeorge Keishing    ...              threshold 32.
174bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_L2FIR_With_Threshold_32
175bba33901SGeorge Keishing
176bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  L2FIR_RECV32
177bba33901SGeorge Keishing    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
178bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}l2fir_th32
1791d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
1801d85af0bSSridevi Ramesh    ...  HOST  ${translated_fir}  ${value[1]}  32  ${value[2]}  ${err_log_path}
181bba33901SGeorge Keishing
1825f9fee5bSSridevi RameshVerify Unrecoverable Callout Handling For L2FIR
1835f9fee5bSSridevi Ramesh    [Documentation]  Verify unrecoverable callout handling for L2FIR.
1845f9fee5bSSridevi Ramesh    [Tags]  Verify_Unrecoverable_Callout_Handling_For_L2FIR
1855f9fee5bSSridevi Ramesh
1865f9fee5bSSridevi Ramesh    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  L2FIR_UE
1875f9fee5bSSridevi Ramesh    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
1885f9fee5bSSridevi Ramesh    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}l2fir_ue
1899c6ec28cSSridevi Ramesh    Inject Unrecoverable Error  HOST
1905f9fee5bSSridevi Ramesh    ...  ${translated_fir}  ${value[1]}  1  ${value[2]}  ${err_log_path}
1915f9fee5bSSridevi Ramesh
192bba33901SGeorge Keishing
193bba33901SGeorge Keishing#  L3FIR related error injection.
194bba33901SGeorge Keishing
195bba33901SGeorge KeishingVerify Recoverable Callout Handling For L3FIR With Threshold 1
196bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for L3FIR with
197bba33901SGeorge Keishing    ...              threshold 1.
198bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_L3FIR_With_Threshold_1
199bba33901SGeorge Keishing
200bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  L3FIR_RECV1
201bba33901SGeorge Keishing    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
202bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}l3fir_th1
2031d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
2041d85af0bSSridevi Ramesh    ...  HOST  ${translated_fir}  ${value[1]}  1  ${value[2]}  ${err_log_path}
205bba33901SGeorge Keishing
206bba33901SGeorge KeishingVerify Recoverable Callout Handling For L3FIR With Threshold 32
207bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for L3FIR with
208bba33901SGeorge Keishing    ...              threshold 32.
209bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_L3FIR_With_Threshold_32
210bba33901SGeorge Keishing
211bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  L3FIR_RECV32
212bba33901SGeorge Keishing    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
213bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}l3fir_th32
2141d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
2151d85af0bSSridevi Ramesh    ...  HOST  ${translated_fir}  ${value[1]}  32  ${value[2]}  ${err_log_path}
216bba33901SGeorge Keishing
2175f9fee5bSSridevi RameshVerify Unrecoverable Callout Handling For L3FIR
2185f9fee5bSSridevi Ramesh    [Documentation]  Verify unrecoverable callout handling for L3FIR.
2195f9fee5bSSridevi Ramesh    [Tags]  Verify_Unrecoverable_Callout_Handling_For_L3FIR
2205f9fee5bSSridevi Ramesh
2215f9fee5bSSridevi Ramesh    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  L3FIR_UE
2225f9fee5bSSridevi Ramesh    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
2235f9fee5bSSridevi Ramesh    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}l3fir_ue
2249c6ec28cSSridevi Ramesh    Inject Unrecoverable Error  HOST
2255f9fee5bSSridevi Ramesh    ...  ${translated_fir}  ${value[1]}  1  ${value[2]}  ${err_log_path}
2265f9fee5bSSridevi Ramesh
227bba33901SGeorge Keishing
228bba33901SGeorge Keishing# On chip controller (OCCFIR) related error injection.
229bba33901SGeorge Keishing
230bba33901SGeorge KeishingVerify Recoverable Callout Handling For OCC With Threshold 1
231bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for OCCFIR with
232bba33901SGeorge Keishing    ...              threshold 1.
233bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_OCC_With_Threshold_1
234bba33901SGeorge Keishing
235bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  OCCFIR_RECV1
236bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}occfir_th1
2371d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
2381d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
239bba33901SGeorge Keishing
240bba33901SGeorge Keishing# Core management engine (CMEFIR) related error injection.
241bba33901SGeorge Keishing
242bba33901SGeorge KeishingVerify Recoverable Callout Handling For CMEFIR With Threshold 1
243bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for CMEFIR with
244bba33901SGeorge Keishing    ...              threshold 1.
245bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_CMEFIR_With_Threshold_1
246bba33901SGeorge Keishing
247bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  CMEFIR_RECV1
248bba33901SGeorge Keishing    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
249bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}cmefir_th1
2501d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
2511d85af0bSSridevi Ramesh    ...  HOST  ${translated_fir}  ${value[1]}  1  ${value[2]}  ${err_log_path}
252bba33901SGeorge Keishing
253bba33901SGeorge Keishing# Nest control vunit (NCUFIR) related error injection.
254bba33901SGeorge Keishing
255bba33901SGeorge KeishingVerify Recoverable Callout Handling For NCUFIR With Threshold 1
256bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for NCUFIR with
257bba33901SGeorge Keishing    ...              threshold 1.
258bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_NCUFIR_With_Threshold_1
259bba33901SGeorge Keishing
260bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  NCUFIR_RECV1
261bba33901SGeorge Keishing    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
262bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}ncufir_th1
2631d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
2641d85af0bSSridevi Ramesh    ...  HOST  ${translated_fir}  ${value[1]}  1  ${value[2]}  ${err_log_path}
265bba33901SGeorge Keishing
2665f9fee5bSSridevi RameshVerify Unrecoverable Callout Handling For NCUFIR
2675f9fee5bSSridevi Ramesh    [Documentation]  Verify unrecoverable callout handling for NCUFIR.
2685f9fee5bSSridevi Ramesh    [Tags]  Verify_Unrecoverable_Callout_Handling_For_NCUFIR
2695f9fee5bSSridevi Ramesh
2705f9fee5bSSridevi Ramesh    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  NCUFIR_UE
2715f9fee5bSSridevi Ramesh    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
2725f9fee5bSSridevi Ramesh    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}ncufir_ue
2739c6ec28cSSridevi Ramesh    Inject Unrecoverable Error  HOST
2745f9fee5bSSridevi Ramesh    ...  ${translated_fir}  ${value[1]}  1  ${value[2]}  ${err_log_path}
2755f9fee5bSSridevi Ramesh
276bba33901SGeorge Keishing
277bba33901SGeorge Keishing# Core FIR related error injection.
278bba33901SGeorge Keishing
279bba33901SGeorge KeishingVerify Recoverable Callout Handling For CoreFIR With Threshold 5
280bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for CoreFIR with
281bba33901SGeorge Keishing    ...              threshold 5.
282bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_CoreFIR_With_Threshold_5
283bba33901SGeorge Keishing
284bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  COREFIR_RECV5
285bba33901SGeorge Keishing    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
286bba33901SGeorge Keishing    Disable CPU States Through HOST
287bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}corefir_th5
2881d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
2891d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  5  ${value[2]}  ${err_log_path}
290bba33901SGeorge Keishing
291bba33901SGeorge KeishingVerify Recoverable Callout Handling For CoreFIR With Threshold 1
292bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for CoreFIR with
293bba33901SGeorge Keishing    ...              threshold 1.
2944203fad2SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_CoreFIR_With_Threshold_1
295bba33901SGeorge Keishing
296bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  COREFIR_RECV1
297bba33901SGeorge Keishing    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
298bba33901SGeorge Keishing    Disable CPU States Through HOST
299bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}corefir_th1
3001d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
3011d85af0bSSridevi Ramesh    ...  HOST  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
302bba33901SGeorge Keishing
3035f9fee5bSSridevi RameshVerify Unrecoverable Callout Handling For CoreFIR
3045f9fee5bSSridevi Ramesh    [Documentation]  Verify unrecoverable callout handling for CoreFIR.
3055f9fee5bSSridevi Ramesh    [Tags]  Verify_Unrecoverable_Callout_Handling_For_CoreFIR
3065f9fee5bSSridevi Ramesh
3075f9fee5bSSridevi Ramesh    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  COREFIR_UE
3085f9fee5bSSridevi Ramesh    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EX
3095f9fee5bSSridevi Ramesh    Disable CPU States Through HOST
3105f9fee5bSSridevi Ramesh    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}corefir_ue
3119c6ec28cSSridevi Ramesh    Inject Unrecoverable Error  HOST
3125f9fee5bSSridevi Ramesh    ...  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
3135f9fee5bSSridevi Ramesh
314bba33901SGeorge KeishingVerify Recoverable Callout Handling For EQFIR With Threshold 32
315bba33901SGeorge Keishing    [Documentation]  Verify recoverable callout handling for L3FIR with
316bba33901SGeorge Keishing    ...              threshold 32.
317bba33901SGeorge Keishing    [Tags]  Verify_Recoverable_Callout_Handling_For_EQFIR_With_Threshold_32
318bba33901SGeorge Keishing
319bba33901SGeorge Keishing    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  EQFIR_RECV32
320bba33901SGeorge Keishing    ${translated_fir}=  Fetch FIR Address Translation Value  ${value[0]}  EQ
321bba33901SGeorge Keishing    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}eqfir_th32
3221d85af0bSSridevi Ramesh    Inject Recoverable Error With Threshold Limit
3231d85af0bSSridevi Ramesh    ...  HOST  ${translated_fir}  ${value[1]}  32  ${value[2]}  ${err_log_path}
324