README.adoc
April 6, 2023 ยท View on GitHub
= RISC-V SBI specification
SBI (Supervisor Binary Interface) is an interface between the Supervisor Execution Environment (SEE) and the supervisor. It allows the supervisor to execute some privileged operations by using the ecall instruction. Examples of SEE and supervisor are: M-Mode and S-Mode on Unix-class platforms, where SBI is the only interface between them, as well as the Hypervisor extended-Supervisor (HS) and Virtualized Supervisor (VS).
Discussion of SBI occurs on the https://lists.riscv.org/g/tech-prs[RISC-V Platform Runtime Services list]. It is publicly readable but posting requires being a member of the RISC-V Foundation. Any new SBI extension needs to be discussed and approved there before being merged.
A list of implementations introduces SBI to M-Mode and HS-Mode software. See section "SBI Implementation IDs"
= Licensing
The files in this repository are licensed under the Creative Commons Attribution 4.0 International License (CC-BY 4.0). The full license text is available at https://creativecommons.org/licenses/by/4.0/.
= Dependencies The PDF built in this project uses AsciiDoctor (Ruby). For more information on AsciiDoctor, specification guidelines, or building locally, see the https://github.com/riscv/docs-dev-guide[RISC-V Documentation Developer Guide].
= Cloning the Project This project uses https://git-scm.com/book/en/v2/Git-Tools-Submodules[GitHub Submodules] to include the RISC-V https://github.com/riscv/docs-resources[docs-resources project] to achieve a common look and feel.
When cloning this repository for the first time, you must either use
git clone --recurse-submodules or execute git submodule init and
git submodule update after the clone to populate the docs-resources
directory. Failure to clone the submodule, will result in the PDF build
fail with an error message like the following:
....
$ make
asciidoctor-pdf
-a toc
-a compress
-a pdf-style=docs-resources/themes/riscv-pdf.yml
-a pdf-fontsdir=docs-resources/fonts
--failure-level=ERROR
-o profiles.pdf profiles.adoc
asciidoctor: ERROR: could not locate or load the built-in pdf theme `docs-resources/themes/riscv-pdf.yml'; reverting to default theme
No such file or directory - notoserif-regular-subset.ttf not found in docs-resources/fonts
Use --trace for backtrace
make: *** [Makefile:7: profiles.pdf] Error 1
....
= Building Documents
The final specification in form of PDF and HTML can be generated using
make command. The makefile internally uses asciidoctor so the packages
required by the makefile need to be installed on the build system using
make install-debs or make install-rpms.