On Windows, I installed one driver package that bundles both the AMD and Intel drivers... that certainly is to the benefit of AMD, and indirectly Intel as a necessary concession in AMDs (and the OEMs) broader product strategy.
There are some things that is very bad to say. When you translate the "Open" to "Closed", then what to say, its unbelievable. Its lower than spam. OpneGL is Open. The implementations are closed and maybe patented, for example PowerVR has its own Tiled-Rasterizer that is different from Nvidias Massive-Rasterizer and different than MESA's. Also patents like S3TC are irrelevant to OpenGL, and Khronos tries to replace them with open free formats. There is not a logical reason why we don't have fast Open Drivers like Intel's for all GPUs and with the help of the companies. The most of the job is there anyway, and for free.
The API as in the function names and calling conventions are indeed not protected by copyright. The code implementing these APIs is copyrightable however, and if it is GPL then the GPL also applies to the code linking to it.
The kernel devs are essentially protecting Linux distributors from lawsuits.
Nvidia can create and give away infringing code, but it's the distributors who would be violating the GPL by shipping it together.
It's easier to think that Alan Cox is being mean for hating your gamez, but essentially it's Nvidia's licensing that caused all of this. They dug out a hole that ensured they'd have to do everything on their own and not use any kernel code. So they implemented most of X and kernel in their blob. This worked great for a long time, during which the kernel and X infrastructure was old and featureless, while their closed implementation was performant and full-featured. However now, when using kernel interfaces (and thus using GPL code inside the Linux kernel) is necessary to make their hardware run in the first place (due to the increasing irrelevance of discrete cards), now their decisions from the past prevent them from interacting with the kernel.
I think this is a bad call from the kernel developers. I also agree that nVidia should have asked first :P
AMD and nVidia have spent $bn's researching and developing their hardware, paying for licenses (some of which they are bound not to disclose) and these such restrictions are part and parcel of a commercial world. Some manufacturers can survive on hardware alone, others realy on a large, costly software stack to support that hardware. Fast GPU drivers are huge and take a lot of inside work.
I suggest those against 'prorietary drivers' to go form a competitive GPU company - spend billions of dollars researching, manufacturing, employing people and deploying such hardware - and see if they still think the same.
In fact, take it further as a concept - the AMD / nVidia graphics drivers don't 'fit' in the OpenSource ecosystem, right? Ok, AMD and nVidia pull out of Linux. We can just make do with Intel. That isn't anti-competitive at all, right? And one option is better than none. Let the Windows/Apple users have the optimal, heavily-invested graphics acceleration!
You do realise that AMD is actively developing OSS drivers and releasing specifications, right?
And it's not a "call" from the kernel devs. Binary blobs using internal kernel interfaces are probably illegal, and no "call" can change that (the legality would have to be tested in court, of course, but no "call" can affect that either).
It's not like a kernel dev can make a "call" that will suddenly allow you to link binary blobs against GPL software.