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

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

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