On 17 Jul 2003, William Suetholz wrote: > When are the various different patches out there for ATI cards going >to be integrated into XFree86 and DRI? I know of at least two different >projects that are modifying these drivers.
I'm not sure what specific patches you're refering to, but if you're refering to the DRI project and GATOS project, they're not "patches". They are projects. The DRI code gets merged into XFree86 2-3 times a year or more depending on various factors, and happens as XFree86 development proceeds. The GATOS code is something which requires integrating both into the DRI project as it has DRI/DRM modifications that are required and which there are compatibility issues that need to be addressed, and it needs to be merged into XFree86 as well, and there are massive integration issues involved in order to do that as well. I believe the GATOS maintainer would like to see this happen, and I believe the DRI project and XFree86 project would also like to see it happen. It's not a simple 10 minute job however as I have investigated just how much work would need to be done to merge this everywhere and it is non-trivial. The XFree86 project, the DRI project, and the GATOS project are ran by volunteers with limited amount of spare time to work on things. The code for GATOS has largely not been merged into XFree86 because nobody has had the time to devote to doing it. So the answer to your first question is essentially "This will get merged into XFree86 and DRI, etc. when an unpaid volunteer decides that it is interesting work to work on, and has time to devote to doing so, and other things going on at the time in development wont interfere." In short "When someone has time." >What's the deal with ATI's drivers? The binary ones, or the open source ones? Either way, your question isn't very clear. "What's the deal" doesn't mean a lot. >Why couldn't they just help out with the existing drivers >instead of reinventing the wheel? They do. The majority of the code that is contributed to the XFree86 open source 2D drivers for Radeon is contributed by ATI, and most of it written by Hui Yu at ATI. Other code contributions come from the DRI project, Michel Daenzer, myself, Kevin Martin, and numerous others. ATI generally contributes the code to support 2D on all new chipsets that come out, as well as providing various bug fixes in their patch sets. Since 4.3.0 was released, ATI has contributed approximately 18 major patches to the XFree86 project for the Radeon driver in the last 4 months approximately, of which support was added for 3D on Radeon 9200, and 2D support was added for Radeon 9200/9600/9800 and the Radeon IGP mobile chipsets, and others. You may wish to check the XFree86 CHANGELOG document which shows when these changes were checked into CVS by Kevin Martin along with some patches for Radeon by other devleopers. As for your statement "reinventing the wheel" and it's associated implication about why ATI has produced proprietary drivers and made them available for download, here is a clue for you. The binary drivers which were available on ATI's website were originally designed for high end workstation FireGL video hardware. These drivers have been available for a very long time for this high end hardware. Due to increasing demands from users to add support to their binary drivers for Radeon 8500, since the chip is essentially identical programmatically to the FireGL 8800 chips, ATI eventually made some changes to the driver to allow them to be used for the Radeon 8500 as well, however the drivers are unsupported - just like any company's drivers are unsupported on any OS platform. (Try calling any video hardware vendor on the telephone for *any* operating system, including Microsoft Windows and tell them your video card is crashing and you think it is a driver bug. Watch how fast every vendor out there will tell you that they do not provide end user support.) These drivers were provided more or less as-is to people in hopes that people find them useful, which is the same reason any other video hardware company who provides proprietary drivers to users in the community. The drivers are an alternative provided which in the cases of ATI and Nvidia at least, are based on their Windows driver code. >From what I understand, the OpenGL code in both ATI and Nvidia's drivers is shared with their Windows/Mac and whatever other OS's they support. It's cross platform code they maintain for all OS's they choose to provide drivers for. The 2D driver is aparently not shared code, which makes sense as Windows and X driver models differ greatly. The kernel code would be custom code written for the given operating systems involved, and almost certainly written for high end high paying customers in the scientific and other high end 3D customers in the marketplace. In short, these drivers weren't written for gamers, or home users. They were written for high end customers out there and merely provided for download by mortals as a convenience in hopes that people find them useful and benefit from them being there. Both ATI, Nvidia and any other company providing such drivers to the communtiy, could just very well stop doing it, and instead only include them in their high end workstation graphics hardware CDROMS for those scientific customers. Why do these companies not open source their complete drivers? Because they have intellectual property in their drivers that they don't want all of their competitors to just scoop up and use in their own drivers for free. They also likely have various pieces of code in their drivers that they did not write and do not own, but have licensed from a 3rd party. In short, they most likely have legal agreements on parts of their code that they can NOT release under open source licenses. By these companies contributing to open source drivers however (ATI contributes heavily to the radeon driver, and Nvidia to the "nv" driver), they are still contributing to the open source community, and they are providing users with an alternative to use that is outside of any legally binding agreements that code might contain in their own full proprietary drivers. >After all their drivers don't support XV at all, so you can't >use the multimedia capabilities of some of their integrated >cards like the AIW-PRO and 8500DV. I realize that in the past >they have provided some information to XFree86, and eventually >after having their multimedia stuff reverse engineered to the >group that was working on that. They have, however, never >provided complete information! They've got the right to do that if they wish. Suffice it to say that ATI has provided more documentation for their video hardware than all other vendors combined, at least the docs that I have had access to from all vendors. With people like you bitching about it however, I don't see how that is intended to get anyone to release any documentation or specifications that haven't been released. They could theoretically release all documentation to everything, open source their proprietary drivers, sell their company and donate the money to the XFree86 project, and people would still find something to bitch thanklessly about and complain about some bug they find. > I should have learned my lesson with the problems I had with ATI and >the AIW-Pro.. Well why don't you go learn your lesson then? Buy a Cirrus Logic 5446. Simple card, driver works, not any bugs I know of. I've even got the docs if you want them. > I really can't see the problem with these chip designers releasing >information so there could be drivers written that can take advantage of >ALL the features for the chips, and boards they produce! I'd love nothing more than to see all video hardware vendors release the specifications to their hardware openly to the public, as that would allow anyone to work on the driver code. However, with the current trademark, patent, and copyright system in place, companies out there want to protect what is theirs so it can't be used by competitors. They want to ensure they keep their technology that they've spent millions or billions of dollars developing in their own hands and not give it to competitors to use too. It's their decision what parts of their technology that they consider to be their "assets" and that they wish to keep as trade secrets. Again also, they license technology from other companies, either hardware and/or software, and the agreements they might possibly have with those 3rd party vendors very well may not legally allow them to provide information on how the hardware works, or to provide open source code to the community that allow that technology to operate. I don't understand why people find this so difficult to understand? Don't get me wrong, I would love to see all hardware out there have open source drivers, and see all vendors providing code and contributing fixes also, as well as providing complete technical specifications to all hardware. That would be a great utopia I would look forward to very much. The reality however is that we live in a capitalist society and have strict trademark/copyright/patent and trade secret laws designed to allow companies to invent/create something and then own it, either permanently, effectively permanently, or for some period of time. With this legal climate, this erects walls for open source, and they're not going to be easy walls to work around. We get what the lawyers say we can have basically, and we should be glad to get that, especially if the alternative is nothing. >It would be really nice if there could be one set of drivers for >these cards, rather then this hodge-podge of drivers! A driver >set that supported all the features for the cards! Who out there is paying for to see that happen, and how much are they paying for it? When Linux/BSD/whatever is on as many desktops as Windows or other popular desktop operating systems are, then you might see the attention spent on unified drivers for XFree86 that are spent on Windows driver development. To spend 50% of engineering on Windows development for 95%+ of the market, and and 50% of engineering on Linux development for 1-2% or whatever of the market doesn't line up on financial executive's calculators very well. If you want drivers for video hardware that expose all the features of your hardware, you're using the wrong operating system and graphical environment. Come back in 2-3 years and perhaps Linux will own 50% of the desktop and we can expect driver development to then be spent by the hardware vendors as 50% on Windows, and 50% on X11. It's simple mathematics really. If I sound like the devil's advocate, I assure you I'm not. I'm just tired of hearing random people bitch and beak off about this type of crap who don't put any sort of thought whatsoever into the business, legal, copyright/trademark/patent, or engineering costs and other factors that affect these types of decisions in companies out there. Try to look at things from the angle of the given company out there for once. And really, the XFree86 project has absolutely zero control over any of this, so why bitch about it here where NOBODY can remotely do anything about it? </rant> -- Mike A. Harris _______________________________________________ Devel mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/devel