OSDN Git Service

arm64: head: move assignment of idmap_t0sz to C code
authorArd Biesheuvel <ardb@kernel.org>
Fri, 24 Jun 2022 15:06:33 +0000 (17:06 +0200)
committerWill Deacon <will@kernel.org>
Fri, 24 Jun 2022 16:18:09 +0000 (17:18 +0100)
commite8d13cced5c5038cc93de9561cf2cb4f22205061
tree7277fb3e279b3243224508328f57790bd72b32dd
parent0d9b1ffefabee93727bae68201593fac80a79002
arm64: head: move assignment of idmap_t0sz to C code

Setting idmap_t0sz involves fiddling with the caches if done with the
MMU off. Since we will be creating an initial ID map with the MMU and
caches off, and the permanent ID map with the MMU and caches on, let's
move this assignment of idmap_t0sz out of the startup code, and replace
it with a macro that simply issues the three instructions needed to
calculate the value wherever it is needed before the MMU is turned on.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20220624150651.1358849-4-ardb@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/include/asm/assembler.h
arch/arm64/include/asm/mmu_context.h
arch/arm64/kernel/head.S
arch/arm64/mm/mmu.c
arch/arm64/mm/proc.S