February 09, 2010

Linux Catalyst (fglrx): Fixing black screen issue in versions 9.12 and 10.1

After upgrading AMD/ATI Catalyst driver (aka fglrx) from version 9.11 to 9.12 on Linux, I found that the new version didn't work - X would start but the screen would be black. I haven't put much time in resolving it and just rolled back to Catalyst 9.11.

Now that Catalyst 10.1 is out on Linux, I tried upgrading again but encountered the same black screen issue. I found a few solutions but they missed a crucial step (number 2 below), so here is the complete workaround:
  1. If your X session has been started and you are looking at the black screen, press CTRL+ALT+F2 to switch to the console, and login as root.
  2. Make sure /etc/ati/amdpcsdb.default file is present.
  3. Delete /etc/ati/amdpcsdb file.
  4. Reboot
X should start as usual after that.
If you don't have /etc/ati/amdpcsdb.default file, try to reinstall Catalyst.

The cause of the issue seems to be the inability of the newer fglrx versions to handle the amdpcsdb file created by the previous versions. I don't know what AMD's QA department was doing. Or do they even have any QA for Linux?