# SPDX-License-Identifier: GPL-2.0-only## System register metadata # Each System register is described by a Sysreg block: # Sysreg <name> <op0> <op1> <crn> <crm> <op2># <field># ...# EndSysreg # Within a Sysreg block, each field can be described as one of: # Res0 <msb>[:<lsb>] # Res1 <msb>[:<lsb>] # Unkn <msb>[:<lsb>] # Field <msb>[:<lsb>] <name> # Enum <msb>[:<lsb>] <name># <enumval> <enumname># ...# EndEnum # For VHE aliases (*_EL12, *_EL02) of system registers, a Mapping# entry describes the register the alias actually accesses: # Sysreg <name_EL12> <op0> <op1> <crn> <crm> <op2># Mapping <name_EL1># EndSysreg # Where multiple system registers are not VHE aliases but share a# common layout, a SysregFields block can be used to describe the# shared layout: # SysregFields <fieldsname># <field># ...# EndSysregFields # and referenced from within the Sysreg: # Sysreg <name> <op0> <op1> <crn> <crm> <op2># Fields <fieldsname># EndSysreg # For ID registers we adopt a few conventions for translating the# language in the ARM into defines:## NI - Not implemented# IMP - Implemented## In general it is recommended that new enumeration items be named for the# feature that introduces them (eg, FEAT_LS64_ACCDATA introduces enumeration# item ACCDATA) though it may be more tasteful to do something else. Sysreg OSDTRRX_EL1 2 0 0 0 2Res0 63:32Field 31:0 DTRRXEndSysreg Sysreg MDCCINT_EL1 2 0 0 2 0Res0 63:31Field 30 RXField 29 TXRes0 28:0EndSysreg Sysreg MDSCR_EL1 2 0 0 2 2Res0 63:36Field 35 EHBWEField 34 EnSPMField 33 TTAField 32 EMBWEField 31 TFOField 30 RXfullField 29 TXfullRes0 28Field 27 RXOField 26 TXURes0 25:24Field 23:22 INTdisField 21 TDARes0 20Field 19 SC2Res0 18:16Field 15 MDEField 14 HDEField 13 KDEField 12 TDCCRes0 11:7Field 6 ERRRes0 5:1Field 0 SSEndSysreg Sysreg OSDTRTX_EL1 2 0 0 3 2Res0 63:32Field 31:0 DTRTXEndSysreg Sysreg MDSELR_EL1 2 0 0 4 2Res0 63:6Field 5:4 BANKRes0 3:0EndSysreg Sysreg MDSTEPOP_EL1 2 0 0 5 2Res0 63:32Field 31:0 OPCODEEndSysreg Sysreg OSECCR_EL1 2 0 0 6 2Res0 63:32Field 31:0 EDECCREndSysreg Sysreg OSLAR_EL1 2 0 1 0 4Res0 63:1Field 0 OSLKEndSysreg Sysreg SPMACCESSR_EL1 2 0 9 13 3UnsignedEnum 63:62 P31 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 61:60 P30 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 59:58 P29 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 57:56 P28 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 55:54 P27 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 53:52 P26 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 51:50 P25 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 49:48 P24 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 47:46 P23 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 45:44 P22 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 43:42 P21 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 41:40 P20 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 39:38 P19 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 37:36 P18 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 35:34 P17 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 33:32 P16 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 31:30 P15 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 29:28 P14 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 27:26 P13 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 25:24 P12 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 23:22 P11 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 21:20 P10 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 19:18 P9 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 17:16 P8 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 15:14 P7 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 13:12 P6 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 11:10 P5 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 9:8 P4 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 7:6 P3 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 5:4 P2 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 3:2 P1 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumUnsignedEnum 1:0 P0 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAPEndEnumEndSysreg Sysreg SPMACCESSR_EL12 2 5 9 13 3Mapping SPMACCESSR_EL1EndSysreg Sysreg SPMIIDR_EL1 2 0 9 13 4Res0 63:32Field 31:20 ProductIDField 19:16 VariantField 15:12 RevisionField 11:0 ImplementerEndSysreg Sysreg SPMDEVARCH_EL1 2 0 9 13 5Res0 63:32Field 31:21 ARCHITECTField 20 PRESENTField 19:16 REVISIONField 15:12 ARCHVERField 11:0 ARCHPARTEndSysreg Sysreg SPMDEVAFF_EL1 2 0 9 13 6Res0 63:40Field 39:32 Aff3Field 31 F0VField 30 URes0 29:25Field 24 MTField 23:16 Aff2Field 15:8 Aff1Field 7:0 Aff0EndSysreg Sysreg SPMCFGR_EL1 2 0 9 13 7Res0 63:32Field 31:28 NCGRes0 27:25Field 24 HDBGField 23 TROField 22 SSField 21 FZOField 20 MSIField 19 RAORes0 18Field 17 NAField 16 EXField 15:14 RAZField 13:8 SIZEField 7:0 NEndSysreg Sysreg SPMINTENSET_EL1 2 0 9 14 1Field 63:0 PEndSysreg Sysreg SPMINTENCLR_EL1 2 0 9 14 2Field 63:0 PEndSysreg Sysreg PMCCNTSVR_EL1 2 0 14 11 7Field 63:0 CCNTEndSysreg Sysreg PMICNTSVR_EL1 2 0 14 12 0Field 63:0 ICNTEndSysreg Sysreg SPMCR_EL0 2 3 9 12 0Res0 63:12Field 11 TROField 10 HDBGField 9 FZOField 8 NARes0 7:5Field 4 EXRes0 3:2Field 1 PField 0 EEndSysreg Sysreg SPMCNTENSET_EL0 2 3 9 12 1Field 63:0 PEndSysreg Sysreg SPMCNTENCLR_EL0 2 3 9 12 2Field 63:0 PEndSysreg Sysreg SPMOVSCLR_EL0 2 3 9 12 3Field 63:0 PEndSysreg Sysreg SPMZR_EL0 2 3 9 12 4Field 63:0 PEndSysreg Sysreg SPMSELR_EL0 2 3 9 12 5Res0 63:10Field 9:4 SYSPMUSELRes0 3:2Field 1:0 BANKEndSysreg Sysreg SPMOVSSET_EL0 2 3 9 14 3Field 63:0 PEndSysreg Sysreg SPMSCR_EL1 2 7 9 14 7Field 63:32 IMPDEFField 31 RAORes0 30:5Field 4 NAORes0 3:1Field 0 SOEndSysreg Sysreg ID_PFR0_EL1 3 0 0 1 0Res0 63:32UnsignedEnum 31:28 RAS 0b0000 NI 0b0001 RAS 0b0010 RASv1p1EndEnumUnsignedEnum 27:24 DIT 0b0000 NI 0b0001 IMPEndEnumUnsignedEnum 23:20 AMU 0b0000 NI 0b0001 AMUv1 0b0010 AMUv1p1EndEnumUnsignedEnum 19:16 CSV2 0b0000 UNDISCLOSED 0b0001 IMP 0b0010 CSV2p1EndEnumUnsignedEnum 15:12 State3 0b0000 NI 0b0001 IMPEndEnumEnum 11:8 State2 0b0000 NI 0b0001 NO_CV 0b0010 CVEndEnumUnsignedEnum 7:4 State1 0b0000 NI 0b0001 THUMB 0b0010 THUMB2EndEnumUnsignedEnum 3:0 State0 0b0000 NI 0b0001 IMPEndEnumEndSysreg Sysreg ID_PFR1_EL1 3 0 0 1 1Res0 63:32UnsignedEnum 31:28 GIC 0b0000 NI 0b0001 GICv3 0b0011 GICv4p1EndEnumUnsignedEnum 27:24 Virt_frac 0b0000 NI 0b0001 IMPEndEnumEnum 23:20 Sec_frac 0b0000 NI 0b0001 WALK_DISABLE 0b0010 SECURE_MEMORYEndEnumUnsignedEnum 19:16 GenTimer 0b0000 NI 0b0001 IMP 0b0010 ECVEndEnumUnsignedEnum 15:12 Virtualization 0b0000 NI 0b0001 IMPEndEnumUnsignedEnum 11:8 MProgMod 0b0000 NI 0b0001 IMPEndEnumEnum 7:4 Security 0b0000 NI 0b0001 EL3 0b0010 NSACR_RFREndEnumUnsignedEnum 3:0 ProgMod 0b0000 NI 0b0001 IMPEndEnumEndSysreg Sysreg ID_DFR0_EL1 3 0 0 1 2Res0 63:32UnsignedEnum 31:28 TraceFilt 0b0000 NI 0b0001 IMPEndEnumUnsignedEnum 27:24 PerfMon 0b0000 NI 0b0001 PMUv1 0b0010 PMUv2 0b0011 PMUv3 0b0100 PMUv3p1 0b0101 PMUv3p4 0b0110 PMUv3p5 0b0111 PMUv3p7 0b1000 PMUv3p8Lines 1–500 of 5894. Load more
# SPDX-License-Identifier: GPL-2.0-only # # System register metadata # Each System register is described by a Sysreg block: # Sysreg <name> <op0> <op1> <crn> <crm> <op2> # <field> # ... # EndSysreg # Within a Sysreg block, each field can be described as one of: # Res0 <msb>[:<lsb>] # Res1 <msb>[:<lsb>] # Unkn <msb>[:<lsb>] # Field <msb>[:<lsb>] <name> # Enum <msb>[:<lsb>] <name> # <enumval> <enumname> # ... # EndEnum # For VHE aliases (*_EL12, *_EL02) of system registers, a Mapping # entry describes the register the alias actually accesses: # Sysreg <name_EL12> <op0> <op1> <crn> <crm> <op2> # Mapping <name_EL1> # EndSysreg # Where multiple system registers are not VHE aliases but share a # common layout, a SysregFields block can be used to describe the # shared layout: # SysregFields <fieldsname> # <field> # ... # EndSysregFields # and referenced from within the Sysreg: # Sysreg <name> <op0> <op1> <crn> <crm> <op2> # Fields <fieldsname> # EndSysreg # For ID registers we adopt a few conventions for translating the # language in the ARM into defines: # # NI - Not implemented # IMP - Implemented # # In general it is recommended that new enumeration items be named for the # feature that introduces them (eg, FEAT_LS64_ACCDATA introduces enumeration # item ACCDATA) though it may be more tasteful to do something else. Sysreg OSDTRRX_EL1 2 0 0 0 2 Res0 63:32 Field 31:0 DTRRX EndSysreg Sysreg MDCCINT_EL1 2 0 0 2 0 Res0 63:31 Field 30 RX Field 29 TX Res0 28:0 EndSysreg Sysreg MDSCR_EL1 2 0 0 2 2 Res0 63:36 Field 35 EHBWE Field 34 EnSPM Field 33 TTA Field 32 EMBWE Field 31 TFO Field 30 RXfull Field 29 TXfull Res0 28 Field 27 RXO Field 26 TXU Res0 25:24 Field 23:22 INTdis Field 21 TDA Res0 20 Field 19 SC2 Res0 18:16 Field 15 MDE Field 14 HDE Field 13 KDE Field 12 TDCC Res0 11:7 Field 6 ERR Res0 5:1 Field 0 SS EndSysreg Sysreg OSDTRTX_EL1 2 0 0 3 2 Res0 63:32 Field 31:0 DTRTX EndSysreg Sysreg MDSELR_EL1 2 0 0 4 2 Res0 63:6 Field 5:4 BANK Res0 3:0 EndSysreg Sysreg MDSTEPOP_EL1 2 0 0 5 2 Res0 63:32 Field 31:0 OPCODE EndSysreg Sysreg OSECCR_EL1 2 0 0 6 2 Res0 63:32 Field 31:0 EDECCR EndSysreg Sysreg OSLAR_EL1 2 0 1 0 4 Res0 63:1 Field 0 OSLK EndSysreg Sysreg SPMACCESSR_EL1 2 0 9 13 3 UnsignedEnum 63:62 P31 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 61:60 P30 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 59:58 P29 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 57:56 P28 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 55:54 P27 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 53:52 P26 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 51:50 P25 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 49:48 P24 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 47:46 P23 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 45:44 P22 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 43:42 P21 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 41:40 P20 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 39:38 P19 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 37:36 P18 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 35:34 P17 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 33:32 P16 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 31:30 P15 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 29:28 P14 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 27:26 P13 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 25:24 P12 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 23:22 P11 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 21:20 P10 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 19:18 P9 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 17:16 P8 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 15:14 P7 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 13:12 P6 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 11:10 P5 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 9:8 P4 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 7:6 P3 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 5:4 P2 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 3:2 P1 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum UnsignedEnum 1:0 P0 0b00 TRAP_RW 0b01 TRAP_W 0b11 NOTRAP EndEnum EndSysreg Sysreg SPMACCESSR_EL12 2 5 9 13 3 Mapping SPMACCESSR_EL1 EndSysreg Sysreg SPMIIDR_EL1 2 0 9 13 4 Res0 63:32 Field 31:20 ProductID Field 19:16 Variant Field 15:12 Revision Field 11:0 Implementer EndSysreg Sysreg SPMDEVARCH_EL1 2 0 9 13 5 Res0 63:32 Field 31:21 ARCHITECT Field 20 PRESENT Field 19:16 REVISION Field 15:12 ARCHVER Field 11:0 ARCHPART EndSysreg Sysreg SPMDEVAFF_EL1 2 0 9 13 6 Res0 63:40 Field 39:32 Aff3 Field 31 F0V Field 30 U Res0 29:25 Field 24 MT Field 23:16 Aff2 Field 15:8 Aff1 Field 7:0 Aff0 EndSysreg Sysreg SPMCFGR_EL1 2 0 9 13 7 Res0 63:32 Field 31:28 NCG Res0 27:25 Field 24 HDBG Field 23 TRO Field 22 SS Field 21 FZO Field 20 MSI Field 19 RAO Res0 18 Field 17 NA Field 16 EX Field 15:14 RAZ Field 13:8 SIZE Field 7:0 N EndSysreg Sysreg SPMINTENSET_EL1 2 0 9 14 1 Field 63:0 P EndSysreg Sysreg SPMINTENCLR_EL1 2 0 9 14 2 Field 63:0 P EndSysreg Sysreg PMCCNTSVR_EL1 2 0 14 11 7 Field 63:0 CCNT EndSysreg Sysreg PMICNTSVR_EL1 2 0 14 12 0 Field 63:0 ICNT EndSysreg Sysreg SPMCR_EL0 2 3 9 12 0 Res0 63:12 Field 11 TRO Field 10 HDBG Field 9 FZO Field 8 NA Res0 7:5 Field 4 EX Res0 3:2 Field 1 P Field 0 E EndSysreg Sysreg SPMCNTENSET_EL0 2 3 9 12 1 Field 63:0 P EndSysreg Sysreg SPMCNTENCLR_EL0 2 3 9 12 2 Field 63:0 P EndSysreg Sysreg SPMOVSCLR_EL0 2 3 9 12 3 Field 63:0 P EndSysreg Sysreg SPMZR_EL0 2 3 9 12 4 Field 63:0 P EndSysreg Sysreg SPMSELR_EL0 2 3 9 12 5 Res0 63:10 Field 9:4 SYSPMUSEL Res0 3:2 Field 1:0 BANK EndSysreg Sysreg SPMOVSSET_EL0 2 3 9 14 3 Field 63:0 P EndSysreg Sysreg SPMSCR_EL1 2 7 9 14 7 Field 63:32 IMPDEF Field 31 RAO Res0 30:5 Field 4 NAO Res0 3:1 Field 0 SO EndSysreg Sysreg ID_PFR0_EL1 3 0 0 1 0 Res0 63:32 UnsignedEnum 31:28 RAS 0b0000 NI 0b0001 RAS 0b0010 RASv1p1 EndEnum UnsignedEnum 27:24 DIT 0b0000 NI 0b0001 IMP EndEnum UnsignedEnum 23:20 AMU 0b0000 NI 0b0001 AMUv1 0b0010 AMUv1p1 EndEnum UnsignedEnum 19:16 CSV2 0b0000 UNDISCLOSED 0b0001 IMP 0b0010 CSV2p1 EndEnum UnsignedEnum 15:12 State3 0b0000 NI 0b0001 IMP EndEnum Enum 11:8 State2 0b0000 NI 0b0001 NO_CV 0b0010 CV EndEnum UnsignedEnum 7:4 State1 0b0000 NI 0b0001 THUMB 0b0010 THUMB2 EndEnum UnsignedEnum 3:0 State0 0b0000 NI 0b0001 IMP EndEnum EndSysreg Sysreg ID_PFR1_EL1 3 0 0 1 1 Res0 63:32 UnsignedEnum 31:28 GIC 0b0000 NI 0b0001 GICv3 0b0011 GICv4p1 EndEnum UnsignedEnum 27:24 Virt_frac 0b0000 NI 0b0001 IMP EndEnum Enum 23:20 Sec_frac 0b0000 NI 0b0001 WALK_DISABLE 0b0010 SECURE_MEMORY EndEnum UnsignedEnum 19:16 GenTimer 0b0000 NI 0b0001 IMP 0b0010 ECV EndEnum UnsignedEnum 15:12 Virtualization 0b0000 NI 0b0001 IMP EndEnum UnsignedEnum 11:8 MProgMod 0b0000 NI 0b0001 IMP EndEnum Enum 7:4 Security 0b0000 NI 0b0001 EL3 0b0010 NSACR_RFR EndEnum UnsignedEnum 3:0 ProgMod 0b0000 NI 0b0001 IMP EndEnum EndSysreg Sysreg ID_DFR0_EL1 3 0 0 1 2 Res0 63:32 UnsignedEnum 31:28 TraceFilt 0b0000 NI 0b0001 IMP EndEnum UnsignedEnum 27:24 PerfMon 0b0000 NI 0b0001 PMUv1 0b0010 PMUv2 0b0011 PMUv3 0b0100 PMUv3p1 0b0101 PMUv3p4 0b0110 PMUv3p5 0b0111 PMUv3p7 0b1000 PMUv3p8