1# SPDX-License-Identifier: GPL-2.0-only 2# 3# System register metadata 4 5# Each System register is described by a Sysreg block: 6 7# Sysreg <name> <op0> <op1> <crn> <crm> <op2> 8# <field> 9# ... 10# EndSysreg 11 12# Within a Sysreg block, each field can be described as one of: 13 14# Res0 <msb>[:<lsb>] 15 16# Res1 <msb>[:<lsb>] 17 18# Field <msb>[:<lsb>] <name> 19 20# Enum <msb>[:<lsb>] <name> 21# <enumval> <enumname> 22# ... 23# EndEnum 24 25# Alternatively if multiple registers share the same layout then 26# a SysregFields block can be used to describe the shared layout 27 28# SysregFields <fieldsname> 29# <field> 30# ... 31# EndSysregFields 32 33# and referenced from within the Sysreg: 34 35# Sysreg <name> <op0> <op1> <crn> <crm> <op2> 36# Fields <fieldsname> 37# EndSysreg 38 39# For ID registers we adopt a few conventions for translating the 40# language in the ARM into defines: 41# 42# NI - Not implemented 43# IMP - Implemented 44# 45# In general it is recommended that new enumeration items be named for the 46# feature that introduces them (eg, FEAT_LS64_ACCDATA introduces enumeration 47# item ACCDATA) though it may be more taseful to do something else. 48 49Sysreg ID_AA64ISAR0_EL1 3 0 0 6 0 50Enum 63:60 RNDR 51 0b0000 NI 52 0b0001 IMP 53EndEnum 54Enum 59:56 TLB 55 0b0000 NI 56 0b0001 OS 57 0b0010 RANGE 58EndEnum 59Enum 55:52 TS 60 0b0000 NI 61 0b0001 FLAGM 62 0b0010 FLAGM2 63EndEnum 64Enum 51:48 FHM 65 0b0000 NI 66 0b0001 IMP 67EndEnum 68Enum 47:44 DP 69 0b0000 NI 70 0b0001 IMP 71EndEnum 72Enum 43:40 SM4 73 0b0000 NI 74 0b0001 IMP 75EndEnum 76Enum 39:36 SM3 77 0b0000 NI 78 0b0001 IMP 79EndEnum 80Enum 35:32 SHA3 81 0b0000 NI 82 0b0001 IMP 83EndEnum 84Enum 31:28 RDM 85 0b0000 NI 86 0b0001 IMP 87EndEnum 88Enum 27:24 TME 89 0b0000 NI 90 0b0001 IMP 91EndEnum 92Enum 23:20 ATOMIC 93 0b0000 NI 94 0b0010 IMP 95EndEnum 96Enum 19:16 CRC32 97 0b0000 NI 98 0b0001 IMP 99EndEnum 100Enum 15:12 SHA2 101 0b0000 NI 102 0b0001 SHA256 103 0b0010 SHA512 104EndEnum 105Enum 11:8 SHA1 106 0b0000 NI 107 0b0001 IMP 108EndEnum 109Enum 7:4 AES 110 0b0000 NI 111 0b0001 AES 112 0b0010 PMULL 113EndEnum 114Res0 3:0 115EndSysreg 116 117Sysreg SCTLR_EL1 3 0 1 0 0 118Field 63 TIDCP 119Field 62 SPINMASK 120Field 61 NMI 121Field 60 EnTP2 122Res0 59:58 123Field 57 EPAN 124Field 56 EnALS 125Field 55 EnAS0 126Field 54 EnASR 127Field 53 TME 128Field 52 TME0 129Field 51 TMT 130Field 50 TMT0 131Field 49:46 TWEDEL 132Field 45 TWEDEn 133Field 44 DSSBS 134Field 43 ATA 135Field 42 ATA0 136Enum 41:40 TCF 137 0b00 NONE 138 0b01 SYNC 139 0b10 ASYNC 140 0b11 ASYMM 141EndEnum 142Enum 39:38 TCF0 143 0b00 NONE 144 0b01 SYNC 145 0b10 ASYNC 146 0b11 ASYMM 147EndEnum 148Field 37 ITFSB 149Field 36 BT1 150Field 35 BT0 151Res0 34 152Field 33 MSCEn 153Field 32 CMOW 154Field 31 EnIA 155Field 30 EnIB 156Field 29 LSMAOE 157Field 28 nTLSMD 158Field 27 EnDA 159Field 26 UCI 160Field 25 EE 161Field 24 E0E 162Field 23 SPAN 163Field 22 EIS 164Field 21 IESB 165Field 20 TSCXT 166Field 19 WXN 167Field 18 nTWE 168Res0 17 169Field 16 nTWI 170Field 15 UCT 171Field 14 DZE 172Field 13 EnDB 173Field 12 I 174Field 11 EOS 175Field 10 EnRCTX 176Field 9 UMA 177Field 8 SED 178Field 7 ITD 179Field 6 nAA 180Field 5 CP15BEN 181Field 4 SA0 182Field 3 SA 183Field 2 C 184Field 1 A 185Field 0 M 186EndSysreg 187 188SysregFields CPACR_ELx 189Res0 63:29 190Field 28 TTA 191Res0 27:26 192Field 25:24 SMEN 193Res0 23:22 194Field 21:20 FPEN 195Res0 19:18 196Field 17:16 ZEN 197Res0 15:0 198EndSysregFields 199 200Sysreg CPACR_EL1 3 0 1 0 2 201Fields CPACR_ELx 202EndSysreg 203 204Sysreg SMPRI_EL1 3 0 1 2 4 205Res0 63:4 206Field 3:0 PRIORITY 207EndSysreg 208 209SysregFields ZCR_ELx 210Res0 63:9 211Raz 8:4 212Field 3:0 LEN 213EndSysregFields 214 215Sysreg ZCR_EL1 3 0 1 2 0 216Fields ZCR_ELx 217EndSysreg 218 219SysregFields SMCR_ELx 220Res0 63:32 221Field 31 FA64 222Res0 30:9 223Raz 8:4 224Field 3:0 LEN 225EndSysregFields 226 227Sysreg SMCR_EL1 3 0 1 2 6 228Fields SMCR_ELx 229EndSysreg 230 231Sysreg FAR_EL1 3 0 6 0 0 232Field 63:0 ADDR 233EndSysreg 234 235SysregFields CONTEXTIDR_ELx 236Res0 63:32 237Field 31:0 PROCID 238EndSysregFields 239 240Sysreg CONTEXTIDR_EL1 3 0 13 0 1 241Fields CONTEXTIDR_ELx 242EndSysreg 243 244Sysreg CLIDR_EL1 3 1 0 0 1 245Res0 63:47 246Field 46:33 Ttypen 247Field 32:30 ICB 248Field 29:27 LoUU 249Field 26:24 LoC 250Field 23:21 LoUIS 251Field 20:18 Ctype7 252Field 17:15 Ctype6 253Field 14:12 Ctype5 254Field 11:9 Ctype4 255Field 8:6 Ctype3 256Field 5:3 Ctype2 257Field 2:0 Ctype1 258EndSysreg 259 260Sysreg SMIDR_EL1 3 1 0 0 6 261Res0 63:32 262Field 31:24 IMPLEMENTER 263Field 23:16 REVISION 264Field 15 SMPS 265Res0 14:12 266Field 11:0 AFFINITY 267EndSysreg 268 269Sysreg CSSELR_EL1 3 2 0 0 0 270Res0 63:5 271Field 4 TnD 272Field 3:1 Level 273Field 0 InD 274EndSysreg 275 276Sysreg SVCR 3 3 4 2 2 277Res0 63:2 278Field 1 ZA 279Field 0 SM 280EndSysreg 281 282Sysreg ZCR_EL2 3 4 1 2 0 283Fields ZCR_ELx 284EndSysreg 285 286Sysreg SMPRIMAP_EL2 3 4 1 2 5 287Field 63:60 P15 288Field 59:56 P14 289Field 55:52 P13 290Field 51:48 P12 291Field 47:44 P11 292Field 43:40 P10 293Field 39:36 F9 294Field 35:32 P8 295Field 31:28 P7 296Field 27:24 P6 297Field 23:20 P5 298Field 19:16 P4 299Field 15:12 P3 300Field 11:8 P2 301Field 7:4 P1 302Field 3:0 P0 303EndSysreg 304 305Sysreg SMCR_EL2 3 4 1 2 6 306Fields SMCR_ELx 307EndSysreg 308 309Sysreg DACR32_EL2 3 4 3 0 0 310Res0 63:32 311Field 31:30 D15 312Field 29:28 D14 313Field 27:26 D13 314Field 25:24 D12 315Field 23:22 D11 316Field 21:20 D10 317Field 19:18 D9 318Field 17:16 D8 319Field 15:14 D7 320Field 13:12 D6 321Field 11:10 D5 322Field 9:8 D4 323Field 7:6 D3 324Field 5:4 D2 325Field 3:2 D1 326Field 1:0 D0 327EndSysreg 328 329Sysreg FAR_EL2 3 4 6 0 0 330Field 63:0 ADDR 331EndSysreg 332 333Sysreg CONTEXTIDR_EL2 3 4 13 0 1 334Fields CONTEXTIDR_ELx 335EndSysreg 336 337Sysreg CPACR_EL12 3 5 1 0 2 338Fields CPACR_ELx 339EndSysreg 340 341Sysreg ZCR_EL12 3 5 1 2 0 342Fields ZCR_ELx 343EndSysreg 344 345Sysreg SMCR_EL12 3 5 1 2 6 346Fields SMCR_ELx 347EndSysreg 348 349Sysreg FAR_EL12 3 5 6 0 0 350Field 63:0 ADDR 351EndSysreg 352 353Sysreg CONTEXTIDR_EL12 3 5 13 0 1 354Fields CONTEXTIDR_ELx 355EndSysreg 356 357SysregFields TTBRx_EL1 358Field 63:48 ASID 359Field 47:1 BADDR 360Field 0 CnP 361EndSysregFields 362 363Sysreg TTBR0_EL1 3 0 2 0 0 364Fields TTBRx_EL1 365EndSysreg 366 367Sysreg TTBR1_EL1 3 0 2 0 1 368Fields TTBRx_EL1 369EndSysreg 370