summaryrefslogtreecommitdiffstats
path: root/src/usr/initservice
diff options
context:
space:
mode:
authorPrasad Bg Ranganath <prasadbgr@in.ibm.com>2015-11-23 05:48:53 -0600
committerStephen Cprek <smcprek@us.ibm.com>2016-07-18 15:32:38 -0500
commitb3f6347ef52994c4d37ac5f361b21fe4d4658462 (patch)
tree0611424ce648e024d82b9edad34b780035d82b16 /src/usr/initservice
parent99bd8d04615d1a633a9adaaf64a58787ad753527 (diff)
downloadtalos-hostboot-b3f6347ef52994c4d37ac5f361b21fe4d4658462.tar.gz
talos-hostboot-b3f6347ef52994c4d37ac5f361b21fe4d4658462.zip
Avoid visible errors during SBE update
RTC: 135822 Backport: yes Change-Id: I9581abc5f1d0cb4812743190c9914b11c63c0089 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/764 Tested-by: Jenkins Server <pfd-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/usr/initservice')
-rw-r--r--src/usr/initservice/istepdispatcher/istepdispatcher.C40
1 files changed, 14 insertions, 26 deletions
diff --git a/src/usr/initservice/istepdispatcher/istepdispatcher.C b/src/usr/initservice/istepdispatcher/istepdispatcher.C
index e74699d38..852907226 100644
--- a/src/usr/initservice/istepdispatcher/istepdispatcher.C
+++ b/src/usr/initservice/istepdispatcher/istepdispatcher.C
@@ -31,7 +31,6 @@
*
*/
-
/******************************************************************************/
// Includes
/******************************************************************************/
@@ -67,8 +66,10 @@
#include <pnor/pnorif.H>
#include <ipmi/ipmiwatchdog.H> //IPMI watchdog timer
#include <ipmi/ipmipowerstate.H> //IPMI System ACPI Power State
+#include <ipmi/ipmichassiscontrol.H>
#include <config.h>
#include <ipmi/ipmisensor.H>
+#include <ipmi/ipmiif.H>
#include <initservice/bootconfigif.H>
#include <trace/trace.H>
@@ -531,11 +532,6 @@ errlHndl_t IStepDispatcher::executeAllISteps()
err = failedDueToDeconfig(istep, substep,
newIstep, newSubstep);
}
- // Otherwise shut down. The BMC watchdog reset will
- // cause the system to reboot. The BMC allows 2
- // boot attempts from the primary side of PNOR and 1
- // from the golden side. After that the system would
- // shut down and halt.
else
{
#ifdef CONFIG_BMC_IPMI
@@ -572,34 +568,26 @@ errlHndl_t IStepDispatcher::executeAllISteps()
"not increment reboot count.");
}
- // @TODO RTC:124679 - Remove Once BMC Monitors
- // Shutdown Attention
- // Set Watchdog Timer before calling doShutdown()
- TRACFCOMP( g_trac_initsvc,"executeAllISteps: "
- "Set Watch Dog Timer To %d Seconds",
- SET_WD_TIMER_IN_SECS);
-
- err = IPMIWATCHDOG::setWatchDogTimer(
- SET_WD_TIMER_IN_SECS, // new time
- static_cast<uint8_t>
- (IPMIWATCHDOG::DO_NOT_STOP |
- IPMIWATCHDOG::BIOS_FRB2), // default
- IPMIWATCHDOG::TIMEOUT_HARD_RESET);
+ // Request BMC to do power cycle that sends shutdown
+ // and reset the host
+ err = IPMI::chassisControl
+ (IPMI::CHASSIS_POWER_CYCLE);
+ if (err)
+ {
+ TRACFCOMP(g_trac_initsvc, ERR_MRK
+ "FAIL executing chassisControl command");
+ break;
+ }
#endif
#ifdef CONFIG_CONSOLE
- #ifdef CONFIG_BMC_IPMI
- CONSOLE::displayf(NULL,
- "System Shutting Down In %d Seconds "
- "To Perform Reconfiguration\n",
- SET_WD_TIMER_IN_SECS);
- #else
CONSOLE::displayf(NULL,
"System Shutting Down "
"To Perform Reconfiguration\n");
- #endif
CONSOLE::flush();
#endif
+ #ifndef CONFIG_BMC_IPMI
shutdownDuringIpl();
+ #endif
}
}
// else return the error from doIstep
OpenPOWER on IntegriCloud