diff options
author | Richard J. Knight <rjknight@us.ibm.com> | 2013-09-13 14:59:14 -0500 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2013-10-10 12:02:04 -0500 |
commit | ae5f2aa9194b6f26893bfb21b1fc115d3cae0dcb (patch) | |
tree | 01d6128e1c9f8c8aa3b412160d08af827093a7d2 /src/usr/hwpf/hwp/fapiTestHwpError.C | |
parent | 95bf47c534737019f956fbcca2c622c98dacc266 (diff) | |
download | talos-hostboot-ae5f2aa9194b6f26893bfb21b1fc115d3cae0dcb.tar.gz talos-hostboot-ae5f2aa9194b6f26893bfb21b1fc115d3cae0dcb.zip |
HWPF Error XML: Allow callout/deconfigure/gard of DIMM(s) related to MBA
Change-Id: Ibd067f73cf381b18eab5e48cf1f72f961450a1f2
RTC:81669
Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/6208
Tested-by: Jenkins Server
Reviewed-by: MIKE J. JONES <mjjones@us.ibm.com>
Reviewed-by: Brian H. Horton <brianh@linux.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr/hwpf/hwp/fapiTestHwpError.C')
-rw-r--r-- | src/usr/hwpf/hwp/fapiTestHwpError.C | 67 |
1 files changed, 63 insertions, 4 deletions
diff --git a/src/usr/hwpf/hwp/fapiTestHwpError.C b/src/usr/hwpf/hwp/fapiTestHwpError.C index b7e1119c1..e5df32461 100644 --- a/src/usr/hwpf/hwp/fapiTestHwpError.C +++ b/src/usr/hwpf/hwp/fapiTestHwpError.C @@ -36,6 +36,8 @@ * mjjones 10/06/2011 Major updates due to new * ErrorInfo design * mjjones 10/17/2011 Moved AnalyzeError to new file + * rjknight 09/28/2013 Added callout test for MBA + * dimm callout support * * * HWP_IGNORE_VERSION_CHECK @@ -49,7 +51,8 @@ extern "C" //****************************************************************************** // hwpTestError function //****************************************************************************** -fapi::ReturnCode hwpTestError(const fapi::Target & i_target) +fapi::ReturnCode hwpTestError(const fapi::Target & i_procTarget, + const fapi::Target & i_mbaTarget ) { FAPI_INF("hwpTestError: Start HWP"); @@ -62,13 +65,13 @@ fapi::ReturnCode hwpTestError(const fapi::Target & i_target) l_buf.setBit(64); FAPI_ERR("hwpTestError: Generating RC_TEST_ERROR_A"); - const fapi::Target & UNIT_TEST_FFDC_MASTER_CHIP_TARGET = i_target; + const fapi::Target & UNIT_TEST_FFDC_MASTER_CHIP_TARGET = i_procTarget; uint32_t & UNIT_TEST_FFDC_DATA_INTEGER = l_ffdc; ecmdDataBufferBase & UNIT_TEST_FFDC_DATA_BUF = l_buf; FAPI_SET_HWP_ERROR(l_rc, RC_TEST_ERROR_A); // Log the error - fapiLogError(l_rc, fapi::FAPI_ERRL_SEV_PREDICTIVE); + fapiLogError(l_rc, fapi::FAPI_ERRL_SEV_PREDICTIVE, true); // Check that the return code is set to success if (!l_rc.ok()) @@ -77,7 +80,63 @@ fapi::ReturnCode hwpTestError(const fapi::Target & i_target) "expected success", static_cast<uint32_t>(l_rc)); } - // Generate the same error again + + FAPI_INF("Test calling out all DIMMs based on mba port 0"); + + // all dimms on a specific port + FAPI_ERR("Generating RC_TEST_DIMM_CALLOUT_MBA_A"); + + const fapi::Target & UNIT_TEST_MBA_TARGET = i_mbaTarget; + uint8_t UNIT_TEST_MBA_PORT_NUMBER = 0x0; + + FAPI_SET_HWP_ERROR(l_rc, RC_TEST_DIMM_CALLOUT_MBA_A); + + fapiLogError( l_rc,fapi::FAPI_ERRL_SEV_PREDICTIVE, true ); + + // specific dimm on a specific port + FAPI_INF("Test calling out DIMM3 based on port and dimm number"); + + UNIT_TEST_MBA_PORT_NUMBER = 0x1; + uint8_t UNIT_TEST_DIMM_NUMBER = 0x01; + + FAPI_ERR("Generating RC_TEST_DIMM_CALLOUT_MBA_B"); + + FAPI_SET_HWP_ERROR(l_rc, RC_TEST_DIMM_CALLOUT_MBA_B); + + fapiLogError( l_rc,fapi::FAPI_ERRL_SEV_PREDICTIVE, true ); + + + FAPI_INF("Test calling out all dimms of an mba"); + // all dimms on an mba target + FAPI_ERR("Generating RC_TEST_DIMM_CALLOUT_MBA_C"); + + FAPI_SET_HWP_ERROR(l_rc, RC_TEST_DIMM_CALLOUT_MBA_C); + + fapiLogError( l_rc,fapi::FAPI_ERRL_SEV_PREDICTIVE, true ); + + // commented out due to ci test failing on deconfigured parts + FAPI_INF("Test deconfigure all dimms of mba with port 0 specified"); + UNIT_TEST_MBA_PORT_NUMBER = 0x0; + // deconfigure all dimms on port 0 + FAPI_ERR("Generating RC_TEST_DIMM_DECONFIGURE_MBA_A "); + + FAPI_SET_HWP_ERROR(l_rc,RC_TEST_DIMM_DECONFIGURE_MBA_A); + + fapiLogError( l_rc,fapi::FAPI_ERRL_SEV_PREDICTIVE, true ); + + FAPI_INF("Test gard of DIMM2"); + // gard dimm 0 onn port 1 + UNIT_TEST_DIMM_NUMBER = 0x00; + UNIT_TEST_MBA_PORT_NUMBER = 0x01; + + FAPI_ERR("Generating RC_TEST_DIMM_GARD_MBA_B "); + + FAPI_SET_HWP_ERROR(l_rc, RC_TEST_DIMM_GARD_MBA_B); + + fapiLogError( l_rc,fapi::FAPI_ERRL_SEV_PREDICTIVE, true ); + + // Generate the same error again need to return an error + // to make the test code happy FAPI_ERR("hwpTestError: Generating RC_TEST_ERROR_A again"); FAPI_SET_HWP_ERROR(l_rc, RC_TEST_ERROR_A); |