From e0a1b4a4f6d9bd7927fddcc508d24f9218dfbb13 Mon Sep 17 00:00:00 2001 From: Dean Sanner Date: Thu, 27 Apr 2017 09:32:02 -0500 Subject: Add support for remembering deconfigs without GUARD Currently on reconfig reboots only parts that are GUARDed are remembered and reapplied. - Add suport for a semi persisent PNOR partition, HB_VOLATILE which Hostboot uses to keep track of the reconfig reboots vs power off - Add a new GUARD type specifically for reconfig loops - Add RECALL_DECONFIG_ON_RECONFIG config flag to control what gets added to GUARD partition - During boot will add/clear guard records on deconfig based on config flags and semi persisent state. Change-Id: Iec636058cde8095c0c4216d1f95ae4fda554395e Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/39780 Tested-by: Jenkins Server Tested-by: Jenkins OP Build CI Reviewed-by: William G. Hoffa Tested-by: FSP CI Jenkins Reviewed-by: Stephen M. Cprek Reviewed-by: Daniel M. Crowell --- src/include/usr/hwas/common/deconfigGard.H | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'src/include/usr/hwas/common/deconfigGard.H') diff --git a/src/include/usr/hwas/common/deconfigGard.H b/src/include/usr/hwas/common/deconfigGard.H index 0c133f427..2cdc5fd26 100644 --- a/src/include/usr/hwas/common/deconfigGard.H +++ b/src/include/usr/hwas/common/deconfigGard.H @@ -59,6 +59,19 @@ namespace HWAS */ errlHndl_t collectGard(const TARGETING::PredicateBase *i_pPredicate = NULL); +/** + * @brief clearGardByType Common HWAS function to clear all GARD records of + * given type + * + * It will call into hwas platform-specific functions. + * + * @param i_type Type of records to be cleared + * + * @return errlHndl_t valid errlHndl_t handle if there was an error + * NULL if no errors; + */ +errlHndl_t clearGardByType(const GARD_ErrorType i_type); + /** * @brief Returns a reference to the DeconfigGard singleton. */ @@ -238,6 +251,15 @@ public: */ errlHndl_t clearGardRecordsForReplacedTargets(); + /** + * @brief Clears GARD Records that match requested error type + * + * @param i_type error type to clear + * + * @return errlHndl_t. Error log handle. + */ + errlHndl_t clearGardRecordsByType(GARD_ErrorType i_type); + /** * @brief Deconfigures Targets that have GARD Records in preparation to IPL. * -- cgit v1.2.1