External HDMI screen do not wake up from suspend (bumblebee)

Hi,

I have a Clevo laptop with a GeForce GTX 965M as dGPU and a Intel Core i7-6700HQ cpu as iGPU (obviously the external screens are wired to the dGPU).
On archlinux, with kernel 4.9.6 and nvidia 375.26 I have three solution:

  • Disable iGPU from bios: everythings works ok with some changes as ``` acpi_osi=\"Windows 2015\" CONFIG_DRM_I915=n vga=0 nvidia-drm.modeset=1 rdblacklist=nouveau nouveau.modeset=0 ``` in grub kernel paramaters.
  • Use both graphic cards with the PRIME solution posted in its own topic. There are no problems.
  • Use Bumblebee. Here I can not wake up the external HDMI screen when I resume the pc from suspend. It seems disabled but in xrandr it is connected. Only the internal works ok. With bumblebee I have this grub configuration:
    GRUB_CMDLINE_LINUX_DEFAULT="acpi_osi=! acpi_osi=\"Windows 2009\" rdblacklist=nouveau nouveau.modeset=0 acpi_backlight=native"
    

    because there are some known problems with nvidia/acpi/bbswitch.
    And the other things are the standard ones. As the wiki of archlinux suggests.

Looking at the Xorg.log and journalctl log it seems that there are no big problems.

It is really similar to this bug:
https://bugzilla.redhat.com/show_bug.cgi?id=1179924
and to an old one of Nvidia (maybe closed in august? I can’t recall).

I found a workaround to this problem. Once you wake up from suspend you should do:

xrandr --output VIRTUAL1 --off; read -n1;

then

intel-virtual-output; xrandr --auto;

with the second one maybe 2+ times.
Cutting to the chase: you have to turn off second screen, wake up again both internal and external screens, and redo all the procedure for enable the second screen (in a bumblebee way).

Could you help me?

Thank You

nvidia-bug-report.log.gz (205 KB)