Crate sbi[][src]

A Rust wrapper around the RISC-V Supervisor Binary Interface (SBI).

This crate aims to provide an idiomatic Rust interface to all the core extensions of SBI v0.2.0+.

Modules

base

The base extension contains all the required functions that any conforming SBI implementation must implement. It permits the supervisor to probe for information about the implementation.

hsm

The HSM extension permits the supervisor to manage the state of other harts.

ipi

The IPI extension permits the supervisor to send inter-processor interrupts to a set of harts.

reset

The system reset extension permits the supervisor to manage system power state.

rfence

The rfence extension permits the supervisor to force fences on remote harts.

timer

The timer extension permits the supervisor to program the clock for the next timer event.

Functions

ecall

The ecall instruction is used to make SBI calls. This function is exposed to allow access to experimental, vendor-specific, and firmware-specific SBI extensions. For core extensions, you should prefer using the individual modules.

Type Definitions

ArgValue

A raw value for an argument to an SBI call.

ExtensionId

A unique identifier for an extension.

FunctionId

A unique identifier for a function within an extension.

RetError

A raw error for a return from an SBI call.

RetValue

A raw value for a return from an SBI call.