LWN.net Logo

A line in the sand for graphics drivers

A line in the sand for graphics drivers

Posted Jul 6, 2010 17:45 UTC (Tue) by rahvin (subscriber, #16953)
Parent article: A line in the sand for graphics drivers

Not being a programmer or EE I may have missed this, but it was my understanding that these graphics chips in mobile chips are one-off designs. For example, although the PVR core maybe similar every chip that includes the core has differences, and with each generation these chips change significantly. So even though there may only really be 3-4 ARM designs and 1-2 Graphics cores, combined every iteration is really a separate and distinct version with it's own bugs and kinks.

If the following is true, what is the point in ever merging any driver for these devices into mainline? If the driver is a one-off, has to be revised for every revision or version produced there could end up being a LOT of drivers that are all different. Factor out a decade and you could end up with a thousand different drivers for one-off designs that are abandoned/revised 6months-yearly.

I see no point in merging drivers for devices that have no stability, longevity or persistence. At least the Intel/ATI/Nvidia hardware is a consistent design for a period of time with many more sales per design and often a single design with multiple products. Some of these mobile designs could be used in only a few products and end up with little to no market share to where you are dealing with a design used by 0.00001% of the global population. The fear of bit-rot on these drivers is very well founded IMO.

Unless the manufactures can come together and promise to maintain an interface for a period of time where ALL products (or at least >50%) in the class use the same interface there is little purpose in merging IMO.


(Log in to post comments)

A line in the sand for graphics drivers

Posted Jul 8, 2010 8:01 UTC (Thu) by daniels (subscriber, #16193) [Link]

Not really. At least for Imagination (which I suspect accounts for over 90% of mobile GPUs on the sorts of platforms we're talking about) chips, there have only ever been two: the MBX previously, and the SGX now. The MBX, which shipped in but was not used by the Nokia N800 and N810, is a direct descendant of the core used in the Sega Dreamcast - remember that? It had different integration points with every chip, but I don't remember any meaningfully different versions of the core.

There are a number of different versions of the SGX (530 in the N900, 535 shipped by some other vendors, 540 shipped by Intel IIRC), all with slightly different abilities/restrictions, but they mostly behave the same from the driver's point of view. Some of those cores have different revisions to fix hardware issues, but again from the driver's point of view, this is generally just a one or two-liner.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds