众所周知,ARM处理器中的大多数GPU驱动程序都是封闭源代码的,这使得修复一些错误既困难又耗时,因为每个人都需要依赖硅片供应商来修复这些错误,他们甚至可能会认为某个特定的错误对他们来说并不重要,所以你会倒霉的。
因此,开发者社区长期以来一直试图通过Freedreno(高通Adreno)、EtNaviv(Vivante)以及Lima和Panfrost等项目对GPU驱动程序进行反向工程,以支持ARM马里GPU。几年前,ARM管理层对与马里GPU的开源GPU驱动程序开发合作一点也不感兴趣,但正如Phoronix所指出的,Collabora聘请的图形软件工程师Alyssa Rosenzweig在一年一度的X.Org开发者大会(XDC 2020)上的一次演讲中解释说,Panfrost开发现在是与ARM合作完成的。
最近的合并提交确认了与Daniel Stone的这一举动,Collabora的图形主管评论。
重申前面的答案-基于ARM的信息和支持,它现在更准确地描述了实际的ISA,并与实际使用的表单和术语相匹配。
CNX Software联系了Collabora,以了解有关合作的更多信息,虽然他们不愿评论他们是否也从ARM获得了开发资金支持,但丹尼尔的答案看起来很有希望:
…。Collabora和Panfrost社区开发了一个支持Midgard和Bifrost代马里GPU的反向工程驱动程序,这几乎是一项完全独立的自筹资金的工作。我们为这项工作感到非常自豪,因为它具有高性能、良好的功能级别和高度符合规范的特性。
然而,反向工程必然会带来开销,因为我们需要花费时间来了解硬件的实际工作方式,包括执行各种操作的最优方式,以及硬件的特殊情况。
ARM现在正在与Collabora合作,为我们提供信息和文档,使我们和社区能够了解硬件。这些信息使我们能够专注于尽可能好的驱动程序,而不需要在逆向工程中花费时间和猜测。Collabora正在继续努力让Panfrost在这些代产品的所有设备上工作,朝着最高性能、完全符合规范和尽可能大的功能集的方向努力。虽然我们已经在这样做了,但ARM的支持使我们能够加快这项工作,并提供尽可能好的驱动程序,并承诺提供长期支持。
因此,这意味着应该更早地期待一个稳定的Panfrost驱动程序,而且可能会有更高的质量,而不是如果公司仍然不得不在反向工程上花费时间和资源。
Jean-Luc在2010年开始了CNX Software的兼职工作,之后他辞去了软件工程经理的工作,开始撰写每日新闻,并在2011年晚些时候全职撰写评论。