riscv-non-isa / riscv-brs

The Boot and Runtime Services (BRS) specification provides the software requirements for system vendors and Operating System Vendors (OSVs) to interoperate with one another by providing expectations for the Operating System (OS) to utilize in acts of device discovery, system management, and other rich operations provided in this specification.
https://jira.riscv.org/browse/RVG-48
Creative Commons Attribution 4.0 International
41 stars 13 forks source link
acpi brs-b brs-i devicetree ebbr firmware interoperability platform risc-v smbios standards uefi

= RISC-V Boot and Runtime Services (BRS) Specification

The Boot and Runtime Services (BRS) specification provides the software requirements for system vendors and Operating System Vendors (OSVs) to interoperate with one another by providing expectations for the Operating System (OS) to utilize in acts of device discovery, system management, and other rich operations provided in this specification.

This specification is still a work in progress, based on an earlier draft available at https://docs.google.com/document/d/1X0TSbheEJjRGWhG2nzUnfIl_QcHWSuvd

= License

This work is licensed under a Creative Commons Attribution 4.0 International License (CC-BY-4.0). See the https://github.com/riscv/docs-spec-template/blob/main/LICENSE[LICENSE] file for details.

= Contributors

Contributors to this specification are contained in the https://github.com/riscv-non-isa/riscv-brs/blob/main/contributors.adoc[contributors.adoc] file.

= Dependencies

This project is built using AsciiDoctor (Ruby). The repository has been setup to build the PDF on checkin using GitHub actions. Workflow dependencies are located in the dependencies directory.

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 https://github.com/riscv/docs-resources[RISC-V 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 the document

The final specification form of PDF can be generated using the make command.