diff options
| author | Benjamin Weisenbeck <bweisenb@us.ibm.com> | 2017-06-14 12:34:21 -0500 |
|---|---|---|
| committer | Zane C. Shelley <zshelle@us.ibm.com> | 2017-07-27 16:29:16 -0400 |
| commit | bdef08559a98237193e603f862e8a7360e9287ab (patch) | |
| tree | b833cac5d44777a77b345433abd50fbc6cf0bf14 /src/usr/diag/prdf/common/plugins | |
| parent | 32b1903eac84f4e4fe53478f02461577bbb2b86a (diff) | |
| download | blackbird-hostboot-bdef08559a98237193e603f862e8a7360e9287ab.tar.gz blackbird-hostboot-bdef08559a98237193e603f862e8a7360e9287ab.zip | |
PRD: FW-Directed line delete support
Change-Id: I7d69c5433fe8f7f6a10d45567a045c4749670c94
RTC: 136053
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42132
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com>
Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/43694
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>
Diffstat (limited to 'src/usr/diag/prdf/common/plugins')
| -rw-r--r-- | src/usr/diag/prdf/common/plugins/plugins.mk | 2 | ||||
| -rw-r--r-- | src/usr/diag/prdf/common/plugins/prdfLogParse_common.C | 12 | ||||
| -rw-r--r-- | src/usr/diag/prdf/common/plugins/prdfParserEnums.H | 89 | ||||
| -rw-r--r-- | src/usr/diag/prdf/common/plugins/prdfProcLogParse.C | 14 |
4 files changed, 53 insertions, 64 deletions
diff --git a/src/usr/diag/prdf/common/plugins/plugins.mk b/src/usr/diag/prdf/common/plugins/plugins.mk index 4070476c8..9d7800723 100644 --- a/src/usr/diag/prdf/common/plugins/plugins.mk +++ b/src/usr/diag/prdf/common/plugins/plugins.mk @@ -34,7 +34,7 @@ PRDR_ERRL_LIB = lib${RULE_LIBRARY_NAME} LIBRARY_OFILES += prdfLogParse.o LIBRARY_OFILES += prdfLogParse_common.o LIBRARY_OFILES += prdfMemLogParse.o -#LIBRARY_OFILES += prdfProcLogParse.o TODO RTC 136050 +LIBRARY_OFILES += prdfProcLogParse.o LIBRARY_OFILES += prdrErrlPluginsSupt.o LIBRARY_OFILES += prdfParserUtils.o LIBRARY_OFILES += prdfBitString.o diff --git a/src/usr/diag/prdf/common/plugins/prdfLogParse_common.C b/src/usr/diag/prdf/common/plugins/prdfLogParse_common.C index e31f4f712..6d197b356 100644 --- a/src/usr/diag/prdf/common/plugins/prdfLogParse_common.C +++ b/src/usr/diag/prdf/common/plugins/prdfLogParse_common.C @@ -49,7 +49,7 @@ #include <attributeenums.H> // For TARGETING::TYPE enum #include <prdfMemLogParse.H> -//#include <prdfProcLogParse.H> TODO: RTC 136050 +#include <prdfProcLogParse.H> #include <prdfParserEnums.H> #include <prdfMemoryMruData.H> #include <prdfBitString.H> @@ -461,6 +461,11 @@ bool parseCaptureData( void * i_buffer, uint32_t i_buflen, { parseTodFfdcData( sigData, sigDataSize, i_parser ); } + else if ( Util::hashString("OCC_CS_FFDC") == sigId) + { + parsePnorFirData( sigData, sigDataSize, i_parser ); + } +*/ else if ( Util::hashString(LD_CR_FFDC::L2TITLE) == sigId ) { parseL2LdCrFfdc( sigData, sigDataSize, i_parser ); @@ -469,11 +474,6 @@ bool parseCaptureData( void * i_buffer, uint32_t i_buflen, { parseL3LdCrFfdc( sigData, sigDataSize, i_parser ); } - else if ( Util::hashString("OCC_CS_FFDC") == sigId) - { - parsePnorFirData( sigData, sigDataSize, i_parser ); - } -*/ else if ( (0 != sigDataSize) && (sizeof(uint64_t) >= sigDataSize) ) { // Print one reg/line if the data size <= 8 bytes diff --git a/src/usr/diag/prdf/common/plugins/prdfParserEnums.H b/src/usr/diag/prdf/common/plugins/prdfParserEnums.H index a496ec9d9..6e062e46f 100644 --- a/src/usr/diag/prdf/common/plugins/prdfParserEnums.H +++ b/src/usr/diag/prdf/common/plugins/prdfParserEnums.H @@ -223,11 +223,10 @@ namespace LD_CR_FFDC { #if __BYTE_ORDER == __LITTLE_ENDIAN uint32_t L2LDcnt : 4; - uint32_t L2LDallowed : 1; uint32_t L2LDMaxAllowed : 4; uint32_t L2CRMaxAllowed : 4; uint32_t L2CRPresent : 4; - uint32_t L2reserved1 :15; + uint32_t L2reserved1 :16; uint32_t L2errMember : 3; uint32_t L2errDW : 3; @@ -236,26 +235,27 @@ namespace LD_CR_FFDC uint32_t L2errOWSelect : 1; uint32_t L2errBitLine : 4; uint32_t L2errIsTopSA : 1; + uint32_t L2errIsLeftSA : 1; uint32_t L2errAddress :10; - uint32_t L2reserved2 : 7; + uint32_t L2reserved2 : 6; L2LdCrFfdc(): - L2LDcnt(0), L2LDallowed(0), L2LDMaxAllowed(0), + L2LDcnt(0), L2LDMaxAllowed(0), L2CRMaxAllowed(0), L2CRPresent(0), L2reserved1(0), L2errMember(0), L2errDW(0), L2errMacro(0), L2errBank(0), L2errOWSelect(0), L2errBitLine(0), - L2errIsTopSA(0), L2errAddress(0), L2reserved2(0) + L2errIsTopSA(0), L2errIsLeftSA(0), L2errAddress(0), L2reserved2(0) {} #else - uint32_t L2reserved1 :15; + uint32_t L2reserved1 :16; uint32_t L2CRPresent : 4; uint32_t L2CRMaxAllowed : 4; uint32_t L2LDMaxAllowed : 4; - uint32_t L2LDallowed : 1; uint32_t L2LDcnt : 4; - uint32_t L2reserved2 : 7; + uint32_t L2reserved2 : 6; uint32_t L2errAddress :10; + uint32_t L2errIsLeftSA : 1; uint32_t L2errIsTopSA : 1; uint32_t L2errBitLine : 4; uint32_t L2errOWSelect : 1; @@ -266,8 +266,8 @@ namespace LD_CR_FFDC L2LdCrFfdc(): L2reserved1(0), L2CRPresent(0), L2CRMaxAllowed(0), - L2LDMaxAllowed(0), L2LDallowed(0), L2LDcnt(0), - L2reserved2(0),L2errAddress(0), L2errIsTopSA(0), + L2LDMaxAllowed(0), L2LDcnt(0), L2reserved2(0), + L2errAddress(0), L2errIsLeftSA(0), L2errIsTopSA(0), L2errBitLine(0), L2errOWSelect(0), L2errBank(0), L2errMacro(0), L2errDW(0), L2errMember(0) {} @@ -278,52 +278,43 @@ namespace LD_CR_FFDC struct L3LdCrFfdc { #if __BYTE_ORDER == __LITTLE_ENDIAN - uint32_t L3LDcnt : 4; - uint32_t L3LDallowed : 1; - uint32_t L3LDMaxAllowed : 4; - uint32_t L3CRMaxAllowed : 4; - uint32_t L3CRPresent : 4; - uint32_t L3reserved1 :15; - - uint32_t L3errMember : 3; - uint32_t L3errDW : 3; - uint32_t L3errBank : 1; - uint32_t L3errDataOut : 1; - uint32_t L3errAddress : 4; - uint32_t L3errIO : 1; - uint32_t L3errRow :10; - uint32_t L3reserved2 : 9; + uint32_t L3LDcnt : 4; + uint32_t L3LDMaxAllowed : 4; + uint32_t L3CRMaxAllowed : 4; + uint32_t L3CRPresent : 4; + uint32_t L3errBank : 3; + uint32_t L3errDataOut : 8; + uint32_t L3reserved1 : 5; + + uint32_t L3errMember : 3; + uint32_t L3errDW : 3; + uint32_t L3errHshAddress :12; + uint32_t L3errCacheAddress :14; L3LdCrFfdc(): - L3LDcnt(0), L3LDallowed(0), L3LDMaxAllowed(0), - L3CRMaxAllowed(0), L3CRPresent(0), + L3LDcnt(0), L3LDMaxAllowed(0), L3CRMaxAllowed(0), + L3CRPresent(0), L3errBank(0), L3errDataOut(0), L3reserved1(0), L3errMember(0), L3errDW(0), - L3errBank(0), L3errDataOut(0), L3errAddress(0), - L3errIO(0), L3errRow(0), L3reserved2(0) + L3errHshAddress(0), L3errCacheAddress(0) {} #else - uint32_t L3reserved1 :15; - uint32_t L3CRPresent : 4; - uint32_t L3CRMaxAllowed : 4; - uint32_t L3LDMaxAllowed : 4; - uint32_t L3LDallowed : 1; - uint32_t L3LDcnt : 4; - - uint32_t L3reserved2 : 9; - uint32_t L3errRow :10; - uint32_t L3errIO : 1; - uint32_t L3errAddress : 4; - uint32_t L3errDataOut : 1; - uint32_t L3errBank : 1; - uint32_t L3errDW : 3; - uint32_t L3errMember : 3; + uint32_t L3reserved1 : 5; + uint32_t L3errDataOut : 8; + uint32_t L3errBank : 3; + uint32_t L3CRPresent : 4; + uint32_t L3CRMaxAllowed : 4; + uint32_t L3LDMaxAllowed : 4; + uint32_t L3LDcnt : 4; + + uint32_t L3errCacheAddress :14; + uint32_t L3errHshAddress :12; + uint32_t L3errDW : 3; + uint32_t L3errMember : 3; L3LdCrFfdc(): - L3reserved1(0), L3CRPresent(0), L3CRMaxAllowed(0), - L3LDMaxAllowed(0), L3LDallowed(0), L3LDcnt(0), - L3reserved2(0), L3errRow(0), L3errIO(0), - L3errAddress(0), L3errDataOut(0), L3errBank(0), - L3errDW(0), L3errMember(0) + L3reserved1(0), L3errDataOut(0), L3errBank(0), L3CRPresent(0), + L3CRMaxAllowed(0), L3LDMaxAllowed(0), L3LDcnt(0), + L3errCacheAddress(0), L3errHshAddress(0), L3errDW(0), L3errMember(0) {} #endif diff --git a/src/usr/diag/prdf/common/plugins/prdfProcLogParse.C b/src/usr/diag/prdf/common/plugins/prdfProcLogParse.C index 1422548e1..461704ab9 100644 --- a/src/usr/diag/prdf/common/plugins/prdfProcLogParse.C +++ b/src/usr/diag/prdf/common/plugins/prdfProcLogParse.C @@ -191,8 +191,6 @@ bool parseL2LdCrFfdc( uint8_t * i_buffer, uint32_t i_buflen, memcpy( &ldcrffdc, i_buffer, sizeof(LD_CR_FFDC::L2LdCrFfdc)); i_parser.PrintNumber( " L2 LD Counts", "%d", ldcrffdc.L2LDcnt ); - i_parser.PrintBool( " L2 LD Allowed", - 0 != ldcrffdc.L2LDallowed ); i_parser.PrintNumber( " L2 LD Max Allowed", "%d", ldcrffdc.L2LDMaxAllowed ); i_parser.PrintNumber( " L2 CR Max Allowed", "%d", @@ -213,6 +211,8 @@ bool parseL2LdCrFfdc( uint8_t * i_buffer, uint32_t i_buflen, ldcrffdc.L2errBitLine ); i_parser.PrintBool( " L2 Error Is Top SA", 0 != ldcrffdc.L2errIsTopSA ); + i_parser.PrintBool( " L2 Error Is Left SA", + 0 != ldcrffdc.L2errIsLeftSA ); i_parser.PrintNumber( " L2 Error Address", "%d", ldcrffdc.L2errAddress ); @@ -247,8 +247,6 @@ bool parseL3LdCrFfdc( uint8_t * i_buffer, uint32_t i_buflen, memcpy( &ldcrffdc, i_buffer, sizeof(LD_CR_FFDC::L3LdCrFfdc)); i_parser.PrintNumber( " L3 LD Counts", "%d", ldcrffdc.L3LDcnt ); - i_parser.PrintBool( " L3 LD Allowed", - 0 != ldcrffdc.L3LDallowed ); i_parser.PrintNumber( " L3 LD Max Allowed", "%d", ldcrffdc.L3LDMaxAllowed ); i_parser.PrintNumber( " L3 CR Max Allowed", "%d", @@ -262,10 +260,10 @@ bool parseL3LdCrFfdc( uint8_t * i_buffer, uint32_t i_buflen, i_parser.PrintNumber( " L3 Error Bank", "%d", ldcrffdc.L3errBank ); i_parser.PrintNumber( " L3 Error Data Out", "%d", ldcrffdc.L3errDataOut ); - i_parser.PrintNumber( " L3 Error Address", "%d", - ldcrffdc.L3errAddress ); - i_parser.PrintNumber( " L3 Error IO", "%d", ldcrffdc.L3errIO ); - i_parser.PrintNumber( " L3 Error Row", "%d", ldcrffdc.L3errRow ); + i_parser.PrintNumber( " L3 Error Hashed Address", "%d", + ldcrffdc.L3errHshAddress ); + i_parser.PrintNumber( " L3 Error Cache Address", "%d", + ldcrffdc.L3errCacheAddress ); } while (0); |

