You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
parser.add_argument("--tool-target-triple", default=get_tool_target_triple(), help="Compile the Microkit tool for this target triple")
549
-
parser.add_argument("--boards", metavar="BOARDS", help="Comma-separated list of boards to support. When absent, all boards are supported.")
550
-
parser.add_argument("--configs", metavar="CONFIGS", help="Comma-separated list of configurations to support. When absent, all configurations are supported.")
551
-
parser.add_argument("--skip-tool", action="store_true", help="Tool will not be built")
552
-
parser.add_argument("--skip-sel4", action="store_true", help="seL4 will not be built")
553
-
parser.add_argument("--skip-docs", action="store_true", help="Docs will not be built")
554
-
parser.add_argument("--skip-tar", action="store_true", help="SDK and source tarballs will not be built")
Copy file name to clipboardExpand all lines: docs/manual.md
+55Lines changed: 55 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -981,6 +981,61 @@ If you are booting from U-Boot, use the following command to start the system im
981
981
Note that the OpenSBI version from the CVA6 SDK at the time of writing has issues when
982
982
booting. It is recommended to use the mainline OpenSBI.
983
983
984
+
## Cheshire
985
+
986
+
Support is available for [Cheshire](https://github.com/pulp-platform/cheshire). It is an SoC design based on the CVA6 core, implementing a 64-bit RISC-V CPU. The design supports the hypervisor extension but currently is not supported in seL4.
987
+
988
+
Microkit outputs a raw binary for this device. Several steps are required in order to boot.
989
+
990
+
A custom version of OpenSBI is required. It can be found [here](https://github.com/pulp-platform/opensbi/tree/cheshire). Build the firmware payload using platform `fpga/cheshire`.
991
+
992
+
### Using U-Boot
993
+
994
+
With a system pre-configured with the Cheshire ZSBL, OpenSBI and U-boot:
995
+
996
+
=> go 0x90000000
997
+
998
+
### Raw systerm with no bootloader
999
+
1000
+
Without any firmware present on the SD card, it is still possible to boot Cheshire with a Microkit system.
1001
+
1002
+
Using a GDB prompt via openOCD:
1003
+
1004
+
1. Reset board
1005
+
> monitor reset halt
1006
+
1007
+
2. Load a device tree blob (DTS available in Cheshire repo or seL4) to memory and set the a0 and a1 registers to point at it:
1008
+
1009
+
> restore /path/to/cheshire.dtb binary 0xa0000000
1010
+
1011
+
(tell openSBI where DTB is)
1012
+
1013
+
> set $a0=0xa0000000
1014
+
1015
+
(tell openSBI that the default hart is #0)
1016
+
1017
+
> set $a1=0
1018
+
1019
+
3. Load openSBI
1020
+
1021
+
> load /path/to/opensbi/fw_payload.elf
1022
+
1023
+
4. Allow openSBI to boot, and interrupt it once the line `Test payload running` is emitted on serial.
1024
+
1025
+
> continue
1026
+
1027
+
(wait for output)
1028
+
1029
+
> (Ctrl+C)
1030
+
1031
+
5. Load Microkit image and execute
1032
+
1033
+
> restore /path/to/loader.img binary 0x90000000
1034
+
1035
+
(execute)
1036
+
1037
+
> continue
1038
+
984
1039
## Adding Platform Support
985
1040
986
1041
The following section is a guide for adding support for a new platform to Microkit.
0 commit comments