summaryrefslogtreecommitdiffstats
path: root/src/include/usr/targeting/common
diff options
context:
space:
mode:
authorJaymes Wilks <mjwilks@us.ibm.com>2017-07-07 14:46:34 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-07-24 16:10:46 -0400
commitc0fe969256eb9509c184b2a2cdeba39c12ceaebb (patch)
treeda0344423a822d08056638b530d1f9e0491567d0 /src/include/usr/targeting/common
parentcf20b92e8e08cef8e287db1c9c70cc99c1471113 (diff)
downloadtalos-hostboot-c0fe969256eb9509c184b2a2cdeba39c12ceaebb.tar.gz
talos-hostboot-c0fe969256eb9509c184b2a2cdeba39c12ceaebb.zip
Persistent read/write attribute checking for hostboot runtime
Adds support for checking persistent read/write attributes just prior to runtime attribute copy to reserved memory. Change-Id: I848a2d8149cf3f1d17ed7bf195256f7f168a1f29 RTC:163084 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/42969 Reviewed-by: Michael Baiocchi <mbaiocch@us.ibm.com> Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com> Tested-by: Jenkins Server <pfd-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> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr/targeting/common')
-rw-r--r--src/include/usr/targeting/common/target.H11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/include/usr/targeting/common/target.H b/src/include/usr/targeting/common/target.H
index 0681da27f..f9ba6c346 100644
--- a/src/include/usr/targeting/common/target.H
+++ b/src/include/usr/targeting/common/target.H
@@ -787,6 +787,17 @@ void handleRangeCheckFailure(const Target* i_pTarget,
const ATTRIBUTE_ID i_attr,
const uint64_t i_outOfRangeValue);
+// Function to handle validation of all persistent r/w attributes for runtime
+/**
+ * @brief Attempts to get all persistent r/w attributes for a given target.
+ * Those that are non-present for that target are skipped. All others
+ * are checked for valid enum values and ranges.
+ *
+ * @param[in] i_pTarget The target for which all attributes will be checked.
+ * Cannot be nullptr.
+ */
+void validateAllRwNvAttr(const Target* i_pTarget);
+
// The following #include ensures that persistent read/write attributes are
// value-checked for validity upon calling getAttr. This is done via
OpenPOWER on IntegriCloud