[PATCH v3 0/5] arm64/sysreg: Introduce Prefix descriptor and generated ICH_VMCR_EL2 support

Sascha Bischoff posted 5 patches 1 month, 3 weeks ago
arch/arm64/include/asm/sysreg.h      |  21 ----
arch/arm64/kvm/hyp/vgic-v3-sr.c      |  64 +++++-------
arch/arm64/kvm/vgic/vgic-v3-nested.c |   8 +-
arch/arm64/kvm/vgic/vgic-v3.c        |  42 ++++----
arch/arm64/tools/gen-sysreg.awk      | 146 ++++++++++++++++++---------
arch/arm64/tools/sysreg              |  21 ++++
6 files changed, 171 insertions(+), 131 deletions(-)
[PATCH v3 0/5] arm64/sysreg: Introduce Prefix descriptor and generated ICH_VMCR_EL2 support
Posted by Sascha Bischoff 1 month, 3 weeks ago
This series introduces support for conditional field encodings in the
sysreg description framework and migrates the vGIC-v3 code to use
generated definitions for ICH_VMCR_EL2, in part as an example of how
the Prefix descriptor can be used. In addition, it fixes an issue with
the tracking of incomplete system register definitions.

Together, these patches complete the migration of ICH_VMCR_EL2 to the
sysreg framework and establish the infrastructure needed to describe
registers with multiple field encodings.

Thanks,
Sascha

v2 -> v3:
	- Rebased against 6.18-rc2
	- Added checks for duplicated Prefixes within Sysreg/SysregFields
	- Split RESx/UNKN function refactor into a separate patch
	- Added Reviewed-by trailers for first two patches

v1 -> v2:
	- Re-worked the generator to use Prefix instead of Feat
	- Removed implicit Feat generation

v2: https://lore.kernel.org/lkml/20251009165427.437379-1-sascha.bischoff@arm.com
v1: https://lore.kernel.org/lkml/20251007153505.1606208-1-sascha.bischoff@arm.com

Sascha Bischoff (5):
  arm64/sysreg: Fix checks for incomplete sysreg definitions
  arm64/sysreg: Support feature-specific fields with 'Prefix' descriptor
  arm64/sysreg: Move generation of RES0/RES1/UNKN to function
  arm64/sysreg: Add ICH_VMCR_EL2
  KVM: arm64: gic-v3: Switch vGIC-v3 to use generated ICH_VMCR_EL2

 arch/arm64/include/asm/sysreg.h      |  21 ----
 arch/arm64/kvm/hyp/vgic-v3-sr.c      |  64 +++++-------
 arch/arm64/kvm/vgic/vgic-v3-nested.c |   8 +-
 arch/arm64/kvm/vgic/vgic-v3.c        |  42 ++++----
 arch/arm64/tools/gen-sysreg.awk      | 146 ++++++++++++++++++---------
 arch/arm64/tools/sysreg              |  21 ++++
 6 files changed, 171 insertions(+), 131 deletions(-)

-- 
2.34.1
Re: (subset) [PATCH v3 0/5] arm64/sysreg: Introduce Prefix descriptor and generated ICH_VMCR_EL2 support
Posted by Catalin Marinas 1 month ago
From: Catalin Marinas <catalin.marinas@arm.com>

On Wed, 22 Oct 2025 13:45:35 +0000, Sascha Bischoff wrote:
> This series introduces support for conditional field encodings in the
> sysreg description framework and migrates the vGIC-v3 code to use
> generated definitions for ICH_VMCR_EL2, in part as an example of how
> the Prefix descriptor can be used. In addition, it fixes an issue with
> the tracking of incomplete system register definitions.
> 
> Together, these patches complete the migration of ICH_VMCR_EL2 to the
> sysreg framework and establish the infrastructure needed to describe
> registers with multiple field encodings.
> 
> [...]

Applied to arm64 (for-next/sysreg), thanks!

[1/5] arm64/sysreg: Fix checks for incomplete sysreg definitions
      https://git.kernel.org/arm64/c/0aab5772a53d
[2/5] arm64/sysreg: Support feature-specific fields with 'Prefix' descriptor
      https://git.kernel.org/arm64/c/fe2ef46995d5
[3/5] arm64/sysreg: Move generation of RES0/RES1/UNKN to function
      https://git.kernel.org/arm64/c/a0b130eedde0
[4/5] arm64/sysreg: Add ICH_VMCR_EL2
      https://git.kernel.org/arm64/c/a04fbfb8a175

I left the last patch to Marc/Oliver.

-- 
Catalin