summaryrefslogtreecommitdiffstats
path: root/src/include/usr/sbe
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/usr/sbe')
-rw-r--r--src/include/usr/sbe/sbe_update.H12
-rw-r--r--src/include/usr/sbe/sbeif.H12
2 files changed, 24 insertions, 0 deletions
diff --git a/src/include/usr/sbe/sbe_update.H b/src/include/usr/sbe/sbe_update.H
index d907e57c9..f4dc648b7 100644
--- a/src/include/usr/sbe/sbe_update.H
+++ b/src/include/usr/sbe/sbe_update.H
@@ -541,6 +541,18 @@ namespace SBE
const uint64_t i_boundary,
uint8_t* o_dst);
+ /**
+ * @brief Read the version of code found on each of the SBE's seeproms
+ * and store values in sbeTargetState_t type
+ *
+ * @param[in] io_sbeState Struct holding SBE related information
+ * @pre it is expected that the member 'target' in the
+ * sbeTargetState_t struct is set prior to calling this function
+ *
+ * @return errlHndl_t if error, nullptr if no error
+ */
+ errlHndl_t getSeepromVersions(sbeTargetState_t& io_sbeState);
+
/**
* @brief Removes ECC from a block of code or data. Removes padding at
diff --git a/src/include/usr/sbe/sbeif.H b/src/include/usr/sbe/sbeif.H
index 0a5985253..3f69d8ff1 100644
--- a/src/include/usr/sbe/sbeif.H
+++ b/src/include/usr/sbe/sbeif.H
@@ -136,6 +136,18 @@ namespace SBE
SHA512_t o_hash,
const void * i_image_ptr = nullptr);
+ /**
+ * @brief Loop through all active processor targets and compare both sides of
+ * the processor's SBE's seeprom versions. Mark down in the attribute
+ * ATTR_HB_SBE_SEEPROM_VERSION_MATCH whether or not the versions match.
+ * This value is used later on to determine if it is safe to switch
+ * seeprom sides in the event that we attempt to recover the SBE from
+ * a failed state.
+ *
+ * @return errlHndl_t Error log handle on failure; otherwise nullptr
+ */
+ errlHndl_t querySbeSeepromVersions();
+
} //end namespace SBE
#endif /* _SBEIF_H */
OpenPOWER on IntegriCloud