Linux Display Switching Support For Apple MacBooks

Posted by Michael Larabel on August 15, 2012

Canonical and others continue to hack on rudimentary support for graphics display switching for Apple MacBook laptops bearing multiple graphics processors.

Seth Forshee on Tuesday published his latest work in this area for Apple display switching support to the kernel mailing list. The patches build upon vga_switcheroo to support display switching with the GMUX. While these three patches allow for display switching, graphics drivers may still have issues with this support on Apple hardware due to missing/invalid vBIOS information on Apple computers. The patches at least fix a GMUX state restoration issue that some MacBook users have seen.
This series adds display switching support for Apple laptops. The first two patches contain preparatory changes to vga_switcheroo, and the third contains the changes to support display switching with the gmux.

While these patches will allow switching the display mux, most Macbook owners will not be able to switch GPUs in practice until the graphics drivers are updated to deal with missing or incorrect vbios information on Apple machines. These patches do fix an issue seen by some users of Linux on Macbooks, however. These users will switch to the internal GPU in OS X and then reboot into Linux to save power, but after S3 the gmux gets reset to the discrete GPU. Adding the display mux support will fix this problem by restoring the gmux state during resume.
Matthew Garrett has also been working on Apple GMUX support for the newer Apple Intel/NVIDIA graphics hardware per these patches from this week. Matthew Garrett's been playing around with an Apple Retina MacBook Pro and trying to better the Linux support, but from my testing thus far, I absolutely cannot recommend running any Linux distribution at this time bare-metal on Apple's newest notebook with its incredible display. There's many outstanding problems and all of the issues will likely not be all ironed out and found in tier-one distributions until early next year at least.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. KDE's KWin Made Lots Of Progress In 4.11
  2. Ubuntu Announces Carrier Advisory Group
  3. Qt 5.1 Release Candidate 1 Has Arrived
  4. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  5. Subversion 1.8 Presents New Features
  6. LLVM 3.3 Officially Released
  7. LLVM/Clang Now Uses Loop Vectorizer At New Levels
  8. Intel GPU Driver Tries To Rip Out FBDEV Support
  9. Coreboot Doing AMD USB 3.0, Q35 QEMU Emulation
  10. VP9 Codec Now Enabled By Default In Chrome
  11. openSUSE 13.1 M2 Plays On PulseAudio 4.0
Latest Forum Talk
  1. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  2. Ubuntu Announces Carrier Advisory Group
  3. VP9 Codec Now Enabled By Default In Chrome
  4. Intel GPU Driver Tries To Rip Out FBDEV Support
  5. Handbrake 0.9.9 Supports OpenCL Offloading
  6. Planetary Annihilation Plans To Come To Linux
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite