#uefi #graphics #no-std

no-std uefi-graphics-driver

适用于UEFI环境的嵌入式图形显示驱动程序

1个不稳定版本

0.1.1 2023年4月11日
0.1.0 2023年4月11日

#49 in #uefi

MIT/Apache

5KB
71

uefi代码运行

  1. 安装qemu和edk2-ovmf
sudo pacman -S qemu-full
sudo pacman -S edk2-ovmf --needed
  1. 安装uefi工具链
rustup target add x86_64-unknown-uefi
  1. 构建
cargo build --target x86_64-unknown-uefi --example uefi_emvedded
  1. 复制并创建目录
cp /usr/share/edk2/x64/OVMF_CODE.fd .
cp /usr/share/edk2/x64/OVMF_VARS.fd .

mkdir -p esp/efi/boot
cp target/x86_64-unknown-uefi/debug/examples/uefi_emvedded.efi esp/efi/boot/bootx64.efi
  1. 运行qemu
qemu-system-x86_64 -nodefaults \
    -device virtio-rng-pci \
    -machine q35 \
    -smp 4 \
    -m 256M -vga std \
    --enable-kvm \
    -device isa-debug-exit,iobase=0xf4,iosize=0x04 \
    -drive if=pflash,format=raw,readonly=on,file=OVMF_CODE.fd \
    -drive if=pflash,format=raw,readonly=on,file=OVMF_VARS.fd \
    -drive format=raw,file=fat:rw:esp

依赖

~3MB
~67K SLoC