MiniGUI 5.0.18 发布!

在 2026 年 10 月 17 日,飞漫软件宣布推出 MiniGUI 5.0.18,这是一个功能增强和错误修复版本,在 MiniGUI 5.0.x 的基础上,主要改进了 DRM 绘制同步、外部 GPU 渲染集成和触摸输入处理。

5.0.18 中的新功能

在此版本中,我们进行了一些增强和修复:

  • 功能增强:

    • 新增 MGDRMSurfaceLease、drmAcquireDCSurface() 和 drmReleaseDCSurface(),支持外部渲染器直接向采用 DRM 缓冲区的设备上下文(DC)绘制。接口提供 DMA-BUF 和 surface 信息,并可等待 GPU 完成信号后提交脏区域更新。
    • 增强内建 DRM 路径的 dumb buffer 硬件 surface 分配与 PRIME 导出支持,并在不使用外部加速驱动时,为双缓冲提供可导出的 shadow surface。
  • 优化:

    • 优化非合成图式下的 DRM 刷新路径,按累计脏区域的包围矩形复制像素,并分别跟踪两个显示缓冲区的待更新区域,减少不必要的整屏复制。
    • 改进像素复制过程,正确处理源与目标缓冲区的行步长、偏移和边界,跳过行尾填充,并增加 DMA-BUF 的 CPU 读取同步。
  • Bug 修复:

    • 修复 Rockchip 等平台因平台驱动名与 DRM 驱动名不一致而导致的设备打开失败问题。
    • 修复 DRM 翻页过程中的缓冲区归属与同步问题,在翻页完成后更新缓冲区状态,并在提交失败或翻页未完成时保留待刷新区域。
    • 修复同步翻页对 DirtyFB 支持的依赖,并限制其仅用于具有 shadow surface 的双缓冲配置,避免单缓冲模式切换到未绘制的备用缓冲区。
    • 修复 DRM 软件光标的目标缓冲区选择问题,并协调外部 GPU 绘制、GDI 光标处理及共享 surface 的绘制保护。
    • 修复 singletouchkey 输入引擎在批量读取事件时丢失连续位置及按下、释放事件的问题,按 SYN_REPORT 边界逐帧处理触摸输入。
    • 修复 libinput TOUCH_FRAME 事件的无效触点槽位查询,消除相关 client bug 报告。
  • 测试与文档:

    • 新增 DRM 脏区域更新和 surface lease 锁保护的回归测试,覆盖缓冲区复制、翻页同步、失败处理及跨进程读写排他等场景。
    • 补充 DRM 脏区域更新的适用范围说明和 RK3566 平台验收检查项。

相关链接

Loading Conversation