[PATCH V4 0/2] arm64/sysreg: Clean up TCR_EL1 field macros

Anshuman Khandual anshuman.khandual at arm.com
Sun Sep 14 19:24:16 PDT 2025



On 07/09/25 5:59 PM, Anshuman Khandual wrote:
> Currently TCR_EL1 field macros are sprinkled across the arm64 platform code
> including KVM implementation. Clean these up via updating required register
> filed definitions in tools sysreg format and then subsequently doing all
> necessary replacements. All required TCR_XXX macros have been moved from
> (asm/pgtable-hwdef.h) into KVM header (asm/kvm_arm.h) for their continued
> usage in KVM.
> 
> The cleanup does not cause any functional change.
> 
> This applies on v6.17-rc4

Gentle ping.

Any updates on this ?
> 
> Cc: Catalin Marinas <catalin.marinas at arm.com>
> Cc: Will Deacon <will at kernel.org>
> Cc: Marc Zyngier <maz at kernel.org>
> Cc: Oliver Upton <oliver.upton at linux.dev>
> Cc: Mark Brown <broonie at kernel.org>
> Cc: Ryan Roberts <ryan.roberts at arm.com>
> Cc: kvmarm at lists.linux.dev
> Cc: linux-kernel at vger.kernel.org
> Cc: linux-arm-kernel at lists.infradead.org
> 
> Changes in V4:
> 
> - Dropped all unused TCR_XXX macros while moving into KVM header
> 
> Changes in V3:
> 
> https://lore.kernel.org/all/20250901072037.743380-1-anshuman.khandual@arm.com/
> 
> - KVM TCR_XXX flags are expressed via TCR_EL1_XXX flags per Marc
> 
> Changes in V2:
> 
> https://lore.kernel.org/all/20250829060215.1086792-1-anshuman.khandual@arm.com/
> 
> - Fixed ARM ARM version from 7.B to L.B
> - Changed UnsignedEnum into Enum per Mark
> - Dropped all TCR_EL1 replacements from KVM code
> - Moved existing TCR_XXX macros from (asm/pgtable-hwdef.h) into KVM header
>   (asm/kvm_arm.h) for their continued usage
> - Dropped patches 3 and 4 which could be done subsequently
> 
> Changes in V1:
> 
> https://lore.kernel.org/linux-arm-kernel/20250818045759.672408-1-anshuman.khandual@arm.com/
> 
> 
> Anshuman Khandual (2):
>   arm64/sysreg: Update TCR_EL1 register
>   arm64/sysreg: Replace TCR_EL1 field macros
> 
>  arch/arm64/include/asm/assembler.h     |  6 +-
>  arch/arm64/include/asm/cputype.h       |  2 +-
>  arch/arm64/include/asm/kvm_arm.h       | 43 +++++++++++
>  arch/arm64/include/asm/mmu_context.h   |  4 +-
>  arch/arm64/include/asm/pgtable-hwdef.h | 98 +-------------------------
>  arch/arm64/include/asm/pgtable-prot.h  |  2 +-
>  arch/arm64/include/asm/sysreg.h        |  2 -
>  arch/arm64/kernel/cpufeature.c         |  4 +-
>  arch/arm64/kernel/pi/map_kernel.c      |  8 +--
>  arch/arm64/kernel/vmcore_info.c        |  2 +-
>  arch/arm64/mm/proc.S                   | 36 ++++++----
>  arch/arm64/tools/sysreg                | 52 +++++++++++---
>  tools/arch/arm64/include/asm/cputype.h |  2 +-
>  13 files changed, 127 insertions(+), 134 deletions(-)
> 




More information about the linux-arm-kernel mailing list