aboutsummaryrefslogtreecommitdiff
path: root/platforms
diff options
context:
space:
mode:
Diffstat (limited to 'platforms')
-rw-r--r--platforms/astbmc/common.c6
-rw-r--r--platforms/ibm-fsp/common.c6
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)