A generic standalone EFI stub for DragonOS kernel, which based on the Linux EFI stub.

LoGin 8515606674 重新启用vamap (#16) vor 10 Monaten
.vscode 2604d7835e 设置镜像内存权限为rwx,并且退出bootservice (#9) vor 11 Monaten
apps 8515606674 重新启用vamap (#16) vor 10 Monaten
docs f1de0317e1 move gnuefi's README files to `docs/` (#2) vor 1 Jahr
gnuefi cd78649395 ARM32: Only use 4K pages vor 1 Jahr
inc 552e14d5a5 强制禁用VAMAP,并且修正传递给内核的PAYLOAD CONFIG Table的值 (#15) vor 10 Monaten
lib 3e6106c4d6 引入libfdt并进行平台特性检测 (#6) vor 1 Jahr
tools 823f049319 重定位内核并加载 (#7) vor 11 Monaten
.clang-format f412fd2a1a 命令行参数解析 (#3) vor 1 Jahr
.gitignore 5c0de15d43 dragon stub helloworld (#1) vor 1 Jahr
ChangeLog aac405cc66 Updated Changelog vor 9 Jahren
LICENSE 5c0de15d43 dragon stub helloworld (#1) vor 1 Jahr
Make.defaults f412fd2a1a 命令行参数解析 (#3) vor 1 Jahr
Make.rules 50b27a854c ARM32: fix image vor 1 Jahr
Makefile a09217116b make install (#8) vor 11 Monaten
README.md fe0ee6eaf3 把ELF负载绑定到dragonstub内,并检测ELF header (#5) vor 1 Jahr
env.mk a09217116b make install (#8) vor 11 Monaten

README.md

DragonStub

A generic standalone EFI stub for DragonOS kernel, which based on the Linux EFI stub.

Requirements

To build the stub, you need to have the following packages installed:

sudo apt install -y gcc-riscv64-linux-gnu

Building

ARCH=riscv64 make -j $(nproc)

build with payload:

ARCH=riscv64 PAYLOAD_ELF=path/to/payload.elf make -j $(nproc)

Run

Dry run:

ARCH=riscv64 make run

Run with payload:

ARCH=riscv64 PAYLOAD_ELF=path/to/payload.elf make run

Maintainer

License

DragonStub is licensed under the GPLv2 License. See LICENSE for details.

References

  • GNU-EFI: DragonStub built with gnu-efi
  • Linux-EFIStub: In Linux kernel source tree: drivers/firmware/efi/libstub