summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authoraravnair-in <aravindnair@in.ibm.com>2018-06-07 07:09:04 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-06-08 10:04:55 -0400
commit0c9579f525f4da84c037452b1a28fdf404d8dd4d (patch)
treefdff2740e3141211aae2d98e7dca45cc5472e1ce /src
parent3e4082b28d2afb5341ea8a7a1dda642eb4461d53 (diff)
downloadtalos-hostboot-0c9579f525f4da84c037452b1a28fdf404d8dd4d.tar.gz
talos-hostboot-0c9579f525f4da84c037452b1a28fdf404d8dd4d.zip
Deconfig by association rule for SMPGROUP targets
If the two SMPGROUP targets under an OBUS target is deconfigured, the parent OBUS target also needs to be deconfigured by association. Change-Id: Ifb0fcf46a8c65a2655eade04ae7035d228bca92b Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60093 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-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> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src')
-rw-r--r--src/usr/hwas/common/deconfigGard.C22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/usr/hwas/common/deconfigGard.C b/src/usr/hwas/common/deconfigGard.C
index ff83da430..5ccbe2040 100644
--- a/src/usr/hwas/common/deconfigGard.C
+++ b/src/usr/hwas/common/deconfigGard.C
@@ -2014,6 +2014,28 @@ void DeconfigGard::_deconfigureByAssoc(
break;
} // TYPE_NPU
+ case TYPE_SMPGROUP:
+ {
+ //OBUS with no good SMPGROUP should be de-configured
+ TargetHandleList pObusList;
+ getParentAffinityTargetsByState(pObusList,
+ &i_target, CLASS_UNIT, TYPE_OBUS,
+ UTIL_FILTER_PRESENT);
+
+ HWAS_ASSERT((pObusList.size() == 1),
+ "HWAS _deconfigureByAssoc: pObusList != 1");
+ Target *l_targetObus = pObusList[0];
+
+ if ((l_targetObus->getAttr<ATTR_OPTICS_CONFIG_MODE>() ==
+ OPTICS_CONFIG_MODE_SMP) &&
+ (!anyChildFunctional(*l_targetObus)))
+ {
+ _deconfigureTarget(*l_targetObus, i_errlEid, NULL,
+ i_deconfigRule);
+ }
+
+ break;
+ } // TYPE_SMPGROUP
default:
// no action
break;
OpenPOWER on IntegriCloud