On Tue, Aug 30, 2016 at 02:13:46PM -0400, Ilia Mirkin wrote:
On Tue, Aug 30, 2016 at 2:02 PM, Roland Singer roland.singer@desertbit.com wrote:
I configured bbswitch to not set any states automatically... So it's possible to obtain and verify the GPU power state.
However I removed the bbswitch module and booted with nouveau.
Kernel 4.7.2: nouveau switches the discrete GPU off. I can't trigger the freeze, because bbswitch is missing. I'll work with the system and see if it will freeze.
Kernel 4.8-rc4: nouveau does not care about the power state and the discrete GPU is never switched off. I will notice this, because the second cooling FAN will stop... Same log messages as send before.
That's surprising. I believe there's an issue with the new logic when there's an HDMI audio subdevice. However that only appears if there's a cable plugged in, at least in the systems Peter tested. You should be able to see whether it's there or not with 'lspci'.
I doubt that the audio device is responsible here, that should only show up after following very specific steps (runtime suspend/resume (PCI or ACPI magic), remove PCI device, rescan bus).
You can check for sure by looking in the vgaswitcheroo state. It should say DynOff when it's powered off.
Either way, I think using bbswitch + nouveau isn't supported by anyone, so if you want to use it that way, you're on your own. (You may want to load nouveau with runpm=0 so that nouveau doesn't try to manage the GPU suspend stuff.)
I understood that Roland's intent is to check the power state, not use the suspend functionality of bbswitch, if you load bbswitch without module options amd do not write to /proc/bbswitch, then it allows you to read out the actual status (you could also just use lspci -H1 for that though).