Crate rustsbi_jh7110

Source
Expand description

RustSBI-JH7110 is an implementation of the RustSBI traits, and the SBI extensions relevant for the JH7110 SoC.

The project includes a library to create your own SBI firmware, and a standalone binary reference implementation.

Re-exports§

  • pub use sbi::*;

Modules§

  • Assembly wrappers for low-level CPU instructions.
  • Bit-manipulation functions from the riscv crate.
  • Functions to access a global Clint instance.
  • JH7110 Console implementation for early boot I/O.
  • Early trap handler for interrupts and exceptions.
  • Functions and types for SBI environment calls (ECALL).
  • Implementation of the EnvInfo trait.
  • Types and functions for exception and interrupt handling.
  • Main SBI executor implementation.
  • Firmware dynamic information
  • HARTs information and helpers.
  • Represents types and functions for the HPM (Hardware Performance Monitor) subsystem.
  • Functions for board initialization.
  • RustSBI Ipi implementation.
  • Basic “kernel” integration tests.
  • Represents L2 Performance Monitor Event counter configuration and counters.
  • Physical Memory Protection
  • PMU extension implementation from the SBI specification §11.
  • Implementation of the Probe SBI Base extension function.
  • Register types for common RISC-V CSRs.
  • Implementation of the SBI RFNC extension.
  • SBI convenience functions wrapping low-level assembly.
  • Representation of per-HART scratch space.
  • RustSBI Timer implementation.
  • Implementation of a Translation Lookaside Buffer for the SBI RFNC extension.
  • Main trap handler impementation.
  • Implementation of the Version functions from the SBI BASE extension.

Macros§

  • Convenience macro to define bitfield operations on a user-defined type.
  • Serial implementation of the eprintln macro from core.
  • Serial implementation of the print macro from core.
  • Serial implementation of the println macro from core.

Enums§

  • Represents error variants for the library.

Constants§

Statics§

Type Aliases§