PowerVR Vulkan driver

Luc Verhaegen libv at skynet.be
Sat Mar 5 09:59:48 UTC 2022

On Fri, Mar 04, 2022 at 03:22:55PM +0000, frank.binns at imgtec.com wrote:
> Hi All,
> I'm excited to share that over the last year we've been working on a new
> Vulkan driver, compiler and Linux kernel DRM driver for our PowerVR
> GPUs. As it was important for us to do things "right", we got Collabora
> involved early on in the project. They've been a big help and have
> guided us with the approach and overall design of the driver.


Just over 11 years ago, SGX had no competition in the ARM world, but a 
lot of competition was about to enter the market. This was also the time 
time when Rogue had only just being introduced to key IMG partners (like 
nokia, which is how i got to see the high level presentation in Q4 
2010 -- my main take-away, the return of a blitter \o/). At FOSDEM 2011, 
just days before Nokia announced that it would commit suicide, i hung 
ut with Codethinks Rob Taylor and Paul Sherwood, and the kernel of a 
plan formed...

With my background in structuring display drivers to rid the world of 
BIOS dependencies, and in forcing ATI open, we decided that the budding 
ARM GPU space would need a similar treatment. My focus was the upcoming 
ARM mali, which would then show the way forwards to help open source the 
other straightforward ARM GPUs, and from the getgo, i stated that 
PowerVR should be singled out. At the time i was working on the SGX for 
Nokia, trying to shore up the debugging infrastructure so we at nokia 
could get a better handle on the unruly SGX. The convoluted and moving 
dependencies between userspace, kernel and firmware, was one of the main 
causes for making the SGX so unruly, and i knew that this made powervr 
too much of a moving target to waste time on REing it. So by tackling 
other vendors' hardware first, Imagination would be forced to do this 
task themselves. This was clearly formulated in an April 2011 proposal 
we wrote to ARM, which, as we can clearly see, did not get accepted.

I did not let up, and in late 2011 we contacted ARM again to explain 
that we were close to open source something, to which their response was 
"naming it remali could potentially be a trademark violation". So at 
FOSDEM 2012 i introduced lima, and provided the framework to tackle 
REing ARM GPUs on android. This was then used by other brave souls to 
tackle Adreno, Vivante and Tegra. Broadcom, which was totally irrelevant 
before the rpi, then open sourced their driver, after a pretty awkward 
false start.

And now this!

The plan worked! Albeit with a vast delay...

There was a window of opportunity for this to happen in 2014 when 
IMG had bought MIPS and was trying to boost the relevance of MIPS to 
more broadly compete with ARM. But from what my moles at IMG told me, 
IMG had considered it a few times, but it simply was not willing to 
commit the resources. This ended up being yet another nail in the 
coffin of MIPS, which is now pretty much defunct. So now, with IMG 
trying to get into the RISC-V game, it shows that it learned its lesson. 
And kudos for that, not many corporations are able to learn from past 

ARM is now the only holdout, even though its position has slightly 
shifted in the last 5 years with some people having (been) moved aside.

So IMG, well done! And i wish you all the best in your RISC-V 
endeavours, you have earned it.

The more companies who are actually open, and who compete in the open 
space, the better off we all are.

Luc Verhaegen.

More information about the mesa-dev mailing list