summaryrefslogtreecommitdiffstats
path: root/src/usr/intr
diff options
context:
space:
mode:
authorcrgeddes <crgeddes@us.ibm.com>2016-12-19 11:40:52 -0600
committerDaniel M. Crowell <dcrowell@us.ibm.com>2016-12-20 14:47:25 -0500
commit31b825b9496e9665053d44bc3c3bdd39c70ef5d9 (patch)
tree4a7c8c5a6aab425c051c868f2bdc354999ceb7f4 /src/usr/intr
parent0ee4722c1d900419d0108a4937bf1b12b33088e2 (diff)
downloadtalos-hostboot-31b825b9496e9665053d44bc3c3bdd39c70ef5d9.tar.gz
talos-hostboot-31b825b9496e9665053d44bc3c3bdd39c70ef5d9.zip
Fix bug in MPIPL path for INTP init
We were running setup bars on the master proc twice due to a bug in the if statement determining if a proc was master or not Change-Id: Ie0aafbc0cd4885e45420076f7d4aa8efc10d584a RTC:165369 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/34059 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Matt Derksen <v2cibmd@us.ibm.com> Reviewed-by: Martin Gloff <mgloff@us.ibm.com> Reviewed-by: Prachi Gupta <pragupta@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/intr')
-rw-r--r--src/usr/intr/intrrp.C9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/usr/intr/intrrp.C b/src/usr/intr/intrrp.C
index 47854c043..d84f542ab 100644
--- a/src/usr/intr/intrrp.C
+++ b/src/usr/intr/intrrp.C
@@ -85,15 +85,18 @@ errlHndl_t IntrRp::resetIntpForMpipl()
do{
TARGETING::TargetHandleList l_funcProcs;
+ TARGETING::Target* masterProc = NULL;
+ TARGETING::targetService().masterProcChipTargetHandle( masterProc );
+
getAllChips(l_funcProcs, TYPE_PROC);
//Need to make sure we have all of the functional procs in iv_chipList
- for(auto & l_procChip : l_funcProcs)
+ for(const auto & l_procChip : l_funcProcs)
{
- intr_hdlr_t* l_procIntrHdlr = new intr_hdlr_t(l_procChip);
//make sure it is not the master, as master has already been added
- if (l_procIntrHdlr != iv_masterHdlr)
+ if (l_procChip != masterProc)
{
+ intr_hdlr_t* l_procIntrHdlr = new intr_hdlr_t(l_procChip);
TRACFCOMP(g_trac_intr, "IntrRp::resetIntpForMpipl() Adding slave proc %lx to list of chips.", get_huid(l_procChip));
iv_chipList.push_back(l_procIntrHdlr);
// Set the common Interrupt BAR Scom Registers for the proc
OpenPOWER on IntegriCloud