From: David Daney <david.daney@xxxxxxxxxx> In order to extract NUMA information from the device tree, we need to have the tree in its unflattened form. Move the call to unflatten_device_tree() into paging_init(). This puts it before the call to bootmem_init(), which is where the NUMA information is extracted. Signed-off-by: David Daney <david.daney@xxxxxxxxxx> --- arch/arm64/kernel/setup.c | 7 +++---- arch/arm64/mm/mmu.c | 5 +++++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c index 8119479..feae073 100644 --- a/arch/arm64/kernel/setup.c +++ b/arch/arm64/kernel/setup.c @@ -328,12 +328,11 @@ void __init setup_arch(char **cmdline_p) early_ioremap_reset(); - if (acpi_disabled) { - unflatten_device_tree(); + if (acpi_disabled) psci_dt_init(); - } else { + else psci_acpi_init(); - } + xen_early_init(); cpu_read_bootcpu_ops(); diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c index 58faeaa..ee6e6b0 100644 --- a/arch/arm64/mm/mmu.c +++ b/arch/arm64/mm/mmu.c @@ -29,6 +29,8 @@ #include <linux/io.h> #include <linux/slab.h> #include <linux/stop_machine.h> +#include <linux/acpi.h> +#include <linux/of_fdt.h> #include <asm/cputype.h> #include <asm/fixmap.h> @@ -459,6 +461,9 @@ void __init paging_init(void) map_mem(); fixup_executable(); + if (acpi_disabled) + unflatten_device_tree(); + /* allocate the zero page. */ zero_page = early_alloc(PAGE_SIZE); -- 1.8.3.1 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html