xref: /DragonStub/README.md (revision fe0ee6eaf354dc84f7c5370da1e416c3202e0b03)
15c0de15dSLoGin# DragonStub
25c0de15dSLoGin
35c0de15dSLoGinA generic standalone EFI stub for DragonOS kernel, which based on the Linux EFI stub.
45c0de15dSLoGin
55c0de15dSLoGin## Requirements
65c0de15dSLoGin
75c0de15dSLoGinTo build the stub, you need to have the following packages installed:
85c0de15dSLoGin
95c0de15dSLoGin```bash
105c0de15dSLoGinsudo apt install -y gcc-riscv64-linux-gnu
115c0de15dSLoGin```
125c0de15dSLoGin
135c0de15dSLoGin## Building
145c0de15dSLoGin
155c0de15dSLoGin```bash
165c0de15dSLoGinARCH=riscv64 make -j $(nproc)
175c0de15dSLoGin```
185c0de15dSLoGin
19*fe0ee6eaSLoGinbuild with payload:
205c0de15dSLoGin
215c0de15dSLoGin```bash
22*fe0ee6eaSLoGinARCH=riscv64 PAYLOAD_ELF=path/to/payload.elf make -j $(nproc)
23*fe0ee6eaSLoGin```
24*fe0ee6eaSLoGin
25*fe0ee6eaSLoGin## Run
26*fe0ee6eaSLoGin
27*fe0ee6eaSLoGinDry run:
28*fe0ee6eaSLoGin
29*fe0ee6eaSLoGin```bash
30*fe0ee6eaSLoGinARCH=riscv64 make run
31*fe0ee6eaSLoGin```
32*fe0ee6eaSLoGin
33*fe0ee6eaSLoGinRun with payload:
34*fe0ee6eaSLoGin
35*fe0ee6eaSLoGin```bash
36*fe0ee6eaSLoGinARCH=riscv64 PAYLOAD_ELF=path/to/payload.elf make run
375c0de15dSLoGin```
385c0de15dSLoGin
395c0de15dSLoGin## Maintainer
405c0de15dSLoGin
415c0de15dSLoGin- longjin <longjin@dragonos.org>
425c0de15dSLoGin
435c0de15dSLoGin## License
445c0de15dSLoGin
455c0de15dSLoGinDragonStub is licensed under the GPLv2 License. See [LICENSE](LICENSE) for details.
465c0de15dSLoGin
475c0de15dSLoGin## References
485c0de15dSLoGin
495c0de15dSLoGin- GNU-EFI: DragonStub built with gnu-efi
50*fe0ee6eaSLoGin- Linux-EFIStub: In Linux kernel source tree: drivers/firmware/efi/libstub
51