Free Software Friendly Graphics Card?
An anonymous reader writes "There's an interesting discussion on KernelTrap with a hardware company that is talking about developing a 'free software friendly' graphics card. The idea is to fully disclose and document all register interfaces including the BIOS, providing Linux and BSD users with a fully supported video card. The hardware engineer proposing the idea summarizes his viewpoint saying, 'the whole issue comes down to this: This is technically feasible. Should we do it?'"
I like the idea. My only thought is, are they going to have enough pull to make this happen? Graphics cards are much more than just throwing a few hundred million transistors on a chip. You have to worry about pipeline architecture, parallel texturing units, and (most importantly) well optimized driver software.
Can this company create a card that's competitive? And if they can, will they get pushed out of business through patent litigation?
Javascript + Nintendo DSi = DSiCade
With comercial games being ported to Linux, marginal closed-source drivers which the kernel folks are (rightly IMHO) hostile to, and a growing Linux market share they may do pretty well. If they actually pull this off I know that I'd buy it.
Only in a Slashdot fantasy can a Slackware install turn into several hours of sex . . . . .
for those of us that read the article, we see that the entire nVidia/ATi argument is practically moot. the developer explicity says that the card will be primarily 2D because his employer won't give enough funding to produce an ASIC. Thus, they're using an FPGA and will only really be able to implement a 2D core.
[move
Just a reminder, drivers are a cost for video card manufacturers. They sell a card and have to bury the cost of driver development and maintenance into the cost of the card. Open sourcing driver development lets a card manufacturer profit from the hardware while the community develops drivers for them and they get good karma to boot. This would be a fairly inexpensive/low risk way for a low-end (PCI only it appears at the moment) card manufacturer to get their "foot in the door".
Only the "big boys" (Nvidia and ATI) have anything to lose by open sourcing their cards. People would actually see to what extent they fudge their cards and drivers for benchmarks.
They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
Ben
I agree that the development costs would probably high and that this card would likely not be very competitive price/performance wise. However, you're overstating the capital investment required to actually "fabricate" the product. You can't throw a stone without hitting a contract printed circuit board manufacturer these days. In other words, you can throw a bill of materials and circuit board layout at them and have the board manufactured, packaged, and drop shipped to your customer without ever touching one. Sure, they will take their pound of flesh (5-10% of the material cost of the board is typical, depending on volumes), but it should not drive the cost to anything approaching $500. Looking at this guy's rough BOM, I'd bet they could have this made for about $90-$100 in 5K quantities.
Instead of using internal company IP, just mass produce this card: http://www.opencores.org/projects.cgi/web/vga_lcd/ overview
Its free, and I'm sure that the designer wouldn't mind the fame. The company could probably also pay him for improvements and optimizations.
They could start by examining the Rendition pipeline and functional units. The documentation for the chip is available on the web, google for v2200spec.pdf. A MIPS-like RISC core surrounded by peripherals for the heavy graphics lifting looks like the design everyone else has gone with since then.
LRC, the best-read libertarian site on the web
Matrox? Don't count on it. They've just "recently" gone from being one of the best supported video card makers, both 2D and 3D, in linux, to one of the absolut worst after they switched to a closed source model of providing their own drivers.
"Worst?", I hear you say, "How can that be? My ATI doesn't work great either!". Well, consider this; It's been almost a year since their last driver was released. It doesn't support Linux 2.6 yet. People are trying to patch things up, but it's a losing battle. It doesn't support SMP either, which means that any P4/HT users are out of luck. And I'm not just talking about not actively enhancing the drivers for SMP, no, it will outright crash and bring the the whole computer down with it if you som much as think of starting an OpenGL application. Oh, and while we're at it, there is of course no support at all for AMD64.
Quite frankly, Matrox has remained so apathetic to the Linux crowd that I'm now convinced that they tricked us all just to get our money, and deep down inside they just hate us.
Slagborr
The problem is you are talking about tough shit to do. It could provide complete hardware programability. Yes, it could, nVidia and ATi's latest offerings do. They, however, were produced by a large team of people with lots of experience doing this, working full time, with a MASSIVE amount of equipment and money to do it.
Designing a chip isn't trivial, even when it's a simple chip. Designing a chip that can pull of all sorts of cool, latest-greatest stuff is an art, one that very few companies are good at.
There are also lots of things that look good on paper but just don't work out. Look at BitBoys and the Elbrus E2K. Both were the "gonna blow the competition away" kind of things, and in both cases, they had simulations in VHDL. Ya well, just because you can get something in Verilog, doesn't mean you can actually fabricate it in silicon and make it work. Neither could do it, and both failed.
Also nothing you are talking about is new. As I meantioned, programable GPUs are here, all DX9 GPUs are fully programable (turing complete), and all DX8 ones are programable. They have all they capabilities they need to do hardware acceletation of things like clipping in window managers, there just hasn't been the window manager that uses it (on a PC). Longhorn is going to fully (allegedly), and OS-X already does use the GPU for it's WM, to a fair degree. As for X11 acceleration, install nVidia's X drivers. There's your acceleration, it's all kinds of fast (there are other drivers like that too).
I'm not saying an open archecture has no uses, but an expensive open 2d-only card has just about no use.
the problem is that once you build hardware, the patent law says that your competitors can't make an exact copy of it. The card you have is no longer "Secret IP" once it's on a storeshelf. Your competitor spends $299 and has a reference board. The card he builds can't be exactly like yours, but he can take good ideas from your board and implement them as long as there isn't a patent against it.
The reason they've got such tight reigns on drivers is that drivers cost a lot of programming hours to write. That is source code that I don't think the world will see. The games released for specific video cards also have some of that driver code (provided to them via NDA) from the cardmaker. their complete source code may contain very secret IP such as chip limitations, workarounds, extra settings, and other things that they may not want their competitors and customers to know about.
"Lame" - Galaxar
From 2002: Matrox continues to support the Linux community and is proud to release an open source driver for its flagship product Parhelia...
Karma: It's all a bunch of tree-huggin' hippy crap!