The vga_switcheroo driver, used to switch between graphics chips, has gained a number of functions for supporting Optimus, NVIDIA's technology for enabling and disabling a discrete graphics chip on demand.
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=d099230cc355c485e556121c034b1fca5a5fd18b
Newer nVidia cards with Optimus do not support/use the DSM switching functions. Instead, it require a DSM function to be called prior to bringing a device into D3 state. No other _DSM calls are necessary before/after enabling/disabling a device. Switching between discrete and integrated GPU is not supported by this Optimus _DSM call, therefore return on the switching method.
For more information, join the team subscribe to the mailing list at the bottom of the Launchpad page http://launchpad.net/~hybrid-graphics-linux Please join this team if you are new by clicking on the "Join Team" link at the right of the Launchpad page. It's important to have as many users in the community as possible to request for appropriate support.