Any way to make switching between discrete and integrated graphics from the BIOS work with proprietary drivers?

I haven't tried this with an AMD adapter, but your issue is common to integrated vs. discrete Nvidia graphics setups as well (tested on a Lenovo Thinkpad T510s).

Under normal circumstances, an open source graphics driver is automatically selected by the X server during boot based upon your adapter selection in BIOS -- integrated vs. discrete.

When enabling proprietary drivers while the discrete adapter is in use, an Xorg configuration file is created in /etc/X11/xorg.conf in order to explicitly tell the X server to use the proprietary driver. While this configuration file exists, X will use the driver specified in it rather than auto-detecting your hardware setup. You can see how this would be problematic when you switch back to your integrated graphics adapter; the AMD/Nvidia proprietary driver is still specified in the xorg.conf file.

The way to safely revert back to your integrated graphics adapter is to delete the xorg.conf file:

$ sudo rm /etc/X11/xorg.conf

Alternately, you may rename the file such that it can no longer be found by X:

$ sudo mv /etc/X11/xorg.conf /etc/X11/xorg.conf.backup

On your next boot, when no xorg.conf file is detected, the X system will again auto-detect your hardware configuration and load the appropriate open source driver.


Currently there is no solution for this problem. You can read more about it here: http://phoronix.com/forums/showthread.php?78813-Simple-graphics-switching-through-BIOS/ I'll ask moderators to re-open the question when a viable solution comes into light.