First Came VGA Switcheroo, Now Comes ASUS Switcheroo

Posted by Michael Larabel on April 23, 2011

Last February there was the first bits of hybrid graphics support under Linux when Red Hat's David Airlie began working on what he called "vga_switcheroo." The vga_switcheroo support allowed switching between multiple graphics processors -- primarily for notebooks -- by issuing a few commands and restarting the X Server. This work was later merged into the mainline kernel, but as of late there hasn't been much more to say.

The vga_switcheroo support is living in the mainline kernel, but it's far from being at the same level of support as what's available for hybrid graphics notebooks in Windows and even Mac OS X. (One item to note is that for those using the AMD Catalyst Linux driver, there is now PowerXpress support under Linux.) It also doesn't work with all hardware. However, now there's a new project: ASUS-Switcheroo. The ASUS-Switcheroo kernel module was started by another Red Hat engineer and is designed to better the support for some ASUS laptops.

ASUS notebooks with "hybrid graphics" commonly boast Intel integrated graphics with a discrete NVIDIA GPU so that when running on battery power or don't need the extra graphics rendering power, the low-power Intel graphics are used, but when there's a need, the graphics can seamlessly switch to coming from the NVIDIA GPU.

The ASUS-Switcheroo module though doesn't support the ASUS Optimus laptops at this point. Hybrid graphics support on Linux has been poor and NVIDIA doesn't have plans to support their Optimus Technology on Linux. Right now this ASUS-Switcheroo support is limited to those with the basic WMI MXM interface switching such as the UL30VT notebook.

The ASUS-Switcheroo module does still depend upon vga_switcheroo and writing to its respective debugfs nodes. It also introduces an i915-jprobe module for working around an Intel driver bug. Additionally, there's also experimental support in the ASUS-Switcheroo module for switching to/from the NVIDIA proprietary driver rather than just the open-source Nouveau driver.

While this may seem like a major advancement, this ASUS-Switcheroo module just amounts to a little over 100 lines of code. There's also pending upstream patches for Linux 2.6.40 that would make ASUS-Switcheroo not needed, but this could serve as a workaround for existing ASUS notebooks. With that said, this kernel module will likely not be seen for mainline kernel inclusion.

More information on the ASUS-Switcheroo kernel module can be found on the GitHub project page.

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. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  2. Intel Linux OpenGL Driver Leading Over Apple OS X
  3. The Cost Of Ubuntu Disk Encryption
  4. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
Latest Linux News
  1. A New X.Org-Free Wayland LiveCD Released
  2. Unity 8, Mir Made Progress This Week On Features
  3. LLVM Clang 3.3 RC2 Is Ready For Testing
  4. AMD RadeonSI Gallium3D Begins Simple CL Demos
  5. Intel Shows Off GNOME3-Based Tizen Shell
  6. Linux Desktop Security Could Be A Whole Lot Better
  7. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  8. New NVIDIA Linux Driver Supports The GeForce GTX 780
  9. Chrome 28 To Offer More Speed Improvements
  10. Digia Announces "Boot To Qt" Project
  11. X.Org Libraries Hit By Round Of Security Issues
Latest Forum Talk
  1. Linux Desktop Security Could Be A Whole Lot Better
  2. AMD RadeonSI Gallium3D Begins Simple CL Demos
  3. A New X.Org-Free Wayland LiveCD Released
  4. X.Org Libraries Hit By Round Of Security Issues
  5. Wayland's Weston Gets Output Scaling Support
  6. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  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