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

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

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