On Sun, Aug 14, 2022 at 09:09:43PM +1200, Luke Jones wrote:
On Sat, 2022-08-13 at 12:55 +0200, Lukas Wunner wrote:
> On Sat, Aug 13, 2022 at 09:26:24PM +1200, Luke D. Jones wrote:
> > Support the hardware GPU MUX switch available on some models. This
> > switch can toggle the MUX between:
> >
> > - 0, Dedicated mode
> > - 1, Optimus mode
> >
> > Optimus mode is the regular iGPU + dGPU available, while dedicated
> > mode switches the system to have only the dGPU available.
>
> Could you please integrate this with the framework provided by:
>
> include/linux/vga_switcheroo.h
> drivers/gpu/vga/vga_switcheroo.c
>
> vga_switcheroo will then automatically expose a sysfs interface.
I did investigate this first before submitting. The way asus does it is
not standard at all. On switch you must reboot, and the change isn't
reflected by the ACPI get method until reboot. It's very reflective of
how they used dgpu_disable to work around windows issues that we do in
Linux by removing the device from the device tree.
The key thing is a reboot is required. This is not done on-the-fly. I
have a two year old GX502 which has the same method as exposed here,
and also a 2022 TUF laptop with same method. My understanding of this
pariicular method is that it isn't the same one as what Nvidia is
advertising, and ASUS is perhaps misadvertising it - the suspision is
raised by the fact that my GX502 machine predates what Nvidia is
advertising.
I see, thanks for the explanation. You may want to add that
background information to the commit message if/when respinning.
Indeed vga_switcheroo facilitates GPU switching at runtime,
not upon next reboot.
Thanks,
Lukas