arm64: kdump: Remove custom linux,elfcorehdr handling
Remove the architecture-specific code for handling the "linux,elfcorehdr" property under the "/chosen" node in DT, as the platform-agnostic handling in the FDT core code already takes care of this. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/3b8f801f9b92066855e87f3079fafc153ab20f69.1628670468.git.geert+renesas@glider.be
This commit is contained in:
parent
2931ea847d
commit
57beb9bd18
@ -124,57 +124,6 @@ static void __init reserve_crashkernel(void)
|
||||
}
|
||||
#endif /* CONFIG_KEXEC_CORE */
|
||||
|
||||
#ifdef CONFIG_CRASH_DUMP
|
||||
static int __init early_init_dt_scan_elfcorehdr(unsigned long node,
|
||||
const char *uname, int depth, void *data)
|
||||
{
|
||||
const __be32 *reg;
|
||||
int len;
|
||||
|
||||
if (depth != 1 || strcmp(uname, "chosen") != 0)
|
||||
return 0;
|
||||
|
||||
reg = of_get_flat_dt_prop(node, "linux,elfcorehdr", &len);
|
||||
if (!reg || (len < (dt_root_addr_cells + dt_root_size_cells)))
|
||||
return 1;
|
||||
|
||||
elfcorehdr_addr = dt_mem_next_cell(dt_root_addr_cells, ®);
|
||||
elfcorehdr_size = dt_mem_next_cell(dt_root_size_cells, ®);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* reserve_elfcorehdr() - reserves memory for elf core header
|
||||
*
|
||||
* This function reserves the memory occupied by an elf core header
|
||||
* described in the device tree. This region contains all the
|
||||
* information about primary kernel's core image and is used by a dump
|
||||
* capture kernel to access the system memory on primary kernel.
|
||||
*/
|
||||
static void __init reserve_elfcorehdr(void)
|
||||
{
|
||||
of_scan_flat_dt(early_init_dt_scan_elfcorehdr, NULL);
|
||||
|
||||
if (!elfcorehdr_size)
|
||||
return;
|
||||
|
||||
if (memblock_is_region_reserved(elfcorehdr_addr, elfcorehdr_size)) {
|
||||
pr_warn("elfcorehdr is overlapped\n");
|
||||
return;
|
||||
}
|
||||
|
||||
memblock_reserve(elfcorehdr_addr, elfcorehdr_size);
|
||||
|
||||
pr_info("Reserving %lldKB of memory at 0x%llx for elfcorehdr\n",
|
||||
elfcorehdr_size >> 10, elfcorehdr_addr);
|
||||
}
|
||||
#else
|
||||
static void __init reserve_elfcorehdr(void)
|
||||
{
|
||||
}
|
||||
#endif /* CONFIG_CRASH_DUMP */
|
||||
|
||||
/*
|
||||
* Return the maximum physical address for a zone accessible by the given bits
|
||||
* limit. If DRAM starts above 32-bit, expand the zone to the maximum
|
||||
@ -395,8 +344,6 @@ void __init arm64_memblock_init(void)
|
||||
|
||||
early_init_fdt_scan_reserved_mem();
|
||||
|
||||
reserve_elfcorehdr();
|
||||
|
||||
high_memory = __va(memblock_end_of_DRAM() - 1) + 1;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user