I've been poking around at getting switcheroo working on my Asus UL30VT and decided to drop it into a stand alone kernel module so that it's portable among various distributions and usable with existing kernels. This is really pretty generic, so I expect eventually we can incorporate it into nouveau_acpi. You can find the source tree here:
git://github.com/awilliam/asus-switcheroo.git If all you want to do is switch the discrete graphics off to save battery, it does that perfectly (note the included suspend/resume script). It's also able to switch the discrete graphics on with nouveau. This still has several issues (mostly with the remaining Intel driver). See the README for details. Also, if you're dead set on using the proprietary nvidia driver, there's a hack included for that... see the README. So far this is only tested on x86_64 Fedora 14. Standard disclaimers apply, this works for me, but use at your own risk. The theory of using a separate switcheroo module is simply that the switcheroo code only accepts one "handler", first come, first served. So, all we need to do is register before nouveau and take that slot. I really don't know what some of these MX ACPI method calls do (if anyone can share the MXM spec, please do), but I spent a while looking at the DSDT and poking things with acpi_call to figure out what works. When enabling the dummy client support for nvidia, we switch over the mux and power up the device, leaving it enabled and unclaimed by drivers for the nvidia driver to take over. Good luck, patches welcome. Please report if it works on other Asus laptops. Thanks, Alex _______________________________________________ Mailing list: https://launchpad.net/~hybrid-graphics-linux Post to : [email protected] Unsubscribe : https://launchpad.net/~hybrid-graphics-linux More help : https://help.launchpad.net/ListHelp

