4.1. SBI Requirements

The RISC-V Supervisor Binary Interface Specification (SBI) [8] defines an interface between the supervisor mode and the next higher privilege mode. This section defines the mandatory SBI version and extensions implemented by the higher privilege mode in order to be compatible with this specification.

ID# Rule

SBI_010

The SBI implementation MUST conform to SBI v2.0 or later.

SBI_020

The SBI implementation MUST implement the Hart State Management (HSM) extension.

HSM is used by an OS for starting up, stopping, suspending and querying the status of secondary harts.

Certain requirements are conditional on the presence of RISC-V ISA extensions or system features.

ID# Rule

SBI_030

The Timer Extension (TIME) MUST be implemented, if the RISC-V "stimecmp / vstimecmp" Extension (Sstc, [11]) is not available.

SBI_040

The S-Mode IPI Extension (sPI) MUST be implemented, if the Incoming MSI Controller (IMSIC, [12]) is not available.

SBI_050

The RFENCE Extension (RFNC) extension MUST be implemented, if the Incoming MSI Controller (IMSIC, [12]) is not available.

SBI_060

The Performance Monitoring Extension (PMU) MUST be implemented, if the counter delegation-related S-Mode ISA extensions (Sscsrind [13] and Ssccfg [14]) are not present.

SBI_070

The Debug Console Extension (DBCN) MUST be implemented if the ACPI SPCR table references Interface Type 0x15.