Smstateen Extension
Synopsis
Machine-mode view of the state-enable extension. The Smstateen
extension specification comprises the mstateen*, sstateen*,
and hstateen* CSRs and their functionality.
| The Smstateen extension specification is an M-mode extension as it includes M-mode features, but the supervisor-mode visible components of the extension are named as the Ssstateen extension. Only Ssstateen is mandated in the RVA22S64 profile when the hypervisor extension is implemented. These registers are not mandated or supported options without the hypervisor extension, as there are no RVA22S64 supported options with relevant state to control in the absence of the hypervisor extension. |
Parameters
This extension has the following implementation options (AKA parameters):
- MSTATEEN0_C_TYPE
-
Type
string
Valid Values
[rw, read-only-0, read-only-1]
Description
Behavior of the mstateen0.C bit, which controls access to any and all custom state:
-
'rw': read-write
-
'read-only-0': read-only, fixed to 0
-
'read-only-1': read-only, fixed to 1
An implementation with no custom state must set this to 'read-only-0'.
-
- MSTATEEN0_SE0_TYPE
-
Type
string
Valid Values
[rw, read-only-0, read-only-1]
Description
Behavior of the mstateen0.SE0, which controls access to hstateen0, hstateen0h, and sstateen0:
-
'rw': read-write
-
'read-only-0': read-only, fixed to 0
-
'read-only-1': read-only, fixed to 1
mstateen0.SE0 may be read-only zero only if the hypervisor extension is not implemented and sstateen0 is all read-only zeros.
-
- MSTATEEN1_SE0_TYPE
-
Type
string
Valid Values
[rw, read-only-0, read-only-1]
Description
Behavior of the mstateen1.SE0, which controls access to hstateen1, hstateen1h, and sstateen1:
-
'rw': read-write
-
'read-only-0': read-only, fixed to 0
-
'read-only-1': read-only, fixed to 1
mstateen1.SE0 may be read-only zero only if the hypervisor extension is not implemented and sstateen1 is all read-only zeros. No bits of sstateen1 are currently defined, so only the hypervisor condition applies.
-
- MSTATEEN2_SE0_TYPE
-
Type
string
Valid Values
[rw, read-only-0, read-only-1]
Description
Behavior of the mstateen2.SE0, which controls access to hstateen2, hstateen2h, and sstateen2:
-
'rw': read-write
-
'read-only-0': read-only, fixed to 0
-
'read-only-1': read-only, fixed to 1
mstateen2.SE0 may be read-only zero only if the hypervisor extension is not implemented and sstateen2 is all read-only zeros. No bits of sstateen2 are currently defined, so only the hypervisor condition applies.
-
- MSTATEEN3_SE0_TYPE
-
Type
string
Valid Values
[rw, read-only-0, read-only-1]
Description
Behavior of the mstateen3.SE0, which controls access to hstateen3, hstateen3h, and sstateen3:
-
'rw': read-write
-
'read-only-0': read-only, fixed to 0
-
'read-only-1': read-only, fixed to 1
mstateen3.SE0 may be read-only zero only if the hypervisor extension is not implemented and sstateen3 is all read-only zeros. No bits of sstateen3 are currently defined, so only the hypervisor condition applies.
-