免费的 Panfrost 驱动程序为 Mali Valhall GPU 提供支持

Collabora 员工在免费的 Panfrost 驱动程序中实现了对 Valhall 系列 GPU(Mali-G57、Mali-G78)的支持,此前该驱动程序专注于实现对 Midgard 和 Bifrost 芯片的支持。 值得注意的是,驱动程序初始实现中准备好的更改已提交包含在主要 Mesa 组成中,并将在下一个重要版本之一中带给用户。

经过 6 个月的逆向工程,对配备 Mali G78 GPU 的 Android 智能手机中使用的专有驱动程序进行了实施。 所做的工作值得注意,因为开发是在没有对正在研究的芯片的智能手机进行根访问的情况下以被动模式进行的,即开发人员无法替换现有的驱动程序。 为了测试驱动程序并分析智能手机中视频内存的内容,我们使用 Android 中的开发人员模式并使用 LD_PRELOAD 替换我们的代码。

从内存中检索已编译的着色器、GPU 指令序列以及控制图形基元状态(例如纹理)的数据结构,对这些着色器和结构进行单独更改,并对结果进行分析。 因此,为 Valhall GPU 准备了专有的着色器编译器,这使得生成类似的二进制对象以及 Mesa 的原型驱动程序成为可能。 今年8192月,一款基于MediaTek MT57芯片和Valhall GXNUMX GPU的Chromebook落入开发人员手中,并在其帮助下在真实设备上进行了最终测试,并将所得驱动程序投入使用。 。

来源: opennet.ru

添加评论