diff options
author | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2015-06-01 13:40:32 +0200 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2015-06-02 17:31:33 +0200 |
commit | 61bd93ce801bb6df36eda257a9d2d16c02863cdd (patch) | |
tree | ca3bb08e7b2e8223ca612e51fd44c4e0fd7e1670 /arch/arm64/include/asm/mmu.h | |
parent | of/fdt: split off FDT self reservation from memreserve processing (diff) | |
download | linux-61bd93ce801bb6df36eda257a9d2d16c02863cdd.tar.xz linux-61bd93ce801bb6df36eda257a9d2d16c02863cdd.zip |
arm64: use fixmap region for permanent FDT mapping
Currently, the FDT blob needs to be in the same 512 MB region as
the kernel, so that it can be mapped into the kernel virtual memory
space very early on using a minimal set of statically allocated
translation tables.
Now that we have early fixmap support, we can relax this restriction,
by moving the permanent FDT mapping to the fixmap region instead.
This way, the FDT blob may be anywhere in memory.
This also moves the vetting of the FDT to mmu.c, since the early
init code in head.S does not handle mapping of the FDT anymore.
At the same time, fix up some comments in head.S that have gone stale.
Reviewed-by: Mark Rutland <mark.rutland@arm.com>
Tested-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/include/asm/mmu.h')
-rw-r--r-- | arch/arm64/include/asm/mmu.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm64/include/asm/mmu.h b/arch/arm64/include/asm/mmu.h index 3d311761e3c2..79fcfb048884 100644 --- a/arch/arm64/include/asm/mmu.h +++ b/arch/arm64/include/asm/mmu.h @@ -34,5 +34,6 @@ extern void init_mem_pgprot(void); extern void create_pgd_mapping(struct mm_struct *mm, phys_addr_t phys, unsigned long virt, phys_addr_t size, pgprot_t prot); +extern void *fixmap_remap_fdt(phys_addr_t dt_phys); #endif |