Hi Tony:
很高兴你对这个任务产生兴趣,同时也很高兴看到了您解决了RISC-V的EDK2问题的过程和结果。
你所提到的这个任务,是open Euler 2020 summer
的一个待选任务,当时这个任务并没有被参与者选中,所以当前的状态仍然是opened。如果您想参与openEuler
RISC-V 并且为其添加grub
的支持,我和openEuler
相关软件包的SIG组都会很乐意提供力所能及的帮助。
有关于这个任务的基本情况有:
目的:为open Euler- RISC-V
添加grub的支持,目的是利用openeuler在gitee上的开源代码,使openEuler
能够使用grub进行引导
将此目的进行分解,可以通过如下两个步骤来:
1、
grub
启动方式的适配
a)
当前openEuler RISC-V
在qemu上的引导方式是opensbi+flat
kernel image 直接引导至了内核和rootfs的启动
b)
除了a)中所说的opensbi+flatten
kernel image的方式,opensbi
也可以将一个bootloader作为opensbi的payload,那么Grub
作为一个bootloader应当也可以由opensbi进行跳转,需要找下这方面的方法,据我所知uboot是可以作为opensbi的payload,进而由uboot加载kernel的;
c)
如果能够引导至grub,接下来就是如何配置grub的加载信息了,可能需要把当前的kernel
放置在某一个磁盘分区中;
2、
修改提交至openeuler
a)
若利用开源的grub2能够引导启动,那么就可以考虑将所作的修改提交到openeuler
b)
当前openEuler
的grub2
已经升级至了2.04,是支持RISCV的,这里边是以软件包构建代码仓的形式托管的,你可能需要了解如何将你的修改提交到这个仓,
https://gitee.com/src-openeuler/grub2
c)
顺便,在openEuler/RiSC-V
的仓中和mailist
告诉大家这一好消息。
openEuler的
grub2 由openEuler的
OS-builder SIG 组负责(https://gitee.com/openeuler/community/tree/master/sig/sig-OS-Builder),有关于grub2
的问题,欢迎在相关的社区或者maillist(dev@openeuler.org)中进行讨论。
Regards,
zhangxuzhou
发件人: Tony [mailto:tony_mcknight22@163.com]
发送时间: 2020年10月20日
16:31
收件人: zhangxuzhou <zhangxuzhou4@huawei.com>
主题: 关于任务“No.21 -
为openEuler - RISC-V 添加grub的引导启动方式”
Hi zhangxuzhou,
关于“No.21 -
为openEuler - RISC-V
添加grub的引导启动方式”这个任务(https://gitee.com/openeuler/marketing/issues/I1I1TS),我想参与进来学习一些东西并做些贡献。
不知道现在这个任务的进展是怎样的?有没有什么具体的工作要做?有没有什么资料链接可以发给我学习一下的?
如果这个任务已经完结了,不知这个任务的最终总结文档什么时候可以看到?
盼回复,谢谢!
附:最近我在研究EDK2时遇到的问题并给出问题分析的结果。https://github.com/riscv/riscv-edk2-platforms/issues/10