From 7f75425745f082115c2841199160bc8c7a6c1313 Mon Sep 17 00:00:00 2001 From: Elizabeth Liner Date: Sun, 29 Oct 2017 20:18:43 -0500 Subject: Moving SBE threshold handler to its own file The SBE extract code is being moved to a class structure, and since the FSM uses function pointers, we cannot easily implement a finite state machine. Change-Id: I380e53f0a78662c4f5dfd9e8db3cb6d4761a0be3 RTC:180961 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/48996 Tested-by: Jenkins Server Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Tested-by: FSP CI Jenkins Reviewed-by: Martin Gloff Reviewed-by: William G. Hoffa --- src/include/usr/sbeio/sbe_extract_rc_handler.H | 67 -------------------------- 1 file changed, 67 deletions(-) (limited to 'src/include') diff --git a/src/include/usr/sbeio/sbe_extract_rc_handler.H b/src/include/usr/sbeio/sbe_extract_rc_handler.H index ab83ee7ae..db22267f5 100644 --- a/src/include/usr/sbeio/sbe_extract_rc_handler.H +++ b/src/include/usr/sbeio/sbe_extract_rc_handler.H @@ -36,73 +36,6 @@ enum SBE_REG_RETURN SBE_FAILED_TO_BOOT = 2, // SBE has failed to boot }; -/*************************** State declarations ***************************/ -/** - * @brief This is the initial retry. If we get to a failure, we attempt to - * reboot the SBE on the other side. - * - * @param[in] i_target - current proc target - * @param[in] i_orig_error - Original SBE error - * - * @return - pass(0) or specific returned SBE error - */ -P9_EXTRACT_SBE_RC::RETURN_ACTION same_side_retry_state( - TARGETING::Target * i_target,uint8_t i_orig_error); - -/** - * @brief This is the other side retry. If we fail twice on the same side - * We attempt to reboot the SBE on the other proc. - * - * @param[in] i_target - current proc target - * @param[in] i_orig_error - Original SBE error - * - * @return - pass(0) or specific returned SBE error - */ -P9_EXTRACT_SBE_RC::RETURN_ACTION other_side_state( - TARGETING::Target * i_target,uint8_t i_orig_error); - -/** - * @brief This is the working (passing) exit state. This state occurs when - * we start an SBE correctly within the threshold FSM. Depending on - * which state we come from, there are some different functions. - * - * @param[in] i_target - current proc target - * @param[in] i_orig_error - Original SBE error - * - * @return - pass(0) or specific returned SBE error - */ -P9_EXTRACT_SBE_RC::RETURN_ACTION working_exit_state( - TARGETING::Target * i_target,uint8_t i_orig_error); - -/** - * @brief This is the failing exit state. This state only occurs when we - * fail on every retry. In this case we look at where we came from - * and either escalate to REIPL_BKP_SEEPROM or we gard and callout - * this proc and return to complete the istep. - * - * @param[in] i_target - current proc target - * @param[in] i_orig_error - Original SBE error - * - * @return - pass(0) or specific returned SBE error - */ -P9_EXTRACT_SBE_RC::RETURN_ACTION failing_exit_state( - TARGETING::Target * i_target,uint8_t i_orig_error); - -/** - * @brief This is the main function of the finite state machine. It handles - * the outputs, current state and next state transitions. - * - * @param[in] i_procSide - Which side we want to try to reboot. - * false/true: current/other - * @param[in] i_target - Current Proc target - * @param[in] i_currentAction - Most recent return value from HWP - * @param[in] i_previousError - The previous return value from HWP - */ -void sbe_threshold_handler( bool i_procSide, - TARGETING::Target * i_target, - P9_EXTRACT_SBE_RC::RETURN_ACTION i_currentAction, - uint8_t i_previousError ); - /** * @brief This is the switch case that handles the different actions needed for * each output of the proc_extract_sbe_rc HWP. -- cgit v1.2.1