summaryrefslogtreecommitdiffstats
path: root/src/usr/targeting
diff options
context:
space:
mode:
authorMatt Derksen <mderkse1@us.ibm.com>2018-09-18 08:42:45 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-11-09 15:05:33 -0600
commit2dfa56b49d0ea5cbabea1a85c68964e626f3d345 (patch)
treee9ef03faea37586611d0e30b6b9821a050570b36 /src/usr/targeting
parent55c7c54ca26a41d350098096ebb437d8898f7040 (diff)
downloadtalos-hostboot-2dfa56b49d0ea5cbabea1a85c68964e626f3d345.tar.gz
talos-hostboot-2dfa56b49d0ea5cbabea1a85c68964e626f3d345.zip
Deconfig parent rollup simplified
Create a common deconfiguration rollup to parent. A new attribute was created to indicate when to stop rolling up the parent branch Change-Id: I80954081527f29bc466622d30644115a96be385f RTC:193268 Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/66444 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: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/targeting')
-rw-r--r--src/usr/targeting/common/utilFilter.C32
-rw-r--r--src/usr/targeting/common/xmltohb/attribute_types.xml15
-rw-r--r--src/usr/targeting/common/xmltohb/target_types.xml59
3 files changed, 102 insertions, 4 deletions
diff --git a/src/usr/targeting/common/utilFilter.C b/src/usr/targeting/common/utilFilter.C
index 2be7cdabb..3675dfb04 100644
--- a/src/usr/targeting/common/utilFilter.C
+++ b/src/usr/targeting/common/utilFilter.C
@@ -455,6 +455,38 @@ const Target * getParentChip( const Target * i_pChiplet )
return l_pChip;
}
+Target * getImmediateParentByAffinity(const Target * i_child )
+{
+ Target * l_parent = NULL;
+
+ // Create a vector of TARGETING::Target pointers
+ TARGETING::TargetHandleList l_chipList;
+
+ // Get parent
+ TARGETING::targetService().getAssociated(l_chipList, i_child,
+ TARGETING::TargetService::PARENT_BY_AFFINITY,
+ TARGETING::TargetService::IMMEDIATE, NULL);
+
+ if (l_chipList.size() == 1)
+ {
+ l_parent = l_chipList[0];
+ }
+ else if (l_chipList.size() == 0)
+ {
+ TARG_ERR("Failed to find a parent target for huid=%.8X",
+ TARGETING::get_huid(i_child));
+ }
+ else
+ {
+ TARG_ERR("Found %d parent targets for huid=%.8X, only expected to find 1",
+ l_chipList.size(),
+ TARGETING::get_huid(i_child));
+ }
+
+ return l_parent;
+}
+
+
Target * getParent( const Target * i_unit , TARGETING::TYPE &i_pType)
{
Target * l_parent = NULL;
diff --git a/src/usr/targeting/common/xmltohb/attribute_types.xml b/src/usr/targeting/common/xmltohb/attribute_types.xml
index 635455761..0b1b9bf9b 100644
--- a/src/usr/targeting/common/xmltohb/attribute_types.xml
+++ b/src/usr/targeting/common/xmltohb/attribute_types.xml
@@ -5072,6 +5072,21 @@
<attribute>
<description>
+ Do not allow deconfiguration of this target to rollup to its parent
+ 0x00 (false) = Allow parent deconfiguration rollup (default setting)
+ 0x01 (true) = Do not allow parent deconfiguration rollup
+ </description>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ <persistency>volatile-zeroed</persistency>
+ <readable/>
+ <simpleType>
+ <uint8_t/>
+ </simpleType>
+ <no_export/>
+ </attribute>
+
+ <attribute>
+ <description>
Physical entity path of the target's associated pervasive target
</description>
<id>PARENT_PERVASIVE</id>
diff --git a/src/usr/targeting/common/xmltohb/target_types.xml b/src/usr/targeting/common/xmltohb/target_types.xml
index 5a7533618..903d749e3 100644
--- a/src/usr/targeting/common/xmltohb/target_types.xml
+++ b/src/usr/targeting/common/xmltohb/target_types.xml
@@ -58,6 +58,9 @@
<id>ORDINAL_ID</id>
</attribute>
<attribute>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>PHYS_PATH</id>
</attribute>
<attribute>
@@ -129,6 +132,10 @@
<id>MRU_ID</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>POSITION</id>
</attribute>
<attribute>
@@ -185,6 +192,10 @@
<id>MODEL</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>PHYS_PATH</id>
<default>physical:sys-0/node-0/bmc-0</default>
</attribute>
@@ -756,6 +767,10 @@
<id>MODEL</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>TPM_INFO</id>
</attribute>
<attribute>
@@ -844,6 +859,10 @@
<id>MSS_VOLT_VPP_SLOPE_EFF_CONFIG</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>START_MEM_ADDRESS_FOR_PAYLOAD_TCE_TOKEN</id>
</attribute>
<attribute>
@@ -1720,6 +1739,10 @@
<id>HWAS_STATE_CHANGED_SUBSCRIPTION_MASK</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>PARENT_PERVASIVE</id>
</attribute>
<attribute>
@@ -1842,6 +1865,10 @@
<id>HWAS_STATE_CHANGED_SUBSCRIPTION_MASK</id>
</attribute>
<attribute>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ <default>1</default>
+ </attribute>
+ <attribute>
<id>PARENT_PERVASIVE</id>
</attribute>
<attribute>
@@ -1945,6 +1972,10 @@
<id>MSS_VOLT_VPP_OFFSET_MILLIVOLTS</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>PARENT_PERVASIVE</id>
</attribute>
<attribute>
@@ -2321,6 +2352,10 @@
<id>MFG_WRAP_TEST_ABUS_LINKS_SET</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>PARENT_PERVASIVE</id>
</attribute>
<attribute>
@@ -2504,14 +2539,14 @@
<id>DECONFIG_GARDABLE</id>
</attribute>
<attribute>
- <default>1</default>
- <id>DECONFIG_GARDABLE</id>
- </attribute>
- <attribute>
<default>0x00000031</default>
<id>HWAS_STATE_CHANGED_SUBSCRIPTION_MASK</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>PARENT_PERVASIVE</id>
</attribute>
<attribute>
@@ -2615,6 +2650,10 @@
<id>DECONFIG_GARDABLE</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<default>5</default>
<id>PG</id>
</attribute>
@@ -2723,6 +2762,10 @@
<id>DECONFIG_GARDABLE</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<default>PPE</default>
<id>TYPE</id>
</attribute>
@@ -2766,6 +2809,10 @@
<id>DECONFIG_GARDABLE</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<default>SBE</default>
<id>TYPE</id>
</attribute>
@@ -2817,6 +2864,10 @@
<id>HWAS_STATE_CHANGED_SUBSCRIPTION_MASK</id>
</attribute>
<attribute>
+ <default>1</default>
+ <id>PARENT_DECONFIG_DISABLED</id>
+ </attribute>
+ <attribute>
<id>PARENT_PERVASIVE</id>
</attribute>
<attribute>
OpenPOWER on IntegriCloud