diff options
author | Thi Tran <thi@us.ibm.com> | 2014-06-23 10:11:26 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2014-06-23 18:00:24 -0500 |
commit | 2d37406c25d8aa6b66815e8b334a21bc5f9b0c6f (patch) | |
tree | b9fa17fab41cf554678f480626fdbc85b8acf8ca /src/usr/hwpf/hwp/dram_training | |
parent | 2d92c4fd35a9e373d0b7689fa3bbdd215aa9a41a (diff) | |
download | talos-hostboot-2d37406c25d8aa6b66815e8b334a21bc5f9b0c6f.tar.gz talos-hostboot-2d37406c25d8aa6b66815e8b334a21bc5f9b0c6f.zip |
SW263495: No log containing FFDC for draminit training fails
Change-Id: I3430008812ce5f634d12849aa509f1f33d425cef
CQ:SW263495
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/11751
Tested-by: Jenkins Server
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf/hwp/dram_training')
-rw-r--r-- | src/usr/hwpf/hwp/dram_training/mss_draminit_training/memory_mss_draminit_training.xml | 227 | ||||
-rw-r--r-- | src/usr/hwpf/hwp/dram_training/mss_draminit_training/mss_draminit_training.C | 72 |
2 files changed, 291 insertions, 8 deletions
diff --git a/src/usr/hwpf/hwp/dram_training/mss_draminit_training/memory_mss_draminit_training.xml b/src/usr/hwpf/hwp/dram_training/mss_draminit_training/memory_mss_draminit_training.xml index c54d1e761..53fc9b395 100644 --- a/src/usr/hwpf/hwp/dram_training/mss_draminit_training/memory_mss_draminit_training.xml +++ b/src/usr/hwpf/hwp/dram_training/mss_draminit_training/memory_mss_draminit_training.xml @@ -21,9 +21,54 @@ <!-- --> <!-- IBM_PROLOG_END_TAG --> <hwpErrors> -<!-- $Id: memory_mss_draminit_training.xml,v 1.3 2014/03/29 19:48:36 jdsloat Exp $ --> +<!-- $Id: memory_mss_draminit_training.xml,v 1.4 2014/06/09 22:44:56 jdsloat Exp $ --> <!-- For file ../../ipl/fapi/mss_draminit_training.C --> + +<registerFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P0_0_0x8000007c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P0_1_0x8000047c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P0_2_0x8000087c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P0_3_0x80000c7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P0_4_0x8000107c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P0_0_0x8000017c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P0_1_0x8000057c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P0_2_0x8000097c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P0_3_0x80000d7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P0_4_0x8000117c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P0_0_0x8000027c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P0_1_0x8000067c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P0_2_0x80000a7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P0_3_0x80000e7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P0_4_0x8000127c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P0_0_0x8000037c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P0_1_0x8000077c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P0_2_0x80000b7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P0_3_0x80000f7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P0_4_0x8000137c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P1_0_0x8001007c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P1_1_0x8001047c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P1_2_0x8001087c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P1_3_0x80010c7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP0_P1_4_0x8001107c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P1_0_0x8001017c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P1_1_0x8001057c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P1_2_0x8001097c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P1_3_0x80010d7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP1_P1_4_0x8001117c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P1_0_0x8001027c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P1_1_0x8001067c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P1_2_0x80010a7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P1_3_0x80010e7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP2_P1_4_0x8001127c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P1_0_0x8001037c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P1_1_0x8001077c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P1_2_0x80010b7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P1_3_0x80010f7c0301143F</scomRegister> + <scomRegister>DPHY01_DDRPHY_DP18_DATA_BIT_DISABLE0_RP3_P1_4_0x8001137c0301143F</scomRegister> +</registerFfdc> + <hwpError> <rc>RC_MSS_DRAMINIT_TRAINING_DRAM_WIDTH_INPUT_ERROR_SETBBM</rc> <description>Unknown Value for DRAM_WIDTH being used.</description> @@ -94,4 +139,184 @@ </deconfigure> </hwpError> +<hwpError> + <rc>RC_MSS_DRAMINIT_TRAINING_WR_LVL_ERROR</rc> + <description>Write Leveling has returned a fail for a given position within this calibration.</description> + <ffdc>MBA_POSITION</ffdc> + <ffdc>PORT_POSITION</ffdc> + <ffdc>RANKGROUP_POSITION</ffdc> + <collectRegisterFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <target>TARGET_MBA_ERROR</target> + </collectRegisterFfdc> + <callout> + <target>TARGET_MBA_ERROR</target> + <priority>LOW</priority> + </callout> + <callout> + <procedure>CODE</procedure> + <priority>HIGH</priority> + </callout> +</hwpError> + +<hwpError> + <rc>RC_MSS_DRAMINIT_TRAINING_DQS_ALIGNMENT_ERROR</rc> + <description>DQS Alignment has returned a fail for a given position within this calibration.</description> + <ffdc>MBA_POSITION</ffdc> + <ffdc>PORT_POSITION</ffdc> + <ffdc>RANKGROUP_POSITION</ffdc> + <collectRegisterFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <target>TARGET_MBA_ERROR</target> + </collectRegisterFfdc> + <callout> + <target>TARGET_MBA_ERROR</target> + <priority>LOW</priority> + </callout> + <callout> + <procedure>CODE</procedure> + <priority>HIGH</priority> + </callout> +</hwpError> + +<hwpError> + <rc>RC_MSS_DRAMINIT_TRAINING_RD_CLK_SYS_CLK_ALIGNMENT_ERROR</rc> + <description>Read CLK to SYS CLK Alignment has returned a fail for a given position within this calibration.</description> + <ffdc>MBA_POSITION</ffdc> + <ffdc>PORT_POSITION</ffdc> + <ffdc>RANKGROUP_POSITION</ffdc> + <collectRegisterFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <target>TARGET_MBA_ERROR</target> + </collectRegisterFfdc> + <callout> + <target>TARGET_MBA_ERROR</target> + <priority>LOW</priority> + </callout> + <callout> + <procedure>CODE</procedure> + <priority>HIGH</priority> + </callout> +</hwpError> + +<hwpError> + <rc>RC_MSS_DRAMINIT_TRAINING_RD_CENTERING_ERROR</rc> + <description>Read Centering has returned a fail for a given position within this calibration.</description> + <ffdc>MBA_POSITION</ffdc> + <ffdc>PORT_POSITION</ffdc> + <ffdc>RANKGROUP_POSITION</ffdc> + <collectRegisterFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <target>TARGET_MBA_ERROR</target> + </collectRegisterFfdc> + <callout> + <target>TARGET_MBA_ERROR</target> + <priority>LOW</priority> + </callout> + <callout> + <procedure>CODE</procedure> + <priority>HIGH</priority> + </callout> +</hwpError> + +<hwpError> + <rc>RC_MSS_DRAMINIT_TRAINING_WR_CENTERING_ERROR</rc> + <description>Write centering has returned a fail for a given position within this calibration.</description> + <ffdc>MBA_POSITION</ffdc> + <ffdc>PORT_POSITION</ffdc> + <ffdc>RANKGROUP_POSITION</ffdc> + <collectRegisterFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <target>TARGET_MBA_ERROR</target> + </collectRegisterFfdc> + <callout> + <target>TARGET_MBA_ERROR</target> + <priority>LOW</priority> + </callout> + <callout> + <procedure>CODE</procedure> + <priority>HIGH</priority> + </callout> +</hwpError> + +<hwpError> + <rc>RC_MSS_DRAMINIT_TRAINING_COURSE_RD_CENTERING_ERROR</rc> + <description>Course Read Centering has returned a fail for a given position within this calibration.</description> + <ffdc>MBA_POSITION</ffdc> + <ffdc>PORT_POSITION</ffdc> + <ffdc>RANKGROUP_POSITION</ffdc> + <collectRegisterFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <target>TARGET_MBA_ERROR</target> + </collectRegisterFfdc> + <callout> + <target>TARGET_MBA_ERROR</target> + <priority>LOW</priority> + </callout> + <callout> + <procedure>CODE</procedure> + <priority>HIGH</priority> + </callout> +</hwpError> + +<hwpError> + <rc>RC_MSS_DRAMINIT_TRAINING_CUSTOM_PATTERN_RD_CENTERING_ERROR</rc> + <description>Custom Pattern Read Centering has returned a fail for a given position within this calibration.</description> + <ffdc>MBA_POSITION</ffdc> + <ffdc>PORT_POSITION</ffdc> + <ffdc>RANKGROUP_POSITION</ffdc> + <collectRegisterFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <target>TARGET_MBA_ERROR</target> + </collectRegisterFfdc> + <callout> + <target>TARGET_MBA_ERROR</target> + <priority>LOW</priority> + </callout> + <callout> + <procedure>CODE</procedure> + <priority>HIGH</priority> + </callout> +</hwpError> + +<hwpError> + <rc>RC_MSS_DRAMINIT_TRAINING_CUSTOM_PATTERN_WR_CENTERING_ERROR</rc> + <description>Custom Pattern Write Centering has returned a fail for a given position within this calibration.</description> + <ffdc>MBA_POSITION</ffdc> + <ffdc>PORT_POSITION</ffdc> + <ffdc>RANKGROUP_POSITION</ffdc> + <collectRegisterFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <target>TARGET_MBA_ERROR</target> + </collectRegisterFfdc> + <callout> + <target>TARGET_MBA_ERROR</target> + <priority>LOW</priority> + </callout> + <callout> + <procedure>CODE</procedure> + <priority>HIGH</priority> + </callout> +</hwpError> + +<hwpError> + <rc>RC_MSS_DRAMINIT_TRAINING_DIGITAL_EYE_ERROR</rc> + <description>Digital Eye has returned a fail for a given position within this calibration.</description> + <ffdc>MBA_POSITION</ffdc> + <ffdc>PORT_POSITION</ffdc> + <ffdc>RANKGROUP_POSITION</ffdc> + <collectRegisterFfdc> + <id>REG_FFDC_MSS_DRAMINIT_TRAINING_FAILURE_DISABLE_REGS</id> + <target>TARGET_MBA_ERROR</target> + </collectRegisterFfdc> + <callout> + <target>TARGET_MBA_ERROR</target> + <priority>LOW</priority> + </callout> + <callout> + <procedure>CODE</procedure> + <priority>HIGH</priority> + </callout> +</hwpError> + </hwpErrors> diff --git a/src/usr/hwpf/hwp/dram_training/mss_draminit_training/mss_draminit_training.C b/src/usr/hwpf/hwp/dram_training/mss_draminit_training/mss_draminit_training.C index 76deb1215..1ef88fd84 100644 --- a/src/usr/hwpf/hwp/dram_training/mss_draminit_training/mss_draminit_training.C +++ b/src/usr/hwpf/hwp/dram_training/mss_draminit_training/mss_draminit_training.C @@ -20,8 +20,7 @@ /* permissions and limitations under the License. */ /* */ /* IBM_PROLOG_END_TAG */ - -// $Id: mss_draminit_training.C,v 1.85 2014/04/23 18:23:51 jdsloat Exp $ +// $Id: mss_draminit_training.C,v 1.87 2014/06/09 22:46:59 jdsloat Exp $ //------------------------------------------------------------------------------ // Don't forget to create CVS comments when you check in your changes! //------------------------------------------------------------------------------ @@ -29,6 +28,7 @@ //------------------------------------------------------------------------------ // Version:| Author: | Date: | Comment: //---------|----------|---------|------------------------------------------------ +// 1.87 | jdsloat |09-JUN-14| Fixed log numbering... Added additonal error logs for more debug ability in a training error situation. // 1.85 | jdsloat |23-APL-14| Fixed attribute variable l_disable1_rdclk_fixed unitialized error in SW25701/v1.83 // 1.84 | jdsloat |23-APL-14| Fixed FAPI_ERR message within v1.83, mss_set_bbm_regs // 1.83 | jdsloat |18-APL-14| SW25701 Workaround - mss_set_bbm_regs - x4s will not mask out RDCLKs on Bad Bits to avoid translation issues @@ -267,11 +267,11 @@ ReturnCode mss_draminit_training(Target& i_target) fapi::ReturnCode l_rc; - l_rc = mss_reset_delay_values(i_target); - if (l_rc) - { - return l_rc; - } + //l_rc = mss_reset_delay_values(i_target); + //if (l_rc) + //{ + // return l_rc; + //} l_rc = mss_draminit_training_cloned(i_target); if (l_rc) @@ -936,6 +936,10 @@ ReturnCode mss_check_error_status( Target& i_target, ecmdDataBufferBase cal_error_buffer_64(64); ReturnCode rc; + uint8_t MBA_POSITION; + uint8_t PORT_POSITION; + uint8_t RANKGROUP_POSITION; + if(i_port == 0) { rc = fapiGetScom(i_target, DPHY01_DDRPHY_PC_INIT_CAL_ERROR_P0_0x8000C0180301143F, cal_error_buffer_64); @@ -954,38 +958,92 @@ ReturnCode mss_check_error_status( Target& i_target, if(cal_error_buffer_64.isBitSet(48)) { FAPI_ERR( "+++ Write leveling error occured on %s port: %d rank group: %d! +++", i_target.toEcmdString(), i_port, i_group); + const fapi::Target & TARGET_MBA_ERROR = i_target; + MBA_POSITION = i_mbaPosition; + PORT_POSITION = i_port; + RANKGROUP_POSITION = i_group; + FAPI_SET_HWP_ERROR(rc, RC_MSS_DRAMINIT_TRAINING_WR_LVL_ERROR); + fapiLogError(rc, FAPI_ERRL_SEV_RECOVERED); } if(cal_error_buffer_64.isBitSet(50)) { FAPI_ERR( "+++ DQS Alignment error occured on %s port: %d rank group: %d! +++", i_target.toEcmdString(), i_port, i_group); + const fapi::Target & TARGET_MBA_ERROR = i_target; + MBA_POSITION = i_mbaPosition; + PORT_POSITION = i_port; + RANKGROUP_POSITION = i_group; + FAPI_SET_HWP_ERROR(rc, RC_MSS_DRAMINIT_TRAINING_DQS_ALIGNMENT_ERROR); + fapiLogError(rc, FAPI_ERRL_SEV_RECOVERED); } if(cal_error_buffer_64.isBitSet(51)) { FAPI_ERR( "+++ RDCLK to SysClk alignment error occured on %s port: %d rank group: %d! +++", i_target.toEcmdString(), i_port, i_group); + const fapi::Target & TARGET_MBA_ERROR = i_target; + MBA_POSITION = i_mbaPosition; + PORT_POSITION = i_port; + RANKGROUP_POSITION = i_group; + FAPI_SET_HWP_ERROR(rc, RC_MSS_DRAMINIT_TRAINING_RD_CLK_SYS_CLK_ALIGNMENT_ERROR); + fapiLogError(rc, FAPI_ERRL_SEV_RECOVERED); } if(cal_error_buffer_64.isBitSet(52)) { FAPI_ERR( "+++ Read centering error occured on %s port: %d rank group: %d! +++", i_target.toEcmdString(), i_port, i_group); + const fapi::Target & TARGET_MBA_ERROR = i_target; + MBA_POSITION = i_mbaPosition; + PORT_POSITION = i_port; + RANKGROUP_POSITION = i_group; + FAPI_SET_HWP_ERROR(rc, RC_MSS_DRAMINIT_TRAINING_RD_CENTERING_ERROR); + fapiLogError(rc, FAPI_ERRL_SEV_RECOVERED); } if(cal_error_buffer_64.isBitSet(53)) { FAPI_ERR( "+++ Write centering error occured on %s port: %d rank group: %d! +++", i_target.toEcmdString(), i_port, i_group); + const fapi::Target & TARGET_MBA_ERROR = i_target; + MBA_POSITION = i_mbaPosition; + PORT_POSITION = i_port; + RANKGROUP_POSITION = i_group; + FAPI_SET_HWP_ERROR(rc, RC_MSS_DRAMINIT_TRAINING_WR_CENTERING_ERROR); + fapiLogError(rc, FAPI_ERRL_SEV_RECOVERED); } if(cal_error_buffer_64.isBitSet(55)) { FAPI_ERR( "+++ Coarse read centering error occured on %s port: %d rank group: %d! +++", i_target.toEcmdString(), i_port, i_group); + const fapi::Target & TARGET_MBA_ERROR = i_target; + MBA_POSITION = i_mbaPosition; + PORT_POSITION = i_port; + RANKGROUP_POSITION = i_group; + FAPI_SET_HWP_ERROR(rc, RC_MSS_DRAMINIT_TRAINING_COURSE_RD_CENTERING_ERROR); + fapiLogError(rc, FAPI_ERRL_SEV_RECOVERED); } if(cal_error_buffer_64.isBitSet(56)) { FAPI_ERR( "+++ Custom pattern read centering error occured on %s port: %d rank group: %d! +++", i_target.toEcmdString(), i_port, i_group); + const fapi::Target & TARGET_MBA_ERROR = i_target; + MBA_POSITION = i_mbaPosition; + PORT_POSITION = i_port; + RANKGROUP_POSITION = i_group; + FAPI_SET_HWP_ERROR(rc, RC_MSS_DRAMINIT_TRAINING_CUSTOM_PATTERN_RD_CENTERING_ERROR); + fapiLogError(rc, FAPI_ERRL_SEV_RECOVERED); } if(cal_error_buffer_64.isBitSet(57)) { FAPI_ERR( "+++ Custom pattern write centering error occured on %s port: %d rank group: %d! +++", i_target.toEcmdString(), i_port, i_group); + const fapi::Target & TARGET_MBA_ERROR = i_target; + MBA_POSITION = i_mbaPosition; + PORT_POSITION = i_port; + RANKGROUP_POSITION = i_group; + FAPI_SET_HWP_ERROR(rc, RC_MSS_DRAMINIT_TRAINING_CUSTOM_PATTERN_WR_CENTERING_ERROR); + fapiLogError(rc, FAPI_ERRL_SEV_RECOVERED); } if(cal_error_buffer_64.isBitSet(58)) { FAPI_ERR( "+++ Digital eye error occured on %s port: %d rank group: %d! +++", i_target.toEcmdString(), i_port, i_group); + const fapi::Target & TARGET_MBA_ERROR = i_target; + MBA_POSITION = i_mbaPosition; + PORT_POSITION = i_port; + RANKGROUP_POSITION = i_group; + FAPI_SET_HWP_ERROR(rc, RC_MSS_DRAMINIT_TRAINING_DIGITAL_EYE_ERROR); + fapiLogError(rc, FAPI_ERRL_SEV_RECOVERED); } } else |