This test case tests the multiple desktop functionality in Hybrid gpu machines where both gpus have some video outputs connected with all open source drivers booted with XORG
- Download Fedora 25 Beta or latest nightly
How to test
- Update all packages to the latest version: "sudo dnf update"
- Reboot, log into a "GNOME on Xorg" session
- In terminal execute
sudo xrandr --listproviders
- You should see 2 providers, both with a "outputs: x" with x > 0, of outputs = 0 for one of the 2 providers, then all video outputs on your laptop are only connected to one GPU and this test-case is not for you.
- Powermanagemt, the discrete GPU should by suspended / "Dynamic Off"when the laptop is booted and no external monitors are connected, this can be tested by as root doing:
sudo cat /sys/kernel/debug/vgaswitcheroo/switch, one of the GPUs should be listed as: "DynOff"
- Figure out which external monitor connector is connected to the secondary GPU, test VGA / mini-display-port, HDMI,display-port over USB-C, etc. one at a time. Plug in a monitor and configure it in its native resolution in gnome-control-center (should happen automatically), then wait 15 seconds and do: "
sudo cat /sys/kernel/debug/vgaswitcheroo/switch again, the GPU previously listed as "DynOff" should now show "DynPwr", if not try another external connector. Note it is possible that none of the external connectors are routed to the Secondary GPU, even though it is listed as having outputs, this differs per laptop model.
- Once you've found an external connector which is connected to the Secondary GPU (and thus keeps it in DynPwr state), check that the picture on the external monitor is as expected and that e.g. dragging a terminal to that monitor works and is smooth.
- Check that 15 seconds after unplugging the external monitor the Secondary GPU is back in "DynOff" state again.
- Check if the laptop's brightness hotkeys properly control the screen brightness
- Check suspend/resume with the external display connected to the Secondary GPU
- Check suspending without the external display connected to the Secondary GPU followed by resume with the external display connected
- Check suspending with the external display connected to the Secondary GPU followed by resume without the external display connected
- The first command should show 2 providers, with per provider a line like this:
Provider 0: id: 0x45 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 3 associated providers: 0 name:modesetting
- Powermanagement should give you the output to be
0:IGD:+:Pwr:0000:00:02.0 1:DIS: :DynOff:0000:01:00.0Notice that the Discrete GPU (DIS) is marked as DynOff, that is what we want
- The suspend/resume tests should go fine
- The hotkeys should function as supposed to
- There should not be any over heating
- Now if the user plugs in an external monitor on e.g a HMDI connector,and then configures it in gnome-control-center so that it shows a picture and then waits 15 seconds and then again (as root) does:
- We expect the DIS line to have changed to On, if it has not then the tested connector is hooked up to the integrated GPU (IGD) and the user should try another connector.Once the user has found an external connector which is attached to the DIS GPU he should unplug the monitor, wait 15 seconds and after that the DIS GPU should be in DynOff again.