diff --git a/extended/test_host_ras.robot b/extended/test_host_ras.robot
index c002c63..8f6c0de 100755
--- a/extended/test_host_ras.robot
+++ b/extended/test_host_ras.robot
@@ -11,6 +11,8 @@
 
 Library             DateTime
 Library             OperatingSystem
+Library             random
+Library             Collections
 
 Suite Setup         RAS Suite Setup
 Test Setup          RAS Test Setup
@@ -44,7 +46,6 @@
     Inject Recoverable Error With Threshold Limit Through Host
     ...  ${value[0]}  ${value[1]}  32  ${value[2]}  ${err_log_path}
 
-
 Verify Unrecoverable Callout Handling For MCA
     [Documentation]  Verify unrecoverable callout handling for MCACALIFIR.
     [Tags]  Verify_Unrecoverable_Callout_Handling_For_MCA
@@ -76,6 +77,15 @@
     ...  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
 
 
+Verify Unrecoverable Callout Handling For NXDMAENG
+    [Documentation]  Verify unrecoverable callout handling for NXDMAENG.
+    [Tags]  Verify_Unrecoverable_Callout_Handling_For_NXDMAENG
+
+    ${value}=  Get From Dictionary  ${ERROR_INJECT_DICT}  NX_UE
+    ${err_log_path}=  Catenate  ${RAS_LOG_DIR_PATH}nxfir_ue
+    Inject Unrecoverable Error Through Host
+    ...  ${value[0]}  ${value[1]}  1  ${value[2]}  ${err_log_path}
+
 # CAPP accelerator (CXAFIR) related error injection.
 
 Verify Recoverable Callout Handling For CXA With Threshold 5
@@ -162,9 +172,9 @@
     ...              1. Boot To HOST
     ...              2. Clear any existing gard records
     ...              3. Inject Error on processor/centaur
-    [Arguments]      ${fri}  ${chip_address}  ${threshold_limit}
+    [Arguments]      ${fir}  ${chip_address}  ${threshold_limit}
     # Description of argument(s):
-    # fri                 FRI value (e.g. 2011400).
+    # fir                 FIR (Fault isolation register) value (e.g. 2011400).
     # chip_address        chip address (e.g 2000000000000000).
     # threshold_limit     Threshold limit (e.g 1, 5, 32).
 
@@ -173,13 +183,13 @@
     Gard Operations On OS  clear all
 
     # Fetch processor chip IDs.
-    ${chip_ids}=  Get ChipID From OS  Processor
+    ${chip_ids}=  Get ProcChipId From OS  Processor
     ${proc_ids}=  Split String  ${chip_ids}
     ${proc_id}=  Get From List  ${proc_ids}  1
 
     ${threshold_limit}=  Convert To Integer  ${threshold_limit}
     :FOR  ${i}  IN RANGE  ${threshold_limit}
-    \  Run Keyword  Putscom Through OS  ${proc_id}  ${fri}  ${chip_address}
+    \  Run Keyword  Putscom Operations On OS  ${proc_id}  ${fir}  ${chip_address}
     # Adding delay after each error injection.
     \  Sleep  10s
     # Adding delay to get error log after error injection.
@@ -188,7 +198,6 @@
 Verify And Clear Gard Records On HOST
     [Documentation]  Verify And Clear gard records on HOST.
 
-    Login To OS Host
     ${output}=  Gard Operations On OS  list
     Should Not Contain  ${output}  'No GARD entries to display'
     Gard Operations On OS  clear all
@@ -218,17 +227,17 @@
     ...              3. Check If HOST is running.
     ...              4. Verify error log entry & signature description.
     ...              4. Verify & clear gard records.
-    [Arguments]      ${fri}  ${chip_address}  ${threshold_limit}
+    [Arguments]      ${fir}  ${chip_address}  ${threshold_limit}
     ...              ${signature_desc}  ${log_prefix}
     # Description of argument(s):
-    # fri                 FRI(Fault isolation register) value (e.g. 2011400).
+    # fir                 FIR (Fault isolation register) value (e.g. 2011400).
     # chip_address        Chip address (e.g 2000000000000000).
     # threshold_limit     Threshold limit (e.g 1, 5, 32).
     # signature_desc      Error log signature description.
     # log_prefix          Log path prefix.
 
     Set Auto Reboot  1
-    Inject Error Through HOST  ${fri}  ${chip_address}  ${threshold_limit}
+    Inject Error Through HOST  ${fir}  ${chip_address}  ${threshold_limit}
     Is Host Running
     ${output}=  Gard Operations On OS  list
     Should Contain  ${output}  No GARD
@@ -244,10 +253,10 @@
     ...              3. Check If HOST is rebooted.
     ...              4. Verify error log entry & signature description.
     ...              4. Verify & clear gard records.
-    [Arguments]      ${fri}  ${chip_address}  ${threshold_limit}
+    [Arguments]      ${fir}  ${chip_address}  ${threshold_limit}
     ...              ${signature_desc}  ${log_prefix}
     # Description of argument(s):
-    # fri                 FRI value (e.g. 2011400).
+    # fir                 FIR (Fault isolation register) value (e.g. 2011400).
     # chip_address        Chip address (e.g 2000000000000000).
     # threshold_limit     Threshold limit (e.g 1, 5, 32).
     # signature_desc      Error Log signature description.
@@ -255,12 +264,34 @@
     # log_prefix          Log path prefix.
 
     Set Auto Reboot  1
-    Inject Error Through HOST  ${fri}  ${chip_address}  ${threshold_limit}
+    Inject Error Through HOST  ${fir}  ${chip_address}  ${threshold_limit}
     Wait Until Keyword Succeeds  500 sec  20 sec  Is Host Rebooted
     Wait for OS
     Verify And Clear Gard Records On HOST
     Verify Error Log Entry  ${signature_desc}  ${log_prefix}
 
+Fetch FIR Address Translation Value
+    [Documentation]  Fetch FIR address translation value through HOST.
+    [Arguments]  ${proc_chip_id}  ${fir}  ${target_type}
+    # Description of argument(s):
+    # proc_chip_id      Processor chip ID (e.g '0', '8').
+    # fir               FIR (Fault isolation register) value (e.g. 2011400).
+    # core_id           Core ID (e.g. 9).
+    # target_type       Target type (e.g. 'EX', 'EQ', 'C').
+
+    Login To OS Host
+    Copy Address Translation Utils To HOST OS
+
+    ${core_ids}=  Get Core IDs From OS  0
+    # Ignoring master core ID.
+    ${output}=  Get Slice From List  ${core_ids}  1
+    # Feth random non-master core ID.
+    ${core_ids_sub_list}=   Evaluate  random.sample(${core_ids}, 1)  random
+    ${core_id}=  Get From List  ${core_ids_sub_list}  0
+    ${translated_fir_addr}=  FIR Address Translation Through HOST
+    ...  ${fir}  ${core_id}  ${target_type}
+
+    [Return]  ${translated_fir_addr}
 
 RAS Test SetUp
     [Documentation]  Validates input parameters.
@@ -273,8 +304,9 @@
     ...  ${OS_PASSWORD}  msg=You must provide OS host user password.
 
     # Boot to OS.
-
     REST Power On  quiet=${1}
+    # Adding delay to after host bring up.
+    Sleep  60s
 
 RAS Suite Setup
     [Documentation]  Create RAS log directory to store all RAS test logs.
@@ -292,5 +324,4 @@
     # Boot to OS.
     REST Power On  quiet=${1}
     Delete Error Logs
-    Login To OS Host
     Gard Operations On OS  clear all
