Skip to content

Message Signaled Interrupts for RISC-V

Notifications You must be signed in to change notification settings

jingzhishen/riscv_msi

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RISC-V MSI Test in Rust

Testing the new MSIs added by the draft Advanced Interrupt Architecture (AIA) specification.

Blog Posts

First blog post: 30-June-2022

Second blog post: 26-July-2022

Quick Emulator (QEMU)

The MSI controller has been added to the virt machine to QEMU. This may require you to upgrade your QEMU.

Quick Emulator on GitHub

Creating the Hard Drive for PCI test

You need to create a file to attach as the "hard drive". This can be done one of several ways:

fallocate -l8M hdd.dsk

or

dd if=/dev/urandom of=hdd.dsk bs=1M count=8

Downloading Rust Toolchain

Get rust here: rustup.rs

Make sure the riscv32i-unknown-none-elf target is added.

rustup target add riscv32i-unknown-none-elf

Running

The run.sh script controls the parameters to QEMU. This is linked to cargo via .cargo/config

Run the test by using cargo:

cargo run

or

cargo run --release

About

Message Signaled Interrupts for RISC-V

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 92.0%
  • Shell 4.5%
  • Assembly 3.5%