diff options
author | Will Deacon <will.deacon@arm.com> | 2011-09-30 11:43:29 +0100 |
---|---|---|
committer | Will Deacon <will.deacon@arm.com> | 2011-12-06 14:04:14 +0000 |
commit | 8903826d0cd99aed9267e792d38284cf3092042b (patch) | |
tree | ec75fed09f62c215e2057d8c5e82c343e627c8fe /arch/arm/include/asm/pgtable.h | |
parent | ba8bb18a03f8c7508565c385576a5431a4ad804a (diff) | |
download | op-kernel-dev-8903826d0cd99aed9267e792d38284cf3092042b.zip op-kernel-dev-8903826d0cd99aed9267e792d38284cf3092042b.tar.gz |
ARM: idmap: populate identity map pgd at init time using .init.text
When disabling and re-enabling the MMU, it is necessary to take out an
identity mapping for the code that manipulates the SCTLR in order to
avoid it disappearing from under our feet. This is useful when soft
rebooting and returning from CPU suspend.
This patch allocates a set of page tables during boot and populates them
with an identity mapping for the .idmap.text section. This means that
users of the identity map do not need to manage their own pgd and can
instead annotate their functions with __idmap or, in the case of assembly
code, place them in the correct section.
Acked-by: Dave Martin <dave.martin@linaro.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Tested-by: Lorenzo Pieralisi <Lorenzo.Pieralisi@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Diffstat (limited to 'arch/arm/include/asm/pgtable.h')
-rw-r--r-- | arch/arm/include/asm/pgtable.h | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/arch/arm/include/asm/pgtable.h b/arch/arm/include/asm/pgtable.h index 9451dce..03893a5 100644 --- a/arch/arm/include/asm/pgtable.h +++ b/arch/arm/include/asm/pgtable.h @@ -346,9 +346,6 @@ static inline pte_t pte_modify(pte_t pte, pgprot_t newprot) #define pgtable_cache_init() do { } while (0) -void identity_mapping_add(pgd_t *, unsigned long, unsigned long); -void identity_mapping_del(pgd_t *, unsigned long, unsigned long); - #endif /* !__ASSEMBLY__ */ #endif /* CONFIG_MMU */ |