今年早些时候 Linux 中的 UEFI 代码已经进行过清理,随后一系列 RISC-V UEFI 支持的早期补丁被提出,形成了更为全面的补丁集,用于在 Linux 下启用 RISC-V 的 UEFI 支持。近日则又有开发者提交了一系列补丁,解决了大量问题的同时为 Linux 下支持 RISC-V UEFI 新增了一些新的能力。
开发者 Atish Patra 来自西部数据,他在上周四提交了 11 个补丁,根据他的介绍,补丁 1-6 是准备性修补程序,可修复一些通用的 efi 和 riscv 问题;补丁 7-9 增加了对 RISC-V 的 efi stub 支持,并已在四月份提交审核;补丁 10 重命名了 ARM-init,以便可以在不同的代码中使用该基础;补丁 11 则为 RISC-V 添加了运行时服务。
总结起来,这一系列补丁的主要贡献在于:
- 添加了完整的 ioremap 支持。
- 添加了 efi 运行时服务支持。
- 修复了 mm 问题。
目前补丁已在 Qemu 上使用 U-Boot 中的 bootefi 命令进行了验证,在 RISC-V 32 位与 RISC-V 64 位上都通过测试。不过 RISC-V 上 EDK2 代码的某些问题仍在解决中,主要是 SPI 与网络驱动相关的问题。
这一系列补丁打在 Linux 内核 5.8-rc2 上,目前还处于 PR 状态,等待代码审核,如果解决了相关问题,并且最终被接受,那么在 Linux 5.8 发布的时候应该能够看到。
|