summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorLateef Quraishi <lateef@us.ibm.com>2016-06-16 14:11:35 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2016-07-12 16:32:33 -0400
commit7cc6af5138f01e530a47789cc74c4672923da2de (patch)
treec2b1aa51c3aa9d9ad3db35b4d9ceb82cbad2b4dd /src/include
parentf4091933db2577deb6de3b95b3af7b16d20ea796 (diff)
downloadtalos-hostboot-7cc6af5138f01e530a47789cc74c4672923da2de.tar.gz
talos-hostboot-7cc6af5138f01e530a47789cc74c4672923da2de.zip
Deconfig-by-association update
New De-Config Rules: - EX with no good cores be de-configured. - EQ with no good EXs be de-configured - In fused core mode, cores must be de-configured in pairs Change-Id: I74ffa50055287589c58faff3d788b6a71575440e RTC: 130099 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/25955 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Elizabeth K. Liner <eliner@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/usr/hwas/common/deconfigGard.H19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/include/usr/hwas/common/deconfigGard.H b/src/include/usr/hwas/common/deconfigGard.H
index 4e6f51cd9..a97dabd6d 100644
--- a/src/include/usr/hwas/common/deconfigGard.H
+++ b/src/include/usr/hwas/common/deconfigGard.H
@@ -155,6 +155,10 @@ public:
DECONFIGURED_BY_NO_PARENT_MBA_OR_MCA,
CONFIGURED_BY_RESOURCE_RECOVERY, // BASE | 0x0E
+ //
+ DECONFIGURED_BY_EQ_DECONFIG, // BASE | 0x0F
+ DECONFIGURED_BY_EX_DECONFIG, // BASE | 0x10
+ DECONFIGURED_BY_CORE_DECONFIG, // BASE | 0x11
// mask - these bits mean it's a PLID and not an enum
DECONFIGURED_BY_PLID_MASK = 0xFFFF0000,
@@ -585,6 +589,21 @@ private:
static void _clearFCODeconfigure(
TARGETING::ConstTargetHandle_t i_nodeTarget);
+ /**
+ * @brief Return functional state of children
+ *
+ * Called by _deconfigureByAssoc().
+ * This function gets list of all children. if state of any
+ * child is functional then returns true.
+ *
+ * @param[in] Pointer parent target id
+ *
+ * @return true if any child state is functional.
+ *
+ */
+ bool anyChildFunctional(
+ TARGETING::Target & i_parent);
+
public:
/**
OpenPOWER on IntegriCloud