Skip to content

Commit 54b5f3a

Browse files
committed
schema(csr): add writeable field
This adds a boolean writeable field to the CSR schema. We need this for two reasons: * Indirect CSRs that have no address convention * CSRs like mscontext that don't follow the direct address convention
1 parent f8a7b59 commit 54b5f3a

File tree

323 files changed

+777
-154
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

323 files changed

+777
-154
lines changed

arch/csr/F/fcsr.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ kind: csr
55
name: fcsr
66
long_name: Floating-point control and status register (`frm` + `fflags`)
77
address: 0x003
8+
writeable: true
89
description: |
910
The floating-point control and status register, `fcsr`, is a RISC-V
1011
control and status register (CSR). It is a 32-bit read/write register

arch/csr/H/hcounteren.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ kind: csr
66
name: hcounteren
77
long_name: Hypervisor Counter Enable
88
address: 0x606
9+
writeable: true
910
priv_mode: S
1011
length: 32
1112
description: |

arch/csr/H/henvcfg.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ $schema: "csr_schema.json#"
44
kind: csr
55
name: henvcfg
66
address: 0x60A
7+
writeable: true
78
long_name: Hypervisor Environment Configuration
89
description: |
910
The henvcfg CSR is a 64-bit read/write register that controls certain characteristics of the

arch/csr/H/henvcfgh.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ $schema: "csr_schema.json#"
44
kind: csr
55
name: henvcfgh
66
address: 0x61A
7+
writeable: true
78
base: 32
89
long_name: most-significant 32 bits of Hypervisor Environment Configuration
910
description: |

arch/csr/H/hgatp.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ description: |
102102
HFENCE.GVMA instruction (see <<hfence.vma>>) before or
103103
after writing `hgatp`.
104104
address: 0x680
105+
writeable: true
105106
priv_mode: S
106107
definedBy: H
107108
length: SXLEN

arch/csr/H/htimedelta.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ description: |
1515
`htimedelta` may be used to represent negative time offsets.
1616
1717
address: 0x605
18+
writeable: true
1819
priv_mode: S
1920
definedBy: H
2021
length: 64

arch/csr/H/htimedeltah.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ description: |
88
Upper half of the `htimedelta` CSR.
99
1010
address: 0x615
11+
writeable: true
1112
priv_mode: S
1213
definedBy: H
1314
length: 32

arch/csr/H/htinst.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ $schema: "csr_schema.json#"
44
kind: csr
55
name: htinst
66
address: 0x64a
7+
writeable: true
78
long_name: Hypervisor Trap Instruction Register
89
description: |
910
When a trap is taken into HS-mode, mtinst is written with a value that, if nonzero,

arch/csr/H/htval.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ $schema: "csr_schema.json#"
44
kind: csr
55
name: htval
66
address: 0x643
7+
writeable: true
78
long_name: Hypervisor Trap Value Register
89
description: |
910
When a trap is taken into HS-mode, htval is written with additional exception-specific information, alongside stval, to assist software in handling the trap.

arch/csr/H/mtinst.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ $schema: "csr_schema.json#"
44
kind: csr
55
name: mtinst
66
address: 0x34a
7+
writeable: true
78
long_name: Machine Trap Instruction Register
89
description: |
910
When a trap is taken into M-mode, mtinst is written with a value that, if nonzero,

0 commit comments

Comments
 (0)