diff options
Diffstat (limited to 'platforms')
-rw-r--r-- | platforms/astbmc/common.c | 6 | ||||
-rw-r--r-- | platforms/ibm-fsp/common.c | 6 |
2 files changed, 12 insertions, 0 deletions
diff --git a/platforms/astbmc/common.c b/platforms/astbmc/common.c index 9ce22b3..bfbba2d 100644 --- a/platforms/astbmc/common.c +++ b/platforms/astbmc/common.c @@ -504,6 +504,12 @@ void astbmc_exit(void) ipmi_wdt_final_reset(); ipmi_set_boot_count(); + + /* + * Booting into an OS that may not call back into skiboot for + * some time. Ensure all IPMI messages are processed first. + */ + ipmi_flush(); } static const struct bmc_sw_config bmc_sw_ami = { diff --git a/platforms/ibm-fsp/common.c b/platforms/ibm-fsp/common.c index 4a723b2..f289d1f 100644 --- a/platforms/ibm-fsp/common.c +++ b/platforms/ibm-fsp/common.c @@ -186,6 +186,12 @@ void ibm_fsp_exit(void) /* Clear SRCs on the op-panel when Linux starts */ op_panel_clear_src(); + + /* + * Booting into an OS that may not call back into skiboot for + * some time. Ensure all IPMI messages are processed first. + */ + ipmi_flush(); } int64_t ibm_fsp_cec_reboot(void) |