Skip to content

Commit

Permalink
PRD: fixed error log parsing for MCA DQs
Browse files Browse the repository at this point in the history
MCAs only have one DQ per symbol where MBA have two per symbol.

Change-Id: I4ecf5e9f9b7406eb6cc997807e2c46c260d03736
CQ: SW392855
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42298
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com>
Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com>
Reviewed-by: Brian J. Stegmiller <bjs@us.ibm.com>
Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com>
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42427
Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
  • Loading branch information
zane131 committed Jun 26, 2017
1 parent 6eeaf67 commit aa5ff65
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 19 deletions.
2 changes: 1 addition & 1 deletion src/usr/diag/prdf/common/plat/mem/prdfMemUtils.C
Expand Up @@ -144,7 +144,7 @@ int32_t collectCeStats<TYPE_MCA>( ExtensibleChip * i_chip,

SymbolData symData;
symData.symbol = MemSymbol::fromSymbol( mcaTrgt, i_rank,
sym, CEN_SYMBOL::BOTH_SYMBOL_DQS );
sym, CEN_SYMBOL::ODD_SYMBOL_DQ );
if ( !symData.symbol.isValid() )
{
PRDF_ERR( PRDF_FUNC "MemSymbol() failed: symbol=%d",
Expand Down
45 changes: 27 additions & 18 deletions src/usr/diag/prdf/common/plugins/prdfMemLogParse.C
Expand Up @@ -2931,30 +2931,39 @@ void addDramSiteString( const MemoryMruData::ExtendedData & i_extMemMru,
}
else // IS DIMMs
{
char tmp[DATA_SIZE] = { '\0' };

// Add DQ info.
char tmp[DATA_SIZE] = { '\0' };
strcat( io_data, "DQ:" );
switch ( mm.s.pins )

if ( mm.s.isMca ) // MCA
{
case EVEN_SYMBOL_DQ:
snprintf( tmp, DATA_SIZE, "%d", i_extMemMru.dqMapping[dqIdx] );
strcat( io_data, tmp );
break;
// There is only one DQ per symbol.
snprintf( tmp, DATA_SIZE, "%d", i_extMemMru.dqMapping[dqIdx] );
}
else // MBA
{
switch ( mm.s.pins )
{
case EVEN_SYMBOL_DQ:
snprintf( tmp, DATA_SIZE, "%d",
i_extMemMru.dqMapping[dqIdx] );
break;

case ODD_SYMBOL_DQ:
snprintf( tmp, DATA_SIZE, "%d", i_extMemMru.dqMapping[dqIdx+1]);
strcat( io_data, tmp );
break;
case ODD_SYMBOL_DQ:
snprintf( tmp, DATA_SIZE, "%d",
i_extMemMru.dqMapping[dqIdx+1]);
break;

case BOTH_SYMBOL_DQS:
case NO_SYMBOL_DQS:
snprintf( tmp, DATA_SIZE, "%d,%d",
i_extMemMru.dqMapping[dqIdx],
i_extMemMru.dqMapping[dqIdx+1] );
strcat( io_data, tmp );
break;
case BOTH_SYMBOL_DQS:
case NO_SYMBOL_DQS:
snprintf( tmp, DATA_SIZE, "%d,%d",
i_extMemMru.dqMapping[dqIdx],
i_extMemMru.dqMapping[dqIdx+1] );
break;
}
}

strcat( io_data, tmp );
}
}

Expand Down

0 comments on commit aa5ff65

Please sign in to comment.