Skip to content

Commit 265dabb

Browse files
fix: correct Svadu ADUE field type logic in environment CSRs (#1027)
The ADUE field type() logic was backwards in all environment configuration CSRs. Fixed logic: - When Svadu IS implemented ADUE field is Read-Write (software control) - When Svadu is NOT implemented ADUE field is Read-Only-0 (hardwired) Closes #1026 Signed-off-by: Sukuna0007Abhi <[email protected]>
1 parent a4bf582 commit 265dabb

File tree

4 files changed

+4
-4
lines changed

4 files changed

+4
-4
lines changed

spec/std/isa/csr/H/henvcfg.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ fields:
183183
zero if menvcfg.ADUE is zero.
184184
definedBy: Svadu
185185
type(): |
186-
return (implemented?(ExtensionName::Svadu)) ? CsrFieldType::RO : CsrFieldType::RW;
186+
return (implemented?(ExtensionName::Svadu)) ? CsrFieldType::RW : CsrFieldType::RO;
187187
reset_value(): |
188188
return (implemented?(ExtensionName::Svadu)) ? UNDEFINED_LEGAL : 0;
189189
CBZE:

spec/std/isa/csr/H/henvcfgh.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ fields:
105105
zero if menvcfg.ADUE is zero.
106106
definedBy: Svadu
107107
type(): |
108-
return (implemented?(ExtensionName::Svadu)) ? CsrFieldType::RO : CsrFieldType::RW;
108+
return (implemented?(ExtensionName::Svadu)) ? CsrFieldType::RW : CsrFieldType::RO;
109109
reset_value(): |
110110
return (implemented?(ExtensionName::Svadu)) ? UNDEFINED_LEGAL : 0;
111111
sw_read(): |

spec/std/isa/csr/menvcfg.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ fields:
194194
zero if menvcfg.ADUE is zero.
195195
definedBy: Svadu
196196
type(): |
197-
return (implemented?(ExtensionName::Svadu)) ? CsrFieldType::RO : CsrFieldType::RW;
197+
return (implemented?(ExtensionName::Svadu)) ? CsrFieldType::RW : CsrFieldType::RO;
198198
reset_value(): |
199199
return (implemented?(ExtensionName::Svadu)) ? UNDEFINED_LEGAL : 0;
200200
CBZE:

spec/std/isa/csr/menvcfgh.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,6 @@ fields:
4646
Alias of `menvcfg.ADUE`
4747
definedBy: Svadu
4848
type(): |
49-
return (implemented?(ExtensionName::Svadu)) ? CsrFieldType::RO : CsrFieldType::RW;
49+
return (implemented?(ExtensionName::Svadu)) ? CsrFieldType::RW : CsrFieldType::RO;
5050
reset_value(): |
5151
return (implemented?(ExtensionName::Svadu)) ? UNDEFINED_LEGAL : 0;

0 commit comments

Comments
 (0)