Apple ends GPU contract with Imagination (PowerVR)


I know I'm "too close" to be considered a remotely impartial observer, but I *really* don't understand these comments. Are you moaning about the lack of public documentation about the PVR architectures? If so I can assure you our customers get them. And again, vested interest, but my own personal development stuff have hit a *lot* more problems on other vendor's driver stacks than PVRs. Even nvidia, who people seem to think is the "Gold Standard" of opengl.

At the end of the day, our customers are *not* individual devs. There's no real difference for pretty much any other vendor in the same mobile space (unfortunately, though I *hope* if one vendor starts releasing more public docs/code and making it a "selling point" everyone else will jump on board). It just feels like PVR get a *lot* more abuse for the "same" things everyone else in that market is doing in exactly the same way.

It gets extremely frustrating being constantly insulted for something we can't see in ourselves. Perhaps we're completely blind. I'm sure you know better.

Plus, apple used their own driver stack. Always have.
I was not aware or intended that I insulted anything,what do you talking about? Or are you somehow releated to Imagination?
I'm an simple "End customer" and I followed the entire Pandora/Pyra development since 2008. Which was an Odyssey in general actualy. It had alot of obstacles and of of curse the graphics part of the OMAP SoC was only a very small bit. But I remember it also took long until the OMAP did what the Pandora Devs wanted to, including usage of the full 2D/3D potential (even worse was the power saving part which also needed a while to work). It was mainly because of TI afaik so blaming PowerVR may not be adequate. But compared to how easy it is to develop for PC (graphics) I see alot of possible improvements in the mobile section. Apple must had a reason to use their own drivers, which needs full Chip documentary afaik to even make your own drivers. I'm not sure if small companies like OpenPandora have that luxury. So they have to use whatever they get.
I hope in the future, the overall dev support of mobile SoC's will get better, especialy for small Companies that don't buy Millions of chips but still want to use fancy mobile SoC's
 
Last edited:
Well, TI is the customer of ImgTech, not OpenPandora. TI gets everything they need from ImgTech but building the drivers for THEIR customers is up to them, not to ImgTech.

I think the biggest misunderstanding is that ImgTech does not PRODUCE any 3D hardware (if I understood correctly), but are licensing their 3D tech to other companies (similar to what ARM does).

So unlike nvidia or Intel, they can't provide generic drivers or open drivers since the implementation is different with every vendor who licensed the tech (in our example TI).

Yes, the 'main' part of the driver is mostly the same, but not everything.
 
I think the biggest misunderstanding is that ImgTech does not PRODUCE any 3D hardware (if I understood correctly), but are licensing their 3D tech to other companies (similar to what ARM does).

So unlike nvidia or Intel, they can't provide generic drivers or open drivers since the implementation is different with every vendor who licensed the tech (in our example TI).

Yes, the 'main' part of the driver is mostly the same, but not everything.

Yeah, we (PowerVR - technically ImgTec have made a few chips but they're a different division and not interesting here) don't produce hardware directly (outside of some internal-only testchips you *really* don't want to use). This means that to even get anything working there needs to be some SoC-level integration added to our 'reference' driver. This mostly being how to enable clocks/power island/where the registers are in the memory map. Then there's some method of actually getting the rendering on-screen, but most of the 'platform specific' stuff is now abstracted away behind standard interfaces like dma-buf and drm, so thankfully now doesn't really need much (if any) changes there. None of this code is 'owned' by ImgTec, so we couldn't release it if we wanted to.

But I do believe all the *Strictly Necessary* integration changes are in the kernel driver, which is required to be GPL released, so it's not like releasing the 'reference driver' userspace code would be completely useless, but actually only require a (hopefully relatively simple) collection and integration of the SoC-specific GPL'd kernel modifications to get it working. No comment of getting it working *well* though (some customers have funny modifications required for extra power management, integration to other HW blocks like video decoders, fancy composition engines etc.)
 
Would it help to have something like more strict "ARM-CPU-GPU-compatible" guidelines like the old "IBM-COMPATIBLE" 'n Stuff? So that not every company brews their own "soup". I mean, on PC, I can buy alot of different graphics cards and many AMD cards work with the same AMD Driver, also many NVidia Cards work with the same NVidia driver (all back from the 4XX series up to the 10XX actualy). OK, for the CPU you need different chipset Drivers for different chipsets but you get the idea.
 
Those CPU drivers only work with all of those cards because the contain all the different code paths to work with them all. There's a chunk that's shared between them, but they could be much smaller if they were targetted to particular sets of cards I think.
 
Those CPU drivers only work with all of those cards because the contain all the different code paths to work with them all. There's a chunk that's shared between them, but they could be much smaller if they were targetted to particular sets of cards I think.
Yupp, NVidia Diver ~300MB already, of course including other stuff like Audio Drivers, GeForce Experience etc. which I usualy never install. :D
 
Would it help to have something like more strict "ARM-CPU-GPU-compatible" guidelines like the old "IBM-COMPATIBLE" 'n Stuff? So that not every company brews their own "soup". I mean, on PC, I can buy alot of different graphics cards and many AMD cards work with the same AMD Driver, also many NVidia Cards work with the same NVidia driver (all back from the 4XX series up to the 10XX actualy). OK, for the CPU you need different chipset Drivers for different chipsets but you get the idea.

We can actually do that on more modern SoCs with devicetrees, where all the clock/register maps are defined in a file that can be read from the device, so you can use the 'same' driver for multiple different cores. We're even starting to make most of the core revisions and features selected at runtime, so you can use the same driver on different cores too. But that's not useful here, as sgx is a ~3 generation old product on a ~10 year old codebase.

And you probably could fit a binary of *every* driver we've ever shipped in a 300mb zip. I suppose that's one way of having "compatibility".
 
So Apple pretty much destroyed a whole company out of nowhere because they could save a few pennies on iPhones they already sell with a ridiculous profit margin?

View attachment 30239

It's IMG's fault if they became too dependent on a single customer. That's not a safe business model for a licenser of IP cores.

I've heard stories from employees that the company became terribly mismanaged and made all sorts of poor acquisitions because their success with Apple gave them a false sense of security.
 
As I mentioned beofre, I suspect this will end up with Apple purchasing Imagination for a lot cheaper - remembering that they tried to buy them out last year but negotiations broke down. This whole thing being a little reminder that their initial asking price was propped up by the Apple contract, and that without them , this is what they are worth.

Or, Imagination are forced to give Apple a super good deal.
 
Back
Top