blob: 83768656cf123a013f90040c1fb7539f66502ace [file] [log] [blame] [view]
Miguel Osorio40caa9e2021-05-27 21:45:20 -07001---
2title: "OpenTitan Device Software"
3---
4
5## Reference Firmware Images
6
7The OpenTitan Reference Firmware Images together make up the Opentitan Reference Firmware Stack.
8Different images are used for different boot stages.
9
10The Reference Firmware Images are, in boot order:
11
121. The [Mask ROM]({{< relref "sw/device/silicon_creator/mask_rom/docs" >}}) (in `sw/device/mask_rom`), executed at chip reset;
Miguel Osorioe7615f52021-11-03 17:51:28 -0700132. The ROM_EXT (in `sw/device/silicon_creator/rom_ext`), the second stage Silicon Creator code, executed from flash; and
Miguel Osorio40caa9e2021-05-27 21:45:20 -070014
15### Testing-only Images
16
17There are also some other standalone firmware images in the repository, which are only used for testing.
18
Timothy Trippelcb8a47e2021-09-07 21:57:22 +000019- [`sw/device/tests`]({{< relref "sw/device/tests/index.md" >}}) contains several categories of chip-level tests, including smoke, IP integration, and system-level (use case) tests.
Miguel Osorio40caa9e2021-05-27 21:45:20 -070020
21- [`sw/device/benchmarks/coremark`]({{< relref "sw/device/benchmarks/coremark/README.md" >}}) contains infrastructure for running the [CoreMark](https://github.com/eembc/coremark) benchmark suite on the OpenTitan device.
22- `sw/device/riscv_compliance_support` contains infrastructure so we can run the [RISC-V Compliance](https://github.com/riscv/riscv-compliance) tests on the OpenTitan core.
23- `sw/device/sca` contains on-device software used for Side-Channel Analysis.
24- `sw/device/prebuilt` contains pre-built Tock images, which may not be up-to-date.
25- `sw/device/examples` contains example images, including a simple [Hello World]({{< relref "sw/device/examples/hello_world/README.md" >}}).
26
27There are also prototype versions of some of the boot stages, now only used for testing:
28
Timothy Trippel961b2cd2021-12-14 22:28:58 +000029- [`sw/device/lib/testing/test_rom`]({{< relref "sw/device/lib/testing/test_rom/README.md" >}}) is a previous, testing-only version of the Mask ROM.
Miguel Osorio40caa9e2021-05-27 21:45:20 -070030- `sw/device/exts` contains software for our prototype second boot stage images.
31
32## Documentation Index
33
34{{% sectionContent %}}