Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
C Shell
tree: 259b6991f5

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
COPYING
Makefile
README
asus-switcher-suspend-resume.sh
asus-switcheroo.c

README

This is extremely experimental, use at your own risk.

Build the asus-switcheroo.ko kernel modules:

# make

It's recommended to blacklist the nouveau module, so you can
load this module first:

# echo blacklist nouveau >> /etc/modprobe.d/blacklist.conf

Be sure to then rebuild your initramfs

# dracut -f /boot/initramfs-`uname -r`.img `uname -r`

Don't forget to reboot.

Then put something like this in your /etc/rc.local:

insmod /path/to/asus-switcheroo.ko
modprobe nouveau
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch

Or perhaps you want to echo DIS to switch to discrete graphics
on boot.  Note that we don't seem to actually get to turn off
the integrated graphics via the ACPI calls.  The i915 shutdown
hopefully does something useful.

It's probably a good idea to rebuild the module on boot to match
the running kernel and load the new version, otherwise confusing
things might happen.

Also note that on resume, the BIOS powers on the discrete graphics.
This will cause problems if the OS thinks it's still gone.  Turning
the card back on before sleep and off at resume seems to work.  Do
the following to put a script in place to handle this automatically.

cp asus-switcher-suspend-resume.sh \
   /etc/pm/sleep.d/75-asus-switcher-suspend-resume.sh

The lid switch is a known issue when running with the discrete
graphics.  Opening the lid causes a crash through the intel
driver, which seems to have forgotten it's hardware is disconnected.
Something went wrong with that request. Please try again.