linux/arch/arm64
Ard Biesheuvel 925a0eb480 arm64: mm: Add LPA2 support to phys<->pte conversion routines
In preparation for enabling LPA2 support, introduce the mask values for
converting between physical addresses and their representations in a
page table descriptor.

While at it, move the pte_to_phys asm macro into its only user, so that
we can freely modify it to use its input value register as a temp
register.

For LPA2, the PTE_ADDR_MASK contains two non-adjacent sequences of zero
bits, which means it no longer fits into the immediate field of an
ordinary ALU instruction. So let's redefine it to include the bits in
between as well, and only use it when converting from physical address
to PTE representation, where the distinction does not matter. Also
update the name accordingly to emphasize this.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20240214122845.2033971-75-ardb+git@google.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2024-02-16 12:42:38 +00:00
..
boot Samsung fixes for v6.8 2024-01-25 18:23:10 +01:00
configs arm64: defconfig reorder config lines 2024-01-11 09:34:42 +01:00
crypto crypto: arm64/sm4 - Remove cfb(sm4) 2023-12-08 11:59:45 +08:00
hyperv
include arm64: mm: Add LPA2 support to phys<->pte conversion routines 2024-02-16 12:42:38 +00:00
kernel arm64: mm: Add feature override support for LVA 2024-02-16 12:42:36 +00:00
kvm arm64: mm: Use 48-bit virtual addressing for the permanent ID map 2024-02-16 12:42:34 +00:00
lib
mm arm64: mm: Add LPA2 support to phys<->pte conversion routines 2024-02-16 12:42:38 +00:00
net
tools arm64: mm: Handle LVA support as a CPU feature 2024-02-16 12:42:36 +00:00
xen
Kbuild
Kconfig arm64: mm: Wire up TCR.DS bit to PTE shareability fields 2024-02-16 12:42:38 +00:00
Kconfig.debug
Kconfig.platforms
Makefile arm64: vdso32: Remove unused vdso32-offsets.h 2024-01-30 11:59:17 +00:00