Skip to content

Commit

Permalink
MDIA: Add MCC registers to timeout FFDC
Browse files Browse the repository at this point in the history
Change-Id: I9f4cc22f02c2501ad0a6b9e83b82fe4dfa30084a
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/93699
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
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>
Reviewed-by: Benjamen G Tyner <ben.tyner@ibm.com>
Reviewed-by: Brian J Stegmiller <bjs@us.ibm.com>
Reviewed-by: Zane C Shelley <zshelle@us.ibm.com>
  • Loading branch information
cnpalmer authored and zane131 committed Mar 25, 2020
1 parent 638312e commit cec9110
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 4 deletions.
10 changes: 8 additions & 2 deletions src/usr/diag/mdia/mdiafwd.H
Expand Up @@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
/* Contributors Listed Below - COPYRIGHT 2012,2019 */
/* Contributors Listed Below - COPYRIGHT 2012,2020 */
/* [+] International Business Machines Corp. */
/* */
/* */
Expand Down Expand Up @@ -96,6 +96,13 @@ enum
MCBIST_FIR_ACT0 = 0x07012306,
MCBIST_FIR_ACT1 = 0x07012307,

// mcc dstlfir unit regs
DSTLFIR = 0x07010900,
DSTLFIR_MASK = 0x07010903,
DSTLFIR_ACT0 = 0x07010906,
DSTLFIR_ACT1 = 0x07010907,
DSTLCFG2 = 0x0701090E,

// ocmb mcbist unit regs
OCMB_MCBIST_FIR = 0x08011800,
OCMB_MCBIST_FIR_AND = 0x08011801,
Expand All @@ -105,7 +112,6 @@ enum

// ocmb omidlfir unit regs
OMIDLFIR = 0x07013340,
OMIDLFIR_AND = 0x07013341,
OMIDLFIR_MASK = 0x07013343,
OMIDLFIR_ACT0 = 0x07013346,
OMIDLFIR_ACT1 = 0x07013347,
Expand Down
21 changes: 19 additions & 2 deletions src/usr/diag/mdia/mdiasm.C
Expand Up @@ -131,14 +131,20 @@ void addTimeoutFFDC(TargetHandle_t i_target, errlHndl_t & io_log)
MCBIST_FIR_ACT1,
};

const uint64_t mccRegs[] = {
DSTLFIR,
DSTLFIR_MASK,
DSTLFIR_ACT0,
DSTLFIR_ACT1,
DSTLCFG2,
};

const uint64_t ocmbRegs[] = {
OCMB_MCBIST_FIR,
OCMB_MCBIST_FIR_AND,
OCMB_MCBIST_FIR_MASK,
OCMB_MCBIST_FIR_ACT0,
OCMB_MCBIST_FIR_ACT1,
OMIDLFIR,
OMIDLFIR_AND,
OMIDLFIR_MASK,
OMIDLFIR_ACT0,
OMIDLFIR_ACT1,
Expand Down Expand Up @@ -271,6 +277,16 @@ void addTimeoutFFDC(TargetHandle_t i_target, errlHndl_t & io_log)
assert( nullptr != proc, "[MDIA] addTimeoutFFDC: Unable to get the "
"parent proc from omi: 0x%08x", get_huid(omi) );

// Get the parent MCC
TargetHandleList mccList;
getParentAffinityTargets( mccList, omi, CLASS_UNIT, TYPE_MCC );

assert( mccList.size() == 1, "[MDIA] addTimeoutFFDC: Multiple parent"
" MCCs found for OMI: 0x%08x", get_huid(omi) );

TargetHandle_t mcc = mccList[0];


const struct Entry
{
TARGETING::ConstTargetHandle_t target;
Expand All @@ -279,6 +295,7 @@ void addTimeoutFFDC(TargetHandle_t i_target, errlHndl_t & io_log)
} tables[] = {
{i_target, ocmbRegs, ocmbRegs + sizeof(ocmbRegs)/sizeof(*ocmbRegs)},
{proc, procRegs, procRegs + sizeof(procRegs)/sizeof(*procRegs)},
{mcc, mccRegs, mccRegs + sizeof(mccRegs)/sizeof(*mccRegs)},
};

for(const Entry * tableIt = tables;
Expand Down

0 comments on commit cec9110

Please sign in to comment.