Skip to content

Commit

Permalink
PRD: Manually clear the Centaur interrupt status reg on chnl fail
Browse files Browse the repository at this point in the history
Change-Id: Ic8974632d2d2eae4e4d23f7816157ec22caa8610
CQ: SW439211
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/63226
Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com>
Reviewed-by: Brian J. Stegmiller <bjs@us.ibm.com>
Reviewed-by: Benjamin J. Weisenbeck <bweisenb@us.ibm.com>
Reviewed-by: Caleb N. Palmer <cnpalmer@us.ibm.com>
Reviewed-by: Zane C. Shelley <zshelle@us.ibm.com>
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/63387
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>
  • Loading branch information
zane131 committed Jul 27, 2018
1 parent 96e0310 commit 62f4b4a
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 0 deletions.
11 changes: 11 additions & 0 deletions src/usr/diag/prdf/common/plat/cen/cen_centaur_regs.rule
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,17 @@
access write_only;
};

############################################################################
# Interrupt status register
############################################################################

register INTER_STATUS_REG
{
name "TPTOP.PIB.PCBMS.INTERRUPT_TYPE_REG";
scomaddr 0x000F001A;
capture group default;
};

############################################################################
# TP chiplet error report registers
############################################################################
Expand Down
6 changes: 6 additions & 0 deletions src/usr/diag/prdf/common/plat/mem/prdfMemUtils.C
Original file line number Diff line number Diff line change
Expand Up @@ -891,6 +891,12 @@ void __cleanupChnlFail<TYPE_DMI,TYPE_MEMBUF>( ExtensibleChip * i_dmiChip,
reg->Write();
}

// To ensure FSP ATTN doesn't think there is an active attention on this
// Centaur, manually clear the interrupt status register.
reg = i_membChip->getRegister( "INTER_STATUS_REG" );
reg->clearAllBits(); // Blindly clear everything
reg->Write();

// For all attached MBAs:
// During runtime, send a dynamic memory deallocation message.
// During Memory Diagnostics, tell MDIA to stop pattern tests.
Expand Down

0 comments on commit 62f4b4a

Please sign in to comment.