diff options
-rw-r--r-- | hw/fsp/fsp-dump.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/hw/fsp/fsp-dump.c b/hw/fsp/fsp-dump.c index 47da342..3ea353a 100644 --- a/hw/fsp/fsp-dump.c +++ b/hw/fsp/fsp-dump.c @@ -822,11 +822,19 @@ static bool fsp_sys_dump_notify(uint32_t cmd_sub_mod, struct fsp_msg *msg) */ static void check_ipl_sys_dump(void) { - struct dt_node *dump_node; + struct dt_node *dump_node, *opal_node; uint32_t dump_id, dump_size; - if (proc_gen >= proc_gen_p9) - return; + if (proc_gen >= proc_gen_p9) { + opal_node = dt_find_by_path(dt_root, "ibm,opal"); + if (!opal_node) + return; + dump_node = dt_find_by_path(opal_node, "dump"); + if (!dump_node) + return; + if (dt_find_property(dump_node, "mpipl-boot")) + return; + } dump_node = dt_find_by_path(dt_root, "ipl-params/platform-dump"); if (!dump_node) |