Skip to content

Commit 13886ca

Browse files
clarify that quad 2 and 3 entries 4 and 5 are reserved when LVLBITS=2 (#442)
also note that Zcherilevels with LVLBITS=1 is in the prototype phase, I think LVLBITS=2 will need more analysis to prove that the spec is correct (at least for the ACPERM rules).
1 parent b7c9d7e commit 13886ca

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

src/introduction.adoc

+1-1
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ CAUTION: The extension names are provisional and subject to change.
109109
|<<lr_sc_bh_ext, {lr_sc_bh_ext_name}>> | Stable | This extension is a candidate for freezing
110110
|<<cheri_pte_ext, {cheri_pte_ext_name}>> | Prototype | This extension is a prototype, software is being developed to use it to increase the maturity level
111111
|<<tid_ext, {tid_ext_name}>> | Prototype | This extension is a prototype, software is being developed to use it to increase the maturity level
112-
|<<cheri_levels_ext, {cheri_levels_ext_name}>> | Prototype | This extension is a prototype, software is being developed to use it to increase the maturity level
112+
|<<cheri_levels_ext, {cheri_levels_ext_name}>> with `LVLBITS=1` | Prototype | This extension is a prototype, software is being developed to use it to increase the maturity level.
113113
|==============================================================================
114114

115115
{cheri_base_ext_name} is defined as the base extension which all CHERI RISC-V

src/level-ext.adoc

+6-5
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ endif::[]
8282
|Bits[4:3]| R | W | C | LM | EL | SL | X | ASR | Mode^1^ |
8383
| 0-2 10+| reserved
8484
| 3 | ✔ | | ✔ | | | 0^1^ | | | N/A | Data & Cap R0 (without <<lm_perm>>)
85-
| 4 | ✔ | ✔ | ✔ | ✔ | | _(3)_ | | | N/A | Reserved for `LVLBITS=2`
86-
| 5 | ✔ | ✔ | ✔ | ✔ | | _(2)_ | | | N/A | Reserved for `LVLBITS=2`
85+
| 4 | ✔ | ✔ | ✔ | ✔ | | _(3)_ | | | N/A | _Reserved_ when `LVLBITS=1` ^2^
86+
| 5 | ✔ | ✔ | ✔ | ✔ | | _(2)_ | | | N/A | _Reserved_ when `LVLBITS=1` ^2^
8787
| 6 | ✔ | ✔ | ✔ | ✔ | | 1 | | | N/A | Data & Cap RW (with store _local_, no <<el_perm>>)
8888
| 7 | ✔ | ✔ | ✔ | ✔ | | 0 | | | N/A | Data & Cap RW (no store _local_, no <<el_perm>>)
8989
11+| *Quadrant 3: Capability data read/write*
@@ -92,13 +92,14 @@ endif::[]
9292
|Bits[4:3]| R | W | C | LM | EL | SL | X | ASR | Mode^1^ |
9393
| 0-2 10+| reserved
9494
| 3 | ✔ | | ✔ | ✔ | ✔ | 0^1^ | | | N/A | Data & Cap R0
95-
| 4 | ✔ | ✔ | ✔ | ✔ | ✔ | _(3)_ | | | N/A | Reserved for `LVLBITS=2`
96-
| 5 | ✔ | ✔ | ✔ | ✔ | ✔ | _(2)_ | | | N/A | Reserved for `LVLBITS=2`
95+
| 4 | ✔ | ✔ | ✔ | ✔ | ✔ | _(3)_ | | | N/A | _Reserved_ when `LVLBITS=1` ^2^
96+
| 5 | ✔ | ✔ | ✔ | ✔ | ✔ | _(2)_ | | | N/A | _Reserved_ when `LVLBITS=1` ^2^
9797
| 6 | ✔ | ✔ | ✔ | ✔ | ✔ | 1 | | | N/A | Data & Cap RW (with store _local_)
9898
| 7 | ✔ | ✔ | ✔ | ✔ | ✔ | 0 | | | N/A | Data & Cap RW (no store _local_)
9999
|==============================================================================
100100

101-
^1^ SL isn't applicable in these cases, but this value is reported by <<GCPERM>> to simplify the rules followed by <<ACPERM>>
101+
^1^ SL isn't applicable in these cases, but this value is reported by <<GCPERM>> to simplify the rules followed by <<ACPERM>> +
102+
^2^ These entries are reserved when `LVLBITS=1` and in use when `LVLBITS=2`
102103

103104
[#section_cap_level_change]
104105
=== Changing capability levels and permissions

0 commit comments

Comments
 (0)