@@ -323,11 +323,11 @@ static __u64 base_regs[] = {
KVM_REG_ARM_TIMER_CVAL,
ARM64_SYS_REG(3, 3, 14, 0, 2),
- ARM64_SYS_REG(3, 0, 0, 0, 0), /* MIDR_EL1 */
- ARM64_SYS_REG(3, 0, 0, 0, 6), /* REVIDR_EL1 */
- ARM64_SYS_REG(3, 1, 0, 0, 1), /* CLIDR_EL1 */
- ARM64_SYS_REG(3, 1, 0, 0, 7), /* AIDR_EL1 */
- ARM64_SYS_REG(3, 3, 0, 0, 1), /* CTR_EL0 */
+ KVM_ARM64_SYS_REG(SYS_MIDR_EL1),
+ KVM_ARM64_SYS_REG(SYS_REVIDR_EL1),
+ KVM_ARM64_SYS_REG(SYS_CLIDR_EL1),
+ KVM_ARM64_SYS_REG(SYS_AIDR_EL1),
+ KVM_ARM64_SYS_REG(SYS_CTR_EL0),
ARM64_SYS_REG(2, 0, 0, 0, 4),
ARM64_SYS_REG(2, 0, 0, 0, 5),
ARM64_SYS_REG(2, 0, 0, 0, 6),
@@ -336,8 +336,8 @@ static __u64 base_regs[] = {
ARM64_SYS_REG(2, 0, 0, 1, 5),
ARM64_SYS_REG(2, 0, 0, 1, 6),
ARM64_SYS_REG(2, 0, 0, 1, 7),
- ARM64_SYS_REG(2, 0, 0, 2, 0), /* MDCCINT_EL1 */
- ARM64_SYS_REG(2, 0, 0, 2, 2), /* MDSCR_EL1 */
+ KVM_ARM64_SYS_REG(SYS_MDCCINT_EL1),
+ KVM_ARM64_SYS_REG(SYS_MDSCR_EL1),
ARM64_SYS_REG(2, 0, 0, 2, 4),
ARM64_SYS_REG(2, 0, 0, 2, 5),
ARM64_SYS_REG(2, 0, 0, 2, 6),
@@ -394,109 +394,109 @@ static __u64 base_regs[] = {
ARM64_SYS_REG(2, 0, 0, 15, 5),
ARM64_SYS_REG(2, 0, 0, 15, 6),
ARM64_SYS_REG(2, 0, 0, 15, 7),
- ARM64_SYS_REG(2, 0, 1, 1, 4), /* OSLSR_EL1 */
- ARM64_SYS_REG(2, 4, 0, 7, 0), /* DBGVCR32_EL2 */
- ARM64_SYS_REG(3, 0, 0, 0, 5), /* MPIDR_EL1 */
- ARM64_SYS_REG(3, 0, 0, 1, 0), /* ID_PFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 1, 1), /* ID_PFR1_EL1 */
- ARM64_SYS_REG(3, 0, 0, 1, 2), /* ID_DFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 1, 3), /* ID_AFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 1, 4), /* ID_MMFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 1, 5), /* ID_MMFR1_EL1 */
- ARM64_SYS_REG(3, 0, 0, 1, 6), /* ID_MMFR2_EL1 */
- ARM64_SYS_REG(3, 0, 0, 1, 7), /* ID_MMFR3_EL1 */
- ARM64_SYS_REG(3, 0, 0, 2, 0), /* ID_ISAR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 2, 1), /* ID_ISAR1_EL1 */
- ARM64_SYS_REG(3, 0, 0, 2, 2), /* ID_ISAR2_EL1 */
- ARM64_SYS_REG(3, 0, 0, 2, 3), /* ID_ISAR3_EL1 */
- ARM64_SYS_REG(3, 0, 0, 2, 4), /* ID_ISAR4_EL1 */
- ARM64_SYS_REG(3, 0, 0, 2, 5), /* ID_ISAR5_EL1 */
- ARM64_SYS_REG(3, 0, 0, 2, 6), /* ID_MMFR4_EL1 */
- ARM64_SYS_REG(3, 0, 0, 2, 7), /* ID_ISAR6_EL1 */
- ARM64_SYS_REG(3, 0, 0, 3, 0), /* MVFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 3, 1), /* MVFR1_EL1 */
- ARM64_SYS_REG(3, 0, 0, 3, 2), /* MVFR2_EL1 */
+ KVM_ARM64_SYS_REG(SYS_OSLSR_EL1),
+ KVM_ARM64_SYS_REG(SYS_DBGVCR32_EL2),
+ KVM_ARM64_SYS_REG(SYS_MPIDR_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_PFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_PFR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_DFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_MMFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_MMFR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_MMFR2_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_MMFR3_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_ISAR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_ISAR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_ISAR2_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_ISAR3_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_ISAR4_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_ISAR5_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_MMFR4_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_ISAR6_EL1),
+ KVM_ARM64_SYS_REG(SYS_MVFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_MVFR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_MVFR2_EL1),
ARM64_SYS_REG(3, 0, 0, 3, 3),
- ARM64_SYS_REG(3, 0, 0, 3, 4), /* ID_PFR2_EL1 */
- ARM64_SYS_REG(3, 0, 0, 3, 5), /* ID_DFR1_EL1 */
- ARM64_SYS_REG(3, 0, 0, 3, 6), /* ID_MMFR5_EL1 */
+ KVM_ARM64_SYS_REG(SYS_ID_PFR2_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_DFR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_MMFR5_EL1),
ARM64_SYS_REG(3, 0, 0, 3, 7),
- ARM64_SYS_REG(3, 0, 0, 4, 0), /* ID_AA64PFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 4, 1), /* ID_AA64PFR1_EL1 */
- ARM64_SYS_REG(3, 0, 0, 4, 2), /* ID_AA64PFR2_EL1 */
+ KVM_ARM64_SYS_REG(SYS_ID_AA64PFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64PFR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64PFR2_EL1),
ARM64_SYS_REG(3, 0, 0, 4, 3),
- ARM64_SYS_REG(3, 0, 0, 4, 4), /* ID_AA64ZFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 4, 5), /* ID_AA64SMFR0_EL1 */
+ KVM_ARM64_SYS_REG(SYS_ID_AA64ZFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64SMFR0_EL1),
ARM64_SYS_REG(3, 0, 0, 4, 6),
ARM64_SYS_REG(3, 0, 0, 4, 7),
- ARM64_SYS_REG(3, 0, 0, 5, 0), /* ID_AA64DFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 5, 1), /* ID_AA64DFR1_EL1 */
+ KVM_ARM64_SYS_REG(SYS_ID_AA64DFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64DFR1_EL1),
ARM64_SYS_REG(3, 0, 0, 5, 2),
ARM64_SYS_REG(3, 0, 0, 5, 3),
- ARM64_SYS_REG(3, 0, 0, 5, 4), /* ID_AA64AFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 5, 5), /* ID_AA64AFR1_EL1 */
+ KVM_ARM64_SYS_REG(SYS_ID_AA64AFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64AFR1_EL1),
ARM64_SYS_REG(3, 0, 0, 5, 6),
ARM64_SYS_REG(3, 0, 0, 5, 7),
- ARM64_SYS_REG(3, 0, 0, 6, 0), /* ID_AA64ISAR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 6, 1), /* ID_AA64ISAR1_EL1 */
- ARM64_SYS_REG(3, 0, 0, 6, 2), /* ID_AA64ISAR2_EL1 */
+ KVM_ARM64_SYS_REG(SYS_ID_AA64ISAR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64ISAR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64ISAR2_EL1),
ARM64_SYS_REG(3, 0, 0, 6, 3),
ARM64_SYS_REG(3, 0, 0, 6, 4),
ARM64_SYS_REG(3, 0, 0, 6, 5),
ARM64_SYS_REG(3, 0, 0, 6, 6),
ARM64_SYS_REG(3, 0, 0, 6, 7),
- ARM64_SYS_REG(3, 0, 0, 7, 0), /* ID_AA64MMFR0_EL1 */
- ARM64_SYS_REG(3, 0, 0, 7, 1), /* ID_AA64MMFR1_EL1 */
- ARM64_SYS_REG(3, 0, 0, 7, 2), /* ID_AA64MMFR2_EL1 */
- ARM64_SYS_REG(3, 0, 0, 7, 3), /* ID_AA64MMFR3_EL1 */
- ARM64_SYS_REG(3, 0, 0, 7, 4), /* ID_AA64MMFR4_EL1 */
+ KVM_ARM64_SYS_REG(SYS_ID_AA64MMFR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64MMFR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64MMFR2_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64MMFR3_EL1),
+ KVM_ARM64_SYS_REG(SYS_ID_AA64MMFR4_EL1),
ARM64_SYS_REG(3, 0, 0, 7, 5),
ARM64_SYS_REG(3, 0, 0, 7, 6),
ARM64_SYS_REG(3, 0, 0, 7, 7),
- ARM64_SYS_REG(3, 0, 1, 0, 0), /* SCTLR_EL1 */
- ARM64_SYS_REG(3, 0, 1, 0, 1), /* ACTLR_EL1 */
- ARM64_SYS_REG(3, 0, 1, 0, 2), /* CPACR_EL1 */
- ARM64_SYS_REG(3, 0, 2, 0, 0), /* TTBR0_EL1 */
- ARM64_SYS_REG(3, 0, 2, 0, 1), /* TTBR1_EL1 */
- ARM64_SYS_REG(3, 0, 2, 0, 2), /* TCR_EL1 */
- ARM64_SYS_REG(3, 0, 2, 0, 3), /* TCR2_EL1 */
- ARM64_SYS_REG(3, 0, 5, 1, 0), /* AFSR0_EL1 */
- ARM64_SYS_REG(3, 0, 5, 1, 1), /* AFSR1_EL1 */
- ARM64_SYS_REG(3, 0, 5, 2, 0), /* ESR_EL1 */
- ARM64_SYS_REG(3, 0, 6, 0, 0), /* FAR_EL1 */
- ARM64_SYS_REG(3, 0, 7, 4, 0), /* PAR_EL1 */
- ARM64_SYS_REG(3, 0, 10, 2, 0), /* MAIR_EL1 */
- ARM64_SYS_REG(3, 0, 10, 2, 2), /* PIRE0_EL1 */
- ARM64_SYS_REG(3, 0, 10, 2, 3), /* PIR_EL1 */
- ARM64_SYS_REG(3, 0, 10, 3, 0), /* AMAIR_EL1 */
- ARM64_SYS_REG(3, 0, 12, 0, 0), /* VBAR_EL1 */
- ARM64_SYS_REG(3, 0, 12, 1, 1), /* DISR_EL1 */
- ARM64_SYS_REG(3, 0, 13, 0, 1), /* CONTEXTIDR_EL1 */
- ARM64_SYS_REG(3, 0, 13, 0, 4), /* TPIDR_EL1 */
- ARM64_SYS_REG(3, 0, 14, 1, 0), /* CNTKCTL_EL1 */
- ARM64_SYS_REG(3, 2, 0, 0, 0), /* CSSELR_EL1 */
- ARM64_SYS_REG(3, 3, 13, 0, 2), /* TPIDR_EL0 */
- ARM64_SYS_REG(3, 3, 13, 0, 3), /* TPIDRRO_EL0 */
- ARM64_SYS_REG(3, 3, 14, 0, 1), /* CNTPCT_EL0 */
- ARM64_SYS_REG(3, 3, 14, 2, 1), /* CNTP_CTL_EL0 */
- ARM64_SYS_REG(3, 3, 14, 2, 2), /* CNTP_CVAL_EL0 */
- ARM64_SYS_REG(3, 4, 3, 0, 0), /* DACR32_EL2 */
- ARM64_SYS_REG(3, 4, 5, 0, 1), /* IFSR32_EL2 */
- ARM64_SYS_REG(3, 4, 5, 3, 0), /* FPEXC32_EL2 */
+ KVM_ARM64_SYS_REG(SYS_SCTLR_EL1),
+ KVM_ARM64_SYS_REG(SYS_ACTLR_EL1),
+ KVM_ARM64_SYS_REG(SYS_CPACR_EL1),
+ KVM_ARM64_SYS_REG(SYS_TTBR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_TTBR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_TCR_EL1),
+ KVM_ARM64_SYS_REG(SYS_TCR2_EL1),
+ KVM_ARM64_SYS_REG(SYS_AFSR0_EL1),
+ KVM_ARM64_SYS_REG(SYS_AFSR1_EL1),
+ KVM_ARM64_SYS_REG(SYS_ESR_EL1),
+ KVM_ARM64_SYS_REG(SYS_FAR_EL1),
+ KVM_ARM64_SYS_REG(SYS_PAR_EL1),
+ KVM_ARM64_SYS_REG(SYS_MAIR_EL1),
+ KVM_ARM64_SYS_REG(SYS_PIRE0_EL1),
+ KVM_ARM64_SYS_REG(SYS_PIR_EL1),
+ KVM_ARM64_SYS_REG(SYS_AMAIR_EL1),
+ KVM_ARM64_SYS_REG(SYS_VBAR_EL1),
+ KVM_ARM64_SYS_REG(SYS_DISR_EL1),
+ KVM_ARM64_SYS_REG(SYS_CONTEXTIDR_EL1),
+ KVM_ARM64_SYS_REG(SYS_TPIDR_EL1),
+ KVM_ARM64_SYS_REG(SYS_CNTKCTL_EL1),
+ KVM_ARM64_SYS_REG(SYS_CSSELR_EL1),
+ KVM_ARM64_SYS_REG(SYS_TPIDR_EL0),
+ KVM_ARM64_SYS_REG(SYS_TPIDRRO_EL0),
+ KVM_ARM64_SYS_REG(SYS_CNTPCT_EL0),
+ KVM_ARM64_SYS_REG(SYS_CNTP_CTL_EL0),
+ KVM_ARM64_SYS_REG(SYS_CNTP_CVAL_EL0),
+ KVM_ARM64_SYS_REG(SYS_DACR32_EL2),
+ KVM_ARM64_SYS_REG(SYS_IFSR32_EL2),
+ KVM_ARM64_SYS_REG(SYS_FPEXC32_EL2),
};
static __u64 pmu_regs[] = {
- ARM64_SYS_REG(3, 0, 9, 14, 1), /* PMINTENSET_EL1 */
- ARM64_SYS_REG(3, 0, 9, 14, 2), /* PMINTENCLR_EL1 */
- ARM64_SYS_REG(3, 3, 9, 12, 0), /* PMCR_EL0 */
- ARM64_SYS_REG(3, 3, 9, 12, 1), /* PMCNTENSET_EL0 */
- ARM64_SYS_REG(3, 3, 9, 12, 2), /* PMCNTENCLR_EL0 */
- ARM64_SYS_REG(3, 3, 9, 12, 3), /* PMOVSCLR_EL0 */
- ARM64_SYS_REG(3, 3, 9, 12, 4), /* PMSWINC_EL0 */
- ARM64_SYS_REG(3, 3, 9, 12, 5), /* PMSELR_EL0 */
- ARM64_SYS_REG(3, 3, 9, 13, 0), /* PMCCNTR_EL0 */
- ARM64_SYS_REG(3, 3, 9, 14, 0), /* PMUSERENR_EL0 */
- ARM64_SYS_REG(3, 3, 9, 14, 3), /* PMOVSSET_EL0 */
+ KVM_ARM64_SYS_REG(SYS_PMINTENSET_EL1),
+ KVM_ARM64_SYS_REG(SYS_PMINTENCLR_EL1),
+ KVM_ARM64_SYS_REG(SYS_PMCR_EL0),
+ KVM_ARM64_SYS_REG(SYS_PMCNTENSET_EL0),
+ KVM_ARM64_SYS_REG(SYS_PMCNTENCLR_EL0),
+ KVM_ARM64_SYS_REG(SYS_PMOVSCLR_EL0),
+ KVM_ARM64_SYS_REG(SYS_PMSWINC_EL0),
+ KVM_ARM64_SYS_REG(SYS_PMSELR_EL0),
+ KVM_ARM64_SYS_REG(SYS_PMCCNTR_EL0),
+ KVM_ARM64_SYS_REG(SYS_PMUSERENR_EL0),
+ KVM_ARM64_SYS_REG(SYS_PMOVSSET_EL0),
ARM64_SYS_REG(3, 3, 14, 8, 0),
ARM64_SYS_REG(3, 3, 14, 8, 1),
ARM64_SYS_REG(3, 3, 14, 8, 2),
@@ -559,7 +559,7 @@ static __u64 pmu_regs[] = {
ARM64_SYS_REG(3, 3, 14, 15, 4),
ARM64_SYS_REG(3, 3, 14, 15, 5),
ARM64_SYS_REG(3, 3, 14, 15, 6),
- ARM64_SYS_REG(3, 3, 14, 15, 7), /* PMCCFILTR_EL0 */
+ KVM_ARM64_SYS_REG(SYS_PMCCFILTR_EL0),
};
static __u64 vregs[] = {
@@ -648,7 +648,7 @@ static __u64 sve_regs[] = {
KVM_REG_ARM64_SVE_PREG(14, 0),
KVM_REG_ARM64_SVE_PREG(15, 0),
KVM_REG_ARM64_SVE_FFR(0),
- ARM64_SYS_REG(3, 0, 1, 2, 0), /* ZCR_EL1 */
+ KVM_ARM64_SYS_REG(SYS_ZCR_EL1),
};
static __u64 sve_rejects_set[] = {
@@ -656,19 +656,19 @@ static __u64 sve_rejects_set[] = {
};
static __u64 pauth_addr_regs[] = {
- ARM64_SYS_REG(3, 0, 2, 1, 0), /* APIAKEYLO_EL1 */
- ARM64_SYS_REG(3, 0, 2, 1, 1), /* APIAKEYHI_EL1 */
- ARM64_SYS_REG(3, 0, 2, 1, 2), /* APIBKEYLO_EL1 */
- ARM64_SYS_REG(3, 0, 2, 1, 3), /* APIBKEYHI_EL1 */
- ARM64_SYS_REG(3, 0, 2, 2, 0), /* APDAKEYLO_EL1 */
- ARM64_SYS_REG(3, 0, 2, 2, 1), /* APDAKEYHI_EL1 */
- ARM64_SYS_REG(3, 0, 2, 2, 2), /* APDBKEYLO_EL1 */
- ARM64_SYS_REG(3, 0, 2, 2, 3) /* APDBKEYHI_EL1 */
+ KVM_ARM64_SYS_REG(SYS_APIAKEYLO_EL1),
+ KVM_ARM64_SYS_REG(SYS_APIAKEYHI_EL1),
+ KVM_ARM64_SYS_REG(SYS_APIBKEYLO_EL1),
+ KVM_ARM64_SYS_REG(SYS_APIBKEYHI_EL1),
+ KVM_ARM64_SYS_REG(SYS_APDAKEYLO_EL1),
+ KVM_ARM64_SYS_REG(SYS_APDAKEYHI_EL1),
+ KVM_ARM64_SYS_REG(SYS_APDBKEYLO_EL1),
+ KVM_ARM64_SYS_REG(SYS_APDBKEYHI_EL1),
};
static __u64 pauth_generic_regs[] = {
- ARM64_SYS_REG(3, 0, 2, 3, 0), /* APGAKEYLO_EL1 */
- ARM64_SYS_REG(3, 0, 2, 3, 1), /* APGAKEYHI_EL1 */
+ KVM_ARM64_SYS_REG(SYS_APGAKEYLO_EL1),
+ KVM_ARM64_SYS_REG(SYS_APGAKEYHI_EL1),
};
#define BASE_SUBLIST \
Currently the get-reg-list test uses directly specified numeric values to define system registers to validate. Since we already have a macro which allows us to use the generated system register definitions from the main kernel easily let's update all the registers where we have specified the name in a comment to just use that macro. This reduces the number of places where we need to validate the name to number mapping. This conversion was done with the sed command: sed -i -E 's-ARM64_SYS_REG.*/\* (.*) \*/-KVM_ARM64_SYS_REG(SYS_\1),-' tools/testing/selftests/kvm/aarch64/get-reg-list.c We still have a number of numerically specified registers, some of these are reserved registers without defined names (eg, unallocated ID registers) and others either doing have kernel macro definitions yet. There are also uncommented registers with definitions we could find by parsing tools/sysreg and registers like DBGBVRn_EL1 listed which have parameterised macros we could use prior to conversion to generation. No change in the generated output. Suggested-by: Marc Zyngier <maz@kernel.org> Signed-off-by: Mark Brown <broonie@kernel.org> --- tools/testing/selftests/kvm/aarch64/get-reg-list.c | 204 ++++++++++----------- 1 file changed, 102 insertions(+), 102 deletions(-)