|
|
@@ -118,13 +118,19 @@ int __init early_init_dt_scan_fw_dump(unsigned long node,
|
|
|
|
|
|
/*
|
|
|
* If fadump is registered, check if the memory provided
|
|
|
- * falls within boot memory area.
|
|
|
+ * falls within boot memory area and reserved memory area.
|
|
|
*/
|
|
|
-int is_fadump_boot_memory_area(u64 addr, ulong size)
|
|
|
+int is_fadump_memory_area(u64 addr, ulong size)
|
|
|
{
|
|
|
+ u64 d_start = fw_dump.reserve_dump_area_start;
|
|
|
+ u64 d_end = d_start + fw_dump.reserve_dump_area_size;
|
|
|
+
|
|
|
if (!fw_dump.dump_registered)
|
|
|
return 0;
|
|
|
|
|
|
+ if (((addr + size) > d_start) && (addr <= d_end))
|
|
|
+ return 1;
|
|
|
+
|
|
|
return (addr + size) > RMA_START && addr <= fw_dump.boot_memory_size;
|
|
|
}
|
|
|
|