作者:蒲镜羽、郑兴达
近期,软件所智能软件研究中心 openRuyi 图形团队在 Imagination (IMG) 开源 GPU 驱动的完善与上游化方面取得了显著进展。作为嵌入式设备和 RISC-V 生态中至关重要的图形基础设施,IMG 开源驱动的成熟度直接关系到用户的视觉与交互体验。openRuyi 团队通过代码贡献、测试反馈与架构优化,正与 IMG 官方以及开源社区紧密合作,共同加快该驱动的成熟与落地。

攻坚 Vulkan CTS,致力于驱动开箱即用
目前,IMG 开源 Vulkan 驱动已初具备 Vulkan 1.2 支持能力,但除 BXS-4-64 外的设备仍需依赖环境变量 (PVR_I_WANT_A_BROKEN_VULKAN_DRIVER=1) 才能激活。为打破这一限制,openRuyi 图形团队正在以玄铁 TH1520 (BXM-4-64) 平台为核心,全力推进 Vulkan CTS(兼容性测试套件)的运行与修复。
团队不仅向上游提交了详尽的 CTS 失败报告(参见 imagination/mesa Issues #16[1] 与 #17[2]),还克服了底层硬件资料匮乏的困难,成功向 Mesa 主线贡献并合入了多个修复补丁(包括 MR !39753, !39054, !39050, !38653, !38506 等),与 IMG 官方团队的修复进程形成了良好的合力。
完善 Zink 渲染架构,打通显示分离场景
在 OpenGL 支持路线的选择上,IMG 是目前嵌入式 GPU 中唯一决定全面拥抱 Zink(基于 Vulkan 转译 OpenGL)的厂商。为此,openRuyi 团队在 IMG GPU Zink 的完善上发挥了关键作用:
Renderonly 支持落地:在团队推动下合入了 Zink renderonly 支持 (MR !38810),这对于渲染硬件与显示硬件分离的嵌入式场景至关重要。
核心扩展实现:为配合该架构,在 IMG 官方实现 VK_KHR_dynamic_rendering 的基础上,openRuyi 团队主导实现了 VK_EXT_image_drm_format_modifier 扩展 (MR !38991),补齐了关键的技术拼图。

成果落地 openRuyi 系统,蓄力进迭时空 K3 生态
为了让开发者和用户尽早享受到驱动优化的红利,openRuyi 团队已将上述部分关键修复与特性补丁提前集成至 openRuyi 系统的 Mesa 组件中。针对部分需要运行在 IMG 闭源驱动上的场景,openRuyi 同样前瞻性地集成了必要的下游补丁(如规避 Rogue 架构缺失 nullDescriptor 的 MR !37115 及 X11 支持补丁),确保了生态的平滑过渡。
值得一提的是,这些针对 IMG GPU 的底层驱动优化与架构梳理,不仅加速了现有平台的图形生态成熟,也为已经发布的进迭时空 (SpacemiT) K3 等新一代芯片的图形栈支持做好了充分的技术储备与前瞻性准备。
直面挑战,规划未来演进路线
尽管进展喜人,团队也坦言当前驱动仍存在一定局限性。目前开源驱动仅支持 Rogue 架构(暂不支持 EIC7700 等采用的 Volcanic 架构),且 Glamor on Zink 在开源驱动下的性能仍有待提升。
下一步,openRuyi 图形团队将继续跟进相关进展,持续秉持开源共建的理念,为 RISC-V 开发者和用户打造更加稳定、高效的图形栈。

对 openRuyi 工作感兴趣的伙伴们可以关注 GitHub 开源项目,访问 openRuyi 文档中心获取更多信息,也欢迎加入 Discord 社区参与交流。openRuyi 团队长期招收全职/兼职/实习生,欢迎投递简历至邮箱 wangjingwei@iscas.ac.cn(王经纬)
相关链接
[1] imagination/mesa Issue #16: https://gitlab.freedesktop.org/imagination/mesa/-/issues/16
[2] imagination/mesa Issue #17: https://gitlab.freedesktop.org/imagination/mesa/-/issues/17
项目与社区
openRuyi 项目地址:https://github.com/openRuyi-Project/openRuyi/
openRuyi 文档中心:https://openruyi.cn
Discord 邀请链接:https://discord.gg/ZEEq8kFjG5
本文转自:OERV,转载此文目的在于传递更多信息,版权归原作者所有。如不支持转载,请联系小编demi@eetrend.com删除。





