The last time I was able to use ATI/AMD's proprietary driver without any problems was strangely enough with an ATI Radeon 9600 Pro in an old version of SuSE Linux. Since then AMD's proprietary driver has caused me semi-regular GPU lockups on R520 (X1650), Evergreen (HD 5670) and Southern Islands (HD 7770) series cards. Nvidia's proprietary drivers seem to have fared better with three generations of their cards (7300 GT, the notorious 8600M GS, GT 240, GTS 250...), with an occasional X server crash when running a video game in Wine but few lockups. On the other hand, in the FOSS world I have experienced the opposite (AMD being better than Nvidia). The worst individual case was setting up GeForce GT 240 to work in Linux Mint 13 last year. The OS wouldn't boot with kernel mode setting on and starting X once it has booted without kernel mode setting gave me a screenful of RGB noise; my solution was to install the proprietary driver in text mode and then write a custom xorg.conf. The drivers for Intel's graphics seem the best so far if you use relatively modern chips (I have tried GMA X3100, GMA 3150, Intel HD Graphics 2000), however, I had no luck trying to get the legacy Intel Extreme Graphics 2 to work. It doesn't really work with Linux 2.6+, resulting in an image that flashes and rolls up and down the screen like a the picture on an analogue TV that's lost the vertical synchronization signal.
If my case is in any way typical then I'd say the drivers are in dire need of fixing.
I have to write one when I switch from novareau to nvidia-proprietary but it's for a very specific reason - my monitor outputs invalid EDID information. Otherwise, you should never have to write a config file in almost all cases.
It was early last year. The GT 240 is a really finicky card in Linux, apparently.
>I have to write one when I switch from novareau to nvidia-proprietary but it's for a very specific reason - my monitor outputs invalid EDID information. Otherwise, you should never have to write a config file in almost all cases.
I can't remember the exact options I had to put in xorg.conf for the GT 240 but them being there did matter.
I confronted a similar problem with EDID setting up an extra 1366x768 monitor connected to a legacy Radeon 9200 PC at work. This resolution is always a pain (since the value of 1366 is not divisible 8 and hence can't be specified in the EDID block), but it much more so when you have a legacy graphics card.
Weird, Novareau played fine with my GT 240 in my old desktop, but I was using it with 12.10 and novareau has come a long way recently. And installing the prop driver took nothing more than installing it (and maybe running nvidia-xconfig and letting it ensure 'nvidia' is loaded instead of 'novareau'.
Legacy monitors can be weird. I had someone in Ubuntu IRC with some very ancient super high res 13" monitor. I don't think we ever got them helped out.