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

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

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