summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSumit Kumar <sumit_kumar@in.ibm.com>2018-06-30 12:49:51 -0500
committerWilliam G. Hoffa <wghoffa@us.ibm.com>2018-07-05 21:35:41 -0400
commit0b9c80f1ce27ce51b079b38cdb58fd696deec4ef (patch)
treedc12235f9118a2f316f94b4fc53135dd51915e68
parent71397fd3ade869c11ae669c3eccaf9ec8b6dee61 (diff)
downloadtalos-hostboot-0b9c80f1ce27ce51b079b38cdb58fd696deec4ef.tar.gz
talos-hostboot-0b9c80f1ce27ce51b079b38cdb58fd696deec4ef.zip
eRepair: More debug traces added
Change-Id: I6e9f76c97b7ab00d9e381f8c7247d4366212dd14 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/61708 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Tested-by: Hostboot CI <hostboot-ci+hostboot@us.ibm.com> Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com> Reviewed-by: Sumit Kumar <sumit_kumar@in.ibm.com> Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/61711 Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
-rwxr-xr-xsrc/import/chips/p9/procedures/hwp/io/p9_io_erepairGetFailedLanesHwp.H9
-rwxr-xr-xsrc/import/chips/p9/procedures/hwp/io/p9_io_erepairSetFailedLanesHwp.H50
-rw-r--r--src/import/chips/p9/procedures/xml/error_info/p9_io_erepair_errors.xml16
3 files changed, 51 insertions, 24 deletions
diff --git a/src/import/chips/p9/procedures/hwp/io/p9_io_erepairGetFailedLanesHwp.H b/src/import/chips/p9/procedures/hwp/io/p9_io_erepairGetFailedLanesHwp.H
index 1e58f9a0e..9d82c08e3 100755
--- a/src/import/chips/p9/procedures/hwp/io/p9_io_erepairGetFailedLanesHwp.H
+++ b/src/import/chips/p9/procedures/hwp/io/p9_io_erepairGetFailedLanesHwp.H
@@ -74,7 +74,7 @@ fapi2::ReturnCode getDimmType(
FAPI_ASSERT( 0 != l_mbaChiplets.size(),
fapi2::P9_EREPAIR_CHILD_MBA_TARGETS_ERR()
- .set_ERROR(l_mbaChiplets),
+ .set_VAL_CHIPLET(l_mbaChiplets),
"ERROR: During get child MBA targets");
l_mbaTarget = l_mbaChiplets[0];
@@ -651,6 +651,7 @@ fapi2::ReturnCode retrieveRepairDataProc(
{
FAPI_ASSERT(false,
fapi2::P9_EREPAIR_ACCESSOR_HWP_INVALID_FABRIC_VPD_SIZE_ERR()
+ .set_VAL_BUF_SIZE(l_bufSize)
.set_ERROR(fapi2::current_err),
"ERROR: Invalid Fabric VPD size");
}
@@ -764,6 +765,7 @@ fapi2::ReturnCode retrieveRepairDataMemBuf(
{
FAPI_ASSERT(false,
fapi2::P9_EREPAIR_ACCESSOR_HWP_INVALID_MEM_VPD_SIZE_ERR()
+ .set_VAL_BUF_SIZE(l_bufSize)
.set_ERROR(l_rc),
"ERROR: Invalid MEM VPD size");
}
@@ -870,8 +872,9 @@ fapi2::ReturnCode retrieveRepairDataDMI(
{
FAPI_ASSERT(false,
fapi2::P9_EREPAIR_ACCESSOR_HWP_INVALID_FABRIC_VPD_SIZE_ERR()
+ .set_VAL_BUF_SIZE(l_bufSize)
.set_ERROR(fapi2::current_err),
- "ERROR: Invalid Fabric VPD size");
+ "ERROR: Invalid Fabric VPD size (DMI)");
}
// Allocate memory for buffer
@@ -880,7 +883,7 @@ fapi2::ReturnCode retrieveRepairDataDMI(
FAPI_ASSERT(l_retBuf != NULL,
fapi2::P9_EREPAIR_ACCESSOR_HWP_MEMORY_ALLOC_FAIL_ERR()
.set_BUF_SIZE(l_bufSize),
- "ERROR: Failed to allocate memory size");
+ "ERROR: Failed to allocate memory size (DMI)");
// Retrieve the Field eRepair data from the PNOR
FAPI_TRY( getMvpdField(
diff --git a/src/import/chips/p9/procedures/hwp/io/p9_io_erepairSetFailedLanesHwp.H b/src/import/chips/p9/procedures/hwp/io/p9_io_erepairSetFailedLanesHwp.H
index bf4897201..3a622404b 100755
--- a/src/import/chips/p9/procedures/hwp/io/p9_io_erepairSetFailedLanesHwp.H
+++ b/src/import/chips/p9/procedures/hwp/io/p9_io_erepairSetFailedLanesHwp.H
@@ -104,7 +104,8 @@ fapi2::ReturnCode gatherRepairLanes(
// Make sure repair lane value passed is within valid range as per the target type
FAPI_ASSERT(i_repairLane < maxBusLanes,
fapi2::P9_EREPAIR_INVALID_LANE_VALUE_ERR()
- .set_ERROR(i_repairLane)
+ .set_VAL_REPAIR_LANE(i_repairLane)
+ .set_VAL_MAX_LANES(maxBusLanes)
.set_TARGET(i_target),
"ERROR: Invalid erepair lane value");
@@ -559,8 +560,9 @@ fapi2::ReturnCode updateRepairLanesToBufProc(
.set_VAL_BYTE_PARSED(l_bytesParsed)
.set_VAL_BUF_SIZE(i_bufSz)
.set_VAL_REPAIR_CNT(l_repairCnt)
+ .set_VAL_OVERWRITE_FLAG(l_overWrite)
.set_VAL_NUM_REPAIR(l_numRepairs),
- "ERROR: from updateRepairLanesToBuf - MVPD full");
+ "ERROR-1: from updateRepairLanesToBuf(Proc) - MVPD full");
}
// Add at the end
@@ -580,8 +582,9 @@ fapi2::ReturnCode updateRepairLanesToBufProc(
.set_VAL_BYTE_PARSED(l_bytesParsed)
.set_VAL_BUF_SIZE(i_bufSz)
.set_VAL_REPAIR_CNT(l_repairCnt)
+ .set_VAL_OVERWRITE_FLAG(l_overWrite)
.set_VAL_NUM_REPAIR(l_numRepairs),
- "ERROR: from updateRepairLanesToBuf - MVPD full");
+ "ERROR-2: from updateRepairLanesToBuf(Proc) - MVPD full");
eRepairPowerBus* l_fabricBus =
reinterpret_cast<eRepairPowerBus*>(l_vpdWritePtr);
@@ -1070,12 +1073,13 @@ fapi2::ReturnCode updateRepairLanesToBufMemBuf(
(l_repairCnt < l_numRepairs))
{
FAPI_ASSERT(false,
- fapi2::P9_EREPAIR_MVPD_FULL_ERR()
+ fapi2::P9_EREPAIR_MBVPD_FULL_ERR()
.set_VAL_BYTE_PARSED(l_bytesParsed)
.set_VAL_BUF_SIZE(i_bufSz)
.set_VAL_REPAIR_CNT(l_repairCnt)
+ .set_VAL_OVERWRITE_FLAG(l_overWrite)
.set_VAL_NUM_REPAIR(l_numRepairs),
- "ERROR: from updateRepairLanesToBuf - MVPD full");
+ "ERROR-1: from updateRepairLanesToBuf(MemBuf) - MVPD full");
}
// Add at the end
@@ -1090,10 +1094,14 @@ fapi2::ReturnCode updateRepairLanesToBufMemBuf(
{
// Make sure we are not writing more records than the size
// allocated in the VPD
- FAPI_ASSERT(l_bytesParsed == i_bufSz,
+ FAPI_ASSERT(l_bytesParsed <= i_bufSz,
fapi2::P9_EREPAIR_MBVPD_FULL_ERR()
- .set_ERROR(l_bytesParsed),
- "ERROR: from updateRepairLanesToBuf - MBVPD full");
+ .set_VAL_BYTE_PARSED(l_bytesParsed)
+ .set_VAL_BUF_SIZE(i_bufSz)
+ .set_VAL_REPAIR_CNT(l_repairCnt)
+ .set_VAL_OVERWRITE_FLAG(l_overWrite)
+ .set_VAL_NUM_REPAIR(l_numRepairs),
+ "ERROR-2: from updateRepairLanesToBuf(MemBuf) - MBVPD full");
eRepairMemBus* l_memBus =
reinterpret_cast<eRepairMemBus*>(l_vpdWritePtr);
@@ -1588,12 +1596,13 @@ fapi2::ReturnCode updateRepairLanesToBufDMI(
(l_repairCnt < l_numRepairs))
{
FAPI_ASSERT(false,
- fapi2::P9_EREPAIR_MVPD_FULL_ERR()
+ fapi2::P9_EREPAIR_MBVPD_FULL_ERR()
.set_VAL_BYTE_PARSED(l_bytesParsed)
.set_VAL_BUF_SIZE(i_bufSz)
.set_VAL_REPAIR_CNT(l_repairCnt)
+ .set_VAL_OVERWRITE_FLAG(l_overWrite)
.set_VAL_NUM_REPAIR(l_numRepairs),
- "ERROR: from updateRepairLanesToBuf - MVPD full");
+ "ERROR-1: from updateRepairLanesToBuf(DMI) - MVPD full");
}
// Add at the end
@@ -1608,10 +1617,14 @@ fapi2::ReturnCode updateRepairLanesToBufDMI(
{
// Make sure we are not writing more records than the size
// allocated in the VPD
- FAPI_ASSERT(l_bytesParsed == i_bufSz,
+ FAPI_ASSERT(l_bytesParsed <= i_bufSz,
fapi2::P9_EREPAIR_MBVPD_FULL_ERR()
- .set_ERROR(l_bytesParsed),
- "ERROR: from updateRepairLanesToBuf - MBVPD full");
+ .set_VAL_BYTE_PARSED(l_bytesParsed)
+ .set_VAL_BUF_SIZE(i_bufSz)
+ .set_VAL_REPAIR_CNT(l_repairCnt)
+ .set_VAL_OVERWRITE_FLAG(l_overWrite)
+ .set_VAL_NUM_REPAIR(l_numRepairs),
+ "ERROR-2: from updateRepairLanesToBuf(DMI) - MBVPD full");
eRepairMemBus* l_memBus =
reinterpret_cast<eRepairMemBus*>(l_vpdWritePtr);
@@ -1739,6 +1752,7 @@ fapi2::ReturnCode writeRepairDataToVPDProc(
{
FAPI_ASSERT(false,
fapi2::P9_EREPAIR_ACCESSOR_HWP_INVALID_FABRIC_VPD_SIZE_ERR()
+ .set_VAL_BUF_SIZE(l_bufSize)
.set_ERROR(fapi2::current_err),
"ERROR: Invalid Fabric VPD size");
}
@@ -1749,7 +1763,7 @@ fapi2::ReturnCode writeRepairDataToVPDProc(
FAPI_ASSERT(l_retBuf != NULL,
fapi2::P9_EREPAIR_ACCESSOR_HWP_MEMORY_ALLOC_FAIL_ERR()
.set_BUF_SIZE(l_bufSize),
- "ERROR: Failed to allocate memory size");
+ "ERROR: Failed to allocate fabric memory size");
// Retrieve the Field eRepair data from the MVPD
FAPI_TRY( getMvpdField(
@@ -1866,7 +1880,7 @@ fapi2::ReturnCode writeRepairDataToVPDMemBuf(
FAPI_ASSERT( 0 != l_mbaChiplets.size(),
fapi2::P9_EREPAIR_CHILD_MBA_TARGETS_ERR()
- .set_ERROR(l_mbaChiplets),
+ .set_VAL_CHIPLET(l_mbaChiplets),
"ERROR: During get child MBA targets");
l_mbaTarget = l_mbaChiplets[0];
@@ -1896,6 +1910,7 @@ fapi2::ReturnCode writeRepairDataToVPDMemBuf(
{
FAPI_ASSERT(false,
fapi2::P9_EREPAIR_ACCESSOR_HWP_INVALID_MEM_VPD_SIZE_ERR()
+ .set_VAL_BUF_SIZE(l_bufSize)
.set_ERROR(fapi2::current_err),
"ERROR: Invalid MEM VPD size");
}
@@ -2026,8 +2041,9 @@ fapi2::ReturnCode writeRepairDataToVPDDMI(
{
FAPI_ASSERT(false,
fapi2::P9_EREPAIR_ACCESSOR_HWP_INVALID_FABRIC_VPD_SIZE_ERR()
+ .set_VAL_BUF_SIZE(l_bufSize)
.set_ERROR(fapi2::current_err),
- "ERROR: Invalid Fabric VPD size");
+ "ERROR: Invalid Fabric VPD (DMI) size");
}
// Allocate memory for buffer
@@ -2036,7 +2052,7 @@ fapi2::ReturnCode writeRepairDataToVPDDMI(
FAPI_ASSERT(l_retBuf != NULL,
fapi2::P9_EREPAIR_ACCESSOR_HWP_MEMORY_ALLOC_FAIL_ERR()
.set_BUF_SIZE(l_bufSize),
- "ERROR: Failed to allocate memory size");
+ "ERROR: Failed to allocate memory (DMI) size");
// Retrieve the Field eRepair data from the MVPD
FAPI_TRY( getMvpdField(
diff --git a/src/import/chips/p9/procedures/xml/error_info/p9_io_erepair_errors.xml b/src/import/chips/p9/procedures/xml/error_info/p9_io_erepair_errors.xml
index dc16eed89..e556db480 100644
--- a/src/import/chips/p9/procedures/xml/error_info/p9_io_erepair_errors.xml
+++ b/src/import/chips/p9/procedures/xml/error_info/p9_io_erepair_errors.xml
@@ -5,7 +5,7 @@
<!-- -->
<!-- OpenPOWER HostBoot Project -->
<!-- -->
-<!-- Contributors Listed Below - COPYRIGHT 2016,2017 -->
+<!-- Contributors Listed Below - COPYRIGHT 2016,2018 -->
<!-- [+] International Business Machines Corp. -->
<!-- -->
<!-- -->
@@ -38,6 +38,7 @@
</hwpError>
<hwpError>
<rc>RC_P9_EREPAIR_ACCESSOR_HWP_INVALID_MEM_VPD_SIZE_ERR</rc>
+ <ffdc>VAL_BUF_SIZE</ffdc>
<ffdc>ERROR</ffdc>
<description>Invalid MEM VPD size has been returned by platform.
</description>
@@ -58,6 +59,7 @@
</hwpError>
<hwpError>
<rc>RC_P9_EREPAIR_ACCESSOR_HWP_INVALID_FABRIC_VPD_SIZE_ERR</rc>
+ <ffdc>VAL_BUF_SIZE</ffdc>
<ffdc>ERROR</ffdc>
<description>Invalid Fabric VPD size has been returned by platform.
</description>
@@ -68,7 +70,7 @@
</hwpError>
<hwpError>
<rc>RC_P9_EREPAIR_CHILD_MBA_TARGETS_ERR</rc>
- <ffdc>ERROR</ffdc>
+ <ffdc>VAL_CHIPLET</ffdc>
<description>Error during get child MBA targets.
</description>
<callout>
@@ -89,7 +91,11 @@
</hwpError>
<hwpError>
<rc>RC_P9_EREPAIR_MBVPD_FULL_ERR</rc>
- <ffdc>ERROR</ffdc>
+ <ffdc>VAL_BYTE_PARSED</ffdc>
+ <ffdc>VAL_BUF_SIZE</ffdc>
+ <ffdc>VAL_REPAIR_CNT</ffdc>
+ <ffdc>VAL_OVERWRITE_FLAG</ffdc>
+ <ffdc>VAL_NUM_REPAIR</ffdc>
<description>ERROR: eRepair data limit in the Memory Buffer FRU VPD has been reached.
</description>
<callout>
@@ -102,6 +108,7 @@
<ffdc>VAL_BYTE_PARSED</ffdc>
<ffdc>VAL_BUF_SIZE</ffdc>
<ffdc>VAL_REPAIR_CNT</ffdc>
+ <ffdc>VAL_OVERWRITE_FLAG</ffdc>
<ffdc>VAL_NUM_REPAIR</ffdc>
<description>ERROR: eRepair data limit in the Processor Module VPD has been reached.
</description>
@@ -112,7 +119,8 @@
</hwpError>
<hwpError>
<rc>RC_P9_EREPAIR_INVALID_LANE_VALUE_ERR</rc>
- <ffdc>ERROR</ffdc>
+ <ffdc>VAL_REPAIR_LANE</ffdc>
+ <ffdc>VAL_MAX_LANES</ffdc>
<ffdc>TARGET</ffdc>
<description>ERROR: Invalid erepair lane value
</description>
OpenPOWER on IntegriCloud