Skip to content

Latest commit

 

History

History
55 lines (45 loc) · 1.71 KB

README.md

File metadata and controls

55 lines (45 loc) · 1.71 KB

Vyond-Tee Quick Start

Prerequisites

To build Vyond-Tee, the following tools are required

  • Cargo

As Vyond security monitor is written in Rust, Cargo, Rust Package Manager, is required. See Cargo Installation page.

  • RISC-V Toolchain

To build the firmware binary, risc-v toolchain is quired. See RISC-V Toolchain Installation Page. If you have setup WorldGuard development environment, you don't have to set it up.

  • QEMU

Vyond-TEE currently run on qemu-system-riscv64 and we will soon release a new version that run on WorldGuard enabled Rocket SoC. See Download QEMU Page.

Build Vyond Security Monitor

# using run-vyond
./run-vyond build-sm --clean-build  # add --semihosting to enable. Note that rocket doesn't support semihosting.
# using cargo directly
cd $VYOND_ROOT/tee/monitor
cargo build  # add --fetures semihosting to enable. Note that rocket doesn't support semihosting.

Build Firmware (Opensbi + Security Monitor)

# using run-vyond
./run-vyond build-fw --clean-build $VYOND_ROOT/prebuilt/Image
# Set CROSS_COMPILE environment variable 
export CROSS_COMPILE=$YOUR_TOOLCHAIN/riscv64-unknown-elf-
cd $VYOND_ROOT/tee/sbi
./build.sh $VYOND_ROOT/prebuilt/Image

Run Vyond-TEE on QEMU

# using run-vyond
./run-vyond run-fw-on-qemu
# using run.sh directly
cd $VYOND_ROOT/tee
./run.sh -fw <fw_path> -qemu <wg-enabled qemu path>

Run Vyond-TEE on Rocket SoC

# flash  the fw_payload.bin to sdcard
./run-vyond flash-fw /dev/sdh  # replace /dev/sdh with your blockd device file of sdcard