Skip to content

Commit

Permalink
PRD: Initial Explorer Plugin Files
Browse files Browse the repository at this point in the history
Change-Id: I42191cb8afa66cdb8c2dfe71383f81e20c358bcc
RTC: 200583
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78481
Reviewed-by: Paul Greenwood <paul.greenwood@ibm.com>
Tested-by: Jenkins Server <pfd-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>
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/78994
Tested-by: Zane C. Shelley <zshelle@us.ibm.com>
  • Loading branch information
cnpalmer authored and zane131 committed Jun 18, 2019
1 parent cffebe4 commit c153a43
Show file tree
Hide file tree
Showing 13 changed files with 725 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -195,8 +195,9 @@ PRDF_TARGET_TYPE_ALIAS( TYPE_MI, TARGETING::TYPE_MI )
PRDF_TARGET_TYPE_ALIAS( TYPE_DMI, TARGETING::TYPE_DMI )
PRDF_TARGET_TYPE_ALIAS( TYPE_MCC, TARGETING::TYPE_MCC )
PRDF_TARGET_TYPE_ALIAS( TYPE_OMIC, TARGETING::TYPE_OMIC )
PRDF_TARGET_TYPE_ALIAS( TYPE_OMI, TARGETING::TYPE_OMI )
PRDF_TARGET_TYPE_ALIAS( TYPE_OMI, TARGETING::TYPE_OMI )
PRDF_TARGET_TYPE_ALIAS( TYPE_OCMB_CHIP, TARGETING::TYPE_OCMB_CHIP )
PRDF_TARGET_TYPE_ALIAS( TYPE_MEM_PORT, TARGETING::TYPE_MEM_PORT )
PRDF_TARGET_TYPE_ALIAS( TYPE_MEMBUF, TARGETING::TYPE_MEMBUF )
PRDF_TARGET_TYPE_ALIAS( TYPE_L4, TARGETING::TYPE_L4 )
PRDF_TARGET_TYPE_ALIAS( TYPE_MBA, TARGETING::TYPE_MBA )
Expand Down
39 changes: 37 additions & 2 deletions src/usr/diag/prdf/common/plat/explorer/explorer_ocmb.rule
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#
# OpenPOWER HostBoot Project
#
# Contributors Listed Below - COPYRIGHT 2018
# Contributors Listed Below - COPYRIGHT 2018,2019
# [+] International Business Machines Corp.
#
#
Expand Down Expand Up @@ -366,6 +366,10 @@ rule rMB_CHIPLET_FIR
(MB_CHIPLET_RE_FIR >> 2) & ~MB_CHIPLET_FIR_MASK & `1fffffffffffffff`;
};

# NOTE: RDFFIR[14|34] are possible side effects of OCMB_LFIR[38], as such,
# OCMB_LFIR must be analyzed first for correct handling. If changes are
# made so the RDFFIR is analyzed first, additional changes to the handling
# of those bits will be required.
group gMB_CHIPLET_FIR attntype CHECK_STOP, RECOVERABLE
filter singlebit
{
Expand Down Expand Up @@ -1222,7 +1226,7 @@ group gTLXFIR
/** TLXFIR[9]
* TLXT recoverable error
*/
(rTLXFIR, bit(9)) ? defaultMaskedError;
(rTLXFIR, bit(9)) ? analyzeTLXERR1;

/** TLXFIR[10]
* TLXT configuration error
Expand Down Expand Up @@ -1316,6 +1320,37 @@ group gTLXFIR

};

rule rTLX_ERR1_REPORT
{
RECOVERABLE:
TLX_ERR1_REPORT & ~TLX_ERR1_REPORT_MASK;
};

group gTLX_ERR1_REPORT
filter singlebit,
cs_root_cause
{
/** TLX_ERR1_REPORT[37]
* TLXT FIFO CE
*/
(rTLXFIR, bit(37)) ? self_th_32perDay;

/** TLX_ERR1_REPORT[39]
* Unexpected Interrupt Response
*/
(rTLXFIR, bit(39)) ? parent_proc_th_32perDay;

/** TLX_ERR1_REPORT[40]
* BDI Poisoned
*/
(rTLXFIR, bit(40)) ? self_th_1;

/** TLX_ERR1_REPORT[41]
* TLXT Metadata UE
*/
(rTLXFIR, bit(41)) ? self_th_1;
};

################################################################################
# Explorer chip OMIDLFIR
################################################################################
Expand Down
124 changes: 123 additions & 1 deletion src/usr/diag/prdf/common/plat/explorer/explorer_ocmb_actions.rule
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
#
# OpenPOWER HostBoot Project
#
# Contributors Listed Below - COPYRIGHT 2018
# Contributors Listed Below - COPYRIGHT 2018,2019
# [+] International Business Machines Corp.
#
#
Expand Down Expand Up @@ -55,6 +55,12 @@ actionclass threshold32pday
threshold( field(32 / day) );
};

/** Threshold of 5 per day */
actionclass threshold5pday
{
threshold( field(5 / day) );
};

################################################################################
# Threshold and Mask policy
################################################################################
Expand Down Expand Up @@ -99,6 +105,13 @@ actionclass callout2ndLvlMed
actionclass calloutSelfLowNoGard
{ callout(MRU_LOW, NO_GARD); };

actionclass omi_bus
{
calloutSelfMedA;
callout(connected(TYPE_OMI), MRU_MEDA);
funccall("calloutBusInterfacePlugin");
};

################################################################################
# Callouts with thresholds #
################################################################################
Expand Down Expand Up @@ -152,6 +165,110 @@ actionclass TBDDefaultCallout
threshold( field(32 / day), mfg(32 / day) );
};

################################################################################
# OCMB Actions #
################################################################################

/** MCBIST program complete */
actionclass mcbist_program_complete
{
funccall("McbistCmdComplete");
};

/** DDR4 PHY Interrupt */
actionclass ddr4_phy_interrupt
{
calloutSelfHigh;
threshold5pday;
funccall("Ddr4PhyInterrupt");
};

/** Foxhound Fatal */
actionclass foxhound_fatal
{
funccall("FoxhoundFatal");
threshold1;
};

/** OMI-DL Fatal Error */
actionclass dl_fatal_error
{
try( funccall("DlFatalError"), omi_bus );
threshold1;
};

/** Verify Chip Mark */
actionclass verify_chip_mark_0 { funccall("AnalyzeFetchMpe_0"); };
actionclass verify_chip_mark_1 { funccall("AnalyzeFetchMpe_1"); };
actionclass verify_chip_mark_2 { funccall("AnalyzeFetchMpe_2"); };
actionclass verify_chip_mark_3 { funccall("AnalyzeFetchMpe_3"); };
actionclass verify_chip_mark_4 { funccall("AnalyzeFetchMpe_4"); };
actionclass verify_chip_mark_5 { funccall("AnalyzeFetchMpe_5"); };
actionclass verify_chip_mark_6 { funccall("AnalyzeFetchMpe_6"); };
actionclass verify_chip_mark_7 { funccall("AnalyzeFetchMpe_7"); };

# TODO RTC 208211
/** Mainline NCE/TCE handling */
actionclass mainline_nce_tce_handling
{
defaultMaskedError;
};

/** Handle Mainline AUEs/IAUEs */
actionclass mainline_aue_iaue_handling
{
defaultMaskedError;
};

/** Mainline UE handling */
actionclass mainline_ue_handling
{
defaultMaskedError;
};

/** Handle Mainline IUEs */
actionclass mainline_iue_handling
{
defaultMaskedError;
};

actionclass memory_impe_handling
{
defaultMaskedError;
};

/** Handle Maintenance AUEs */
actionclass maintenance_aue_handling
{
defaultMaskedError;
};

/** Handle Maintenance IAUEs */
actionclass maintenance_iaue_handling
{
defaultMaskedError;
};

/** RDF RCD Parity Error */
actionclass rdf_rcd_parity_error
{
funccall("RdfRcdParityError");
threshold1;
};

/** SRQ RCD Parity Error */
actionclass srq_rcd_parity_error
{
funccall("CalloutAttachedDimmsHigh");
callout(connected(TYPE_MEM_PORT,0), MRU_LOW);
threshold32pday;
};

actionclass mem_port_failure
{
defaultMaskedError;
};

################################################################################
# Analyze groups
################################################################################
Expand All @@ -162,5 +279,10 @@ actionclass analyzeSRQFIR { analyze(gSRQFIR); };
actionclass analyzeMCBISTFIR { analyze(gMCBISTFIR); };
actionclass analyzeRDFFIR { analyze(gRDFFIR); };
actionclass analyzeTLXFIR { analyze(gTLXFIR); };
actionclass analyzeTLXERR1
{
analyze(gTLX_ERR1_REPORT);
funccall("clearAndMaskTlxtRe");
};
actionclass analyzeOMIDLFIR { analyze(gOMIDLFIR); };

47 changes: 47 additions & 0 deletions src/usr/diag/prdf/common/plat/explorer/explorer_ocmb_regs.rule
Original file line number Diff line number Diff line change
Expand Up @@ -343,3 +343,50 @@
scomaddr 0x08011C1F;
capture group default;
};

###########################################################################
# P9 OCMB target OMIDLFIR
###########################################################################

register DL0_ERROR_HOLD
{
name "P9 OCMB target DL0 Error Hold Register";
scomaddr 0x08012813;
capture group default;
};

###########################################################################
# P9 OCMB target TLXFIR
###########################################################################

register TLXFIR_AND
{
name "Explorer chip TLXFIR AND";
scomaddr 0x08012401;
capture group never;
access write_only;
};

register TLXFIR_MASK_OR
{
name "Explorer chip TLXFIR MASK OR";
scomaddr 0x08012405;
capture group never;
access write_only;
};

register TLX_ERR1_REPORT
{
name "P9 OCMB target TLX Error Report Register";
scomaddr 0x0801241D;
reset (&, 0x0801241D);
mask (|, 0x08012415);
capture group default;
};

register TLX_ERR1_REPORT_MASK
{
name "P9 OCMB target TLX Error Report Register Mask";
scomaddr 0x08012415;
capture group default;
};

0 comments on commit c153a43

Please sign in to comment.