[V3,00/14] arm64/sysreg: Convert TRBE registers to automatic generation

Message ID 20230614065949.146187-1-anshuman.khandual@arm.com
Headers
Series arm64/sysreg: Convert TRBE registers to automatic generation |

Message

Anshuman Khandual June 14, 2023, 6:59 a.m. UTC
  This series converts TRBE registers to automatic generation, after renaming
their fields as per the auto-gen tools format. Although the following field
still renames in arch/arm64/include/asm/sysreg.h, as it cannot be converted
(shares bits with other fields) in the tools format.

#define TRBSR_EL1_BSC_MASK		GENMASK(5, 0)
#define TRBSR_EL1_BSC_SHIFT		0

This series applies on v6.4-rc6.

Changes in V3:

- Defined enum for both PAS and SH fields in TRBMAR_EL1
- Defined enum for EA field in TRBIDR_EL1

Changes in V2:

https://lore.kernel.org/all/20230602062552.565992-1-anshuman.khandual@arm.com/

- Renamed each individual TRBE register fields as per auto-gen tools
- Converted each individual TRBE registers as per auto-gen tools
- Added new register fields as per DDI0601 2023-03

Changes in V1:

https://lore.kernel.org/all/20230531055524.16562-1-anshuman.khandual@arm.com/

Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Mark Brown <broonie@kernel.org>
Cc: Rob Herring <robh@kernel.org>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: James Morse <james.morse@arm.com>
Cc: kvmarm@lists.linux.dev
Cc: coresight@lists.linaro.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org

Anshuman Khandual (14):
  arm64/sysreg: Rename TRBLIMITR_EL1 fields per auto-gen tools format
  arm64/sysreg: Rename TRBPTR_EL1 fields per auto-gen tools format
  arm64/sysreg: Rename TRBBASER_EL1 fields per auto-gen tools format
  arm64/sysreg: Rename TRBSR_EL1 fields per auto-gen tools format
  arm64/sysreg: Rename TRBMAR_EL1 fields per auto-gen tools format
  arm64/sysreg: Rename TRBTRG_EL1 fields per auto-gen tools format
  arm64/sysreg: Rename TRBIDR_EL1 fields per auto-gen tools format
  arm64/sysreg: Convert TRBLIMITR_EL1 register to automatic generation
  arm64/sysreg: Convert TRBPTR_EL1 register to automatic generation
  arm64/sysreg: Convert TRBBASER_EL1 register to automatic generation
  arm64/sysreg: Convert TRBSR_EL1 register to automatic generation
  arm64/sysreg: Convert TRBMAR_EL1 register to automatic generation
  arm64/sysreg: Convert TRBTRG_EL1 register to automatic generation
  arm64/sysreg: Convert TRBIDR_EL1 register to automatic generation

 arch/arm64/include/asm/el2_setup.h           |  2 +-
 arch/arm64/include/asm/sysreg.h              | 50 +------------
 arch/arm64/kvm/debug.c                       |  2 +-
 arch/arm64/kvm/hyp/nvhe/debug-sr.c           |  2 +-
 arch/arm64/tools/sysreg                      | 77 ++++++++++++++++++++
 drivers/hwtracing/coresight/coresight-trbe.c | 33 +++++----
 drivers/hwtracing/coresight/coresight-trbe.h | 38 ++++------
 7 files changed, 114 insertions(+), 90 deletions(-)
  

Comments

Suzuki K Poulose June 14, 2023, 11:54 a.m. UTC | #1
On 14/06/2023 07:59, Anshuman Khandual wrote:
> This series converts TRBE registers to automatic generation, after renaming
> their fields as per the auto-gen tools format. Although the following field
> still renames in arch/arm64/include/asm/sysreg.h, as it cannot be converted
> (shares bits with other fields) in the tools format.
> 
> #define TRBSR_EL1_BSC_MASK		GENMASK(5, 0)
> #define TRBSR_EL1_BSC_SHIFT		0
> 
> This series applies on v6.4-rc6.
> 
> Changes in V3:
> 
> - Defined enum for both PAS and SH fields in TRBMAR_EL1
> - Defined enum for EA field in TRBIDR_EL1
> 
> Changes in V2:
> 
> https://lore.kernel.org/all/20230602062552.565992-1-anshuman.khandual@arm.com/
> 
> - Renamed each individual TRBE register fields as per auto-gen tools
> - Converted each individual TRBE registers as per auto-gen tools
> - Added new register fields as per DDI0601 2023-03
> 
> Changes in V1:
> 
> https://lore.kernel.org/all/20230531055524.16562-1-anshuman.khandual@arm.com/
> 
> Cc: Catalin Marinas <catalin.marinas@arm.com>
> Cc: Will Deacon <will@kernel.org>
> Cc: Marc Zyngier <maz@kernel.org>
> Cc: Mark Brown <broonie@kernel.org>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
> Cc: James Morse <james.morse@arm.com>
> Cc: kvmarm@lists.linux.dev
> Cc: coresight@lists.linaro.org
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-kernel@vger.kernel.org
> 
> Anshuman Khandual (14):
>    arm64/sysreg: Rename TRBLIMITR_EL1 fields per auto-gen tools format
>    arm64/sysreg: Rename TRBPTR_EL1 fields per auto-gen tools format
>    arm64/sysreg: Rename TRBBASER_EL1 fields per auto-gen tools format
>    arm64/sysreg: Rename TRBSR_EL1 fields per auto-gen tools format
>    arm64/sysreg: Rename TRBMAR_EL1 fields per auto-gen tools format
>    arm64/sysreg: Rename TRBTRG_EL1 fields per auto-gen tools format
>    arm64/sysreg: Rename TRBIDR_EL1 fields per auto-gen tools format
>    arm64/sysreg: Convert TRBLIMITR_EL1 register to automatic generation
>    arm64/sysreg: Convert TRBPTR_EL1 register to automatic generation
>    arm64/sysreg: Convert TRBBASER_EL1 register to automatic generation
>    arm64/sysreg: Convert TRBSR_EL1 register to automatic generation
>    arm64/sysreg: Convert TRBMAR_EL1 register to automatic generation
>    arm64/sysreg: Convert TRBTRG_EL1 register to automatic generation
>    arm64/sysreg: Convert TRBIDR_EL1 register to automatic generation
> 
>   arch/arm64/include/asm/el2_setup.h           |  2 +-
>   arch/arm64/include/asm/sysreg.h              | 50 +------------
>   arch/arm64/kvm/debug.c                       |  2 +-
>   arch/arm64/kvm/hyp/nvhe/debug-sr.c           |  2 +-
>   arch/arm64/tools/sysreg                      | 77 ++++++++++++++++++++
>   drivers/hwtracing/coresight/coresight-trbe.c | 33 +++++----
>   drivers/hwtracing/coresight/coresight-trbe.h | 38 ++++------
>   7 files changed, 114 insertions(+), 90 deletions(-)
> 


For the coresight-trbe.* bits:

Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
  
Catalin Marinas June 14, 2023, 5:19 p.m. UTC | #2
On Wed, 14 Jun 2023 12:29:35 +0530, Anshuman Khandual wrote:
> This series converts TRBE registers to automatic generation, after renaming
> their fields as per the auto-gen tools format. Although the following field
> still renames in arch/arm64/include/asm/sysreg.h, as it cannot be converted
> (shares bits with other fields) in the tools format.
> 
> #define TRBSR_EL1_BSC_MASK		GENMASK(5, 0)
> #define TRBSR_EL1_BSC_SHIFT		0
> 
> [...]

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

[01/14] arm64/sysreg: Rename TRBLIMITR_EL1 fields per auto-gen tools format
        https://git.kernel.org/arm64/c/92b1efcd9d9d
[02/14] arm64/sysreg: Rename TRBPTR_EL1 fields per auto-gen tools format
        https://git.kernel.org/arm64/c/e01e1737e348
[03/14] arm64/sysreg: Rename TRBBASER_EL1 fields per auto-gen tools format
        https://git.kernel.org/arm64/c/90cdde836c43
[04/14] arm64/sysreg: Rename TRBSR_EL1 fields per auto-gen tools format
        https://git.kernel.org/arm64/c/7bb948826610
[05/14] arm64/sysreg: Rename TRBMAR_EL1 fields per auto-gen tools format
        https://git.kernel.org/arm64/c/b7c3a6eb4d2b
[06/14] arm64/sysreg: Rename TRBTRG_EL1 fields per auto-gen tools format
        https://git.kernel.org/arm64/c/dae169fd63f3
[07/14] arm64/sysreg: Rename TRBIDR_EL1 fields per auto-gen tools format
        https://git.kernel.org/arm64/c/f170aa51e6c5
[08/14] arm64/sysreg: Convert TRBLIMITR_EL1 register to automatic generation
        https://git.kernel.org/arm64/c/eee64165a54e
[09/14] arm64/sysreg: Convert TRBPTR_EL1 register to automatic generation
        https://git.kernel.org/arm64/c/6669697733ca
[10/14] arm64/sysreg: Convert TRBBASER_EL1 register to automatic generation
        https://git.kernel.org/arm64/c/cbaf0cf005f0
[11/14] arm64/sysreg: Convert TRBSR_EL1 register to automatic generation
        https://git.kernel.org/arm64/c/46f3a5b01fd7
[12/14] arm64/sysreg: Convert TRBMAR_EL1 register to automatic generation
        https://git.kernel.org/arm64/c/3077b1db9d57
[13/14] arm64/sysreg: Convert TRBTRG_EL1 register to automatic generation
        https://git.kernel.org/arm64/c/a56035c95ec6
[14/14] arm64/sysreg: Convert TRBIDR_EL1 register to automatic generation
        https://git.kernel.org/arm64/c/f0d4627f6459