At the Linux.Conf.Au conference today, Intel has announced NDA-free programming documentation covering the 965 Express and G35 Express IGPs. Intel’s display driver has long been open-source, but up until now, they have not been releasing the programming documentation for these products to the public. This move comes months after AMD announced their new open-source strategy and began releasing register documentation on their R500 and R600 GPUs. These newly released documents by Intel even cover 3D and video programming for their IGPs.
*Looks at NVIDIA*
Ahem, I’m waiting…
Blast! Beat me to it ๐ Come on nV… you’re WAY behind!
Intel’s offering seems far more than ATI/AMD have released yet. The last AMD docs I read didn’t specify 2D/3D/ROP/BLT registers just those for video mode setup, overlays, cursors – none of the acceleration stuff or RAM/PCI setup apparently this is coming. VIA seem to release code but no docs… weird.
I’ve just had a flick through the Intel docs – they are _VERY_ comprehensive. Bus timing registers, memory setup, 2D & 3D core and lots more besides.
Intel have always been very good with documentation. If other manufacturers were as good about it Intel are, we’d all be much better off.
Weirder, the code they have released was pretty much just a dump with no further support or updates. S3 used to be good too, but their newer cards like the DeltaChrome & GammaChrome don’t exist as far as Open Source is concerned.
Guys, look at this!
1) Open & free full GPU specs documentation.
2) *Very* high documentation quality, with large overview diagrams, clear memory & structures layouts, message sequences, structured chapters & volumes. Woa, now that’s impressive to see an actual top technical documentations at this level of quality.
Even if AMD/ATI started first to publish in the open their GPU specs, Intel deserves credits here for being the first doing it *right*, *fully* and *now*.
Let’s hope their concurrents will catch up soon.
I was thinking the same thing; how long will it be before we start to see OEM’s punish Nvidia by not having their products by default on their lineups? The next generation of Intel products are really going to give the market a good shake up – ATI coming from the top, Intel coming from the bottom, and Nvidia sitting in the middle refusing to play ball with end users, OEM’s and opensource programmers.
Binary drivers for Linux (and other *NIX) was ok, but ATI and Intel have raised the bar, its about time that Nvidia raised the bar further and not only make their specifications and code open, but actually dedicate programming resources to work with the opensource community.
Intel does open source since a long time, this is just the documentation for the source. AMD/ATI is in a inferior situation, but nVidia doesn’t need such manoveurs. So if there is a need for nVidia, they will certainly do it at once.
How is Intel in an inferior situation, they have 30% of the marketplace – not too bad if you ask me.
The largest growing segment is the mobile segment, Intel has that market cornered by Intel, ergo, Intel will be running most of the machines in future.
While Intel has an advantage in the Mobile market, you can’t just equate current marketshare with future success.
Remember though that the primary reason that the *nix community already enjoys the level of support from nVidia that they do, is because of the commercial customers running graphics apps on *nix workstations using high-end nVidia adapters. These customers are not clamoring for open drivers or threatening to switch vendors. Intel is a far ways away from this space, and even ATI would appear to be more focused on the consumer/gaming market than the high end computer graphics market.
That, and the fact that their universal driver model makes implementation on alternative platforms easier to manage.
nVidia supports the OSS-desktop community as far as their respective objectives intersect. It struck me that nVidia has frequently downplayed or pushed away driver problems related to compiz, for instance, yet when a compositing issue with the driver was discovered during the kwin/KDE4 development process, they released an updated driver fairly quickly.
My personal preference would be to have a more open and accessible nvidia driver, even if alongside the proprietary one. But my pragmatic side is fine with the current situation, and I’m quite happy to have a well supported adapter with KDE4 compositing goodness on my desktop.
The simple fact is that aside from frequent cries from the blogosphere, nVidia does not yet have a business reason to change their model. ATI and Intel, on the other hand, aren’t in the same position. Until their level of performance and compatibility matches nVidia’s then nVidia will not change their stance.
The issue I have with binary drivers is this; look at the Nvidia drivers and the dropping of support – the reluctance to still spend resources optimising drivers for older hardware. The attitude that once they’ve stopped selling the hardware, there is no point to supporting it adequately any more. ATI went down the same garden path.
If the drivers are open along with all the specifications, I as a customer atleast know that in 2-3 years time, long after they stopped making those graphics cards, I know there will still be programmers dedicating hours fixing bugs, improving performance and addressing issues – long after which most commercial companies would have thrown in the towel.
That is ultimately the underlying issue (and what pushed the creation of FSF) – the customer at the mercy of a company who quite frankly will cut support when it is no longer convenient for them to support the hardware. You are the mercy on whether they the customer can be stuffed supporting it – what about your right as a consumer to be able to continue running the hardware? why should I as a customer be forced into a situation where I am told, “you hardware is no longer supported – get with the programme and upgrade!”
The issue I have with binary drivers is this; look at the Nvidia drivers and the dropping of support – the reluctance to still spend resources optimising drivers for older hardware. The attitude that once they’ve stopped selling the hardware, there is no point to supporting it adequately any more.
I’ve got a perfectly good laptop with built-in GeForce 4 card and well, it is not supported by the NVidia drivers anymore. I have only two solutions: to downgrade my X.org installation so I can use older drivers or not use the binary drivers and lose quite a lot of functionality and speed.. And I can tell you that both choices suck :/ That’s the reason why I like open-source approach better: even my ancient Radeon 9100 is working just fine and well due to the fact that there’s open-source drivers for it which are kept up-to-date and working.
What distro are you running? I have Geforce 2 Go in my laptop and it is happily running Fedora 8 with the binary drivers. True, the newer drivers dont support it, but they still make the older drivers available.
Don’t get me wrong, I agree completely with that POV.
I’m simply pointing out that nVidia has no compelling business reason at this point to shift from that strategy, regardless of what Intel and ATI do, because a considerable portion of their userbase doesn’t hold that same concern.
I’m a case in point. I consider my personal pc hardware to have a lifespan of 24 months, so while I will endeavor to select components that are linux-compatible, I consider nVidia to be in that category. If I was concerned about my laptop still working with linux five years from now, I’d likely go Intel. But my pragmatic side often wins out over my idealistic side. I’ll admit that I’m part of the problem, but the problem is that many others are like me. nVidia works and works well, better than the alternatives at this time.
Sure, I’m a little bit ashamed with that attitude, but I have desktop bling with no detriment to my system stability or performance. When Intel can approach nVidia’s mid-range performance or the open ATI drivers are stable and reliable, I’ll likely switch if only in principle, but until then I have no clear incentive to.
And neither does nVidia…
It’s nice to finally have what should be out from the start. I mean, for software writers specs *are* the manual.
Still, it’s nice from intel, now I know what to buy next time.
I really like that ATI are opening up specs. And Intel’s opens source support is really promising.
Unfortunately I wanted working 3D hardware now and my older ATI card isn’t (as far as I can tell) part of ATI’s big push to help OSS driver development although apparently that’ll be coming at some stage…
Right now I felt like I had a choice between: buy new ATI card and use their dodgy binary drivers that I’d found so unreliable in the past; buy new ATI card and use the work-in-progress open drivers; buy new NVidia card and use a binary driver that I trusted to work well (based on previous experience with NVidia’s Linux code). I didn’t have the option of going Intel because they don’t have a discrete graphics part…
So I ended up buying NVidia as the best option for my Linux box *now*, even though I’d really like to be able to support what ATI and Intel are doing in OSS graphics. ๐
there is already a reverse engineered driver for older ati based cards. does it cover your card?
Edited 2008-02-02 01:02 UTC
the X3100 has a video accelerator engine, have they included that in the documentation release?
I am happy to see Intel doing this. But as a long time Nvidia owner, I will not leave them with out good reason. They were the first to support Linux and I have Geforce2 cards that still have working drivers for them. They may not be the newest, but they are available. Sure I would like Nvidia to move to a more open stance, but I have never had problems getting their stuff to work, usually better than the alternatives.