From c451a12ae2b7b9e12f2637d934bc07d9fe2ef3b1 Mon Sep 17 00:00:00 2001 From: Ivan Velickovic Date: Tue, 11 Feb 2025 22:03:17 +1100 Subject: [PATCH] Add SiFive Premier P550 Signed-off-by: Ivan-Velickovic --- Hardware/p550.md | 76 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 Hardware/p550.md diff --git a/Hardware/p550.md b/Hardware/p550.md new file mode 100644 index 00000000000..a81fde1cf74 --- /dev/null +++ b/Hardware/p550.md @@ -0,0 +1,76 @@ +--- +riscv_hardware: true +cmake_plat: p550 +xcompiler_arg: -DRISCV64=1 +platform: HiFive Premier P550 +arch: RV64GC +virtualization: "No" +iommu: "No" +simulation_target: false +Status: "Unverified" +Contrib: "Community" +Maintained: "seL4 Foundation" +soc: ESWIN EIC7700X +cpu: P550 +SPDX-License-Identifier: CC-BY-SA-4.0 +SPDX-FileCopyrightText: 2020 seL4 Project a Series of LF Projects, LLC. +--- + +# HiFive Premier P550 + +The HiFive Premier P550 is a RISC-V development platform from SiFive based +on the ESWIN EIC7700X SoC. It is a quad-core SoC using the SiFive P550 +CPU. + +Details and links to manuals can be found on the [SiFive product page] +(https://www.sifive.com/boards/hifive-premier-p550). + +The SoC technical reference manual can be found [here] +(https://github.com/eswincomputing/EIC7700X-SoC-Technical-Reference-Manual/releases). + +The P550 arrives with the following boot process from the SPI flash: + +1. Firmware starts +2. OpenSBI starts +3. U-Boot proper starts + +From U-Boot proper you can then load and start an seL4 image, see below for details. + +## Building the GCC toolchain + +{% include risc-v.md %} + +## Building seL4test + +{% include sel4test.md %} + +## Booting via microSD card + +These instructions expect the microSD card to be paritioned with FAT. + +The microSD card slot registers as device `1` in U-Boot so to see if the device +is recognised run: +```sh +mmc dev 1 +# Check that the card info is expected +mmc info +# List partitions +mmc part +``` + +To load and run the image: +```sh +fatload mmc 1: 0x90000000 sel4test-driver-image-riscv-p550 +go 0x90000000 +``` + +## Booting via TFTP + +If you have setup a TFTP server, enter the following commands on the U-Boot console +to load an image via the network. + +```sh +dhcp +tftpboot 0x90000000 :sel4test-driver-image-riscv-p550 +go 0x90000000 +```