So, for a bit of background: I'm using Ubuntu 18.04 on an HP laptop, which uses a dual GPU setup. Before, I have been using it with just the Nouveau driver, but recently I wanted to add in a second monitor so I switched to the proprietary Nvidia driver 390.77 (which was something of an odyssey in itself).
Now the issue is that while the secondary monitor (connected through HDMI) works fine, the primary built-in laptop screen does not. During the boot-sequence, everything is displayed as normal on the laptop screen, including the grub menu and the startup log.
But the moment the log reaches "Started User Manager for UID 120" (at which point presumably the graphics driver is started up), the laptop screen freezes there and all further output is displayed on the secondary monitor. The Ubuntu display settings only recognize a single display (the external monitor), as does
What might be noteworthy is that I'm dual-booting this system together with Windows 10, and under Windows this issue doesn't happen, both displays work just fine and like you'd expect over there.
Now, my personal suspicion is that it might have something to do with the dual GPUs, in that the Intel one usually outputs to the laptop screen and the Nvidia one to the HDMI port, but I'm not certain.
I have tried to use the Intel GPU instead, via
sudo prime-select intel, but in that case the Nvidia driver didn't load at all, and I could only use the primary laptop screen while the external monitor wasn't recognized (i.e. similar to the behaviour under Nouveau). Additionally, this lead to a very low resolution that could only be circumvented by manually adding a new mode via
As for some possibly relevant data, here's the output of
lswh -C video:
*-display description: VGA compatible controller product: GP107M [GeForce GTX 1050 Ti Mobile] vendor: NVIDIA Corporation physical id: 0 bus info: pci@0000:01:00.0 version: a1 width: 64 bits clock: 33MHz capabilities: pm msi pciexpress vga_controller bus_master cap_list rom configuration: driver=nvidia latency=0 resources: irq:142 memory:b3000000-b3ffffff memory:a0000000-afffffff memory:b0000000-b1ffffff ioport:4000(size=128) memory:b4000000-b407ffff *-display description: VGA compatible controller product: Intel Corporation vendor: Intel Corporation physical id: 2 bus info: pci@0000:00:02.0 version: 04 width: 64 bits clock: 33MHz capabilities: pciexpress msi pm vga_controller bus_master cap_list rom configuration: driver=i915 latency=0 resources: irq:141 memory:b2000000-b2ffffff memory:c0000000-cfffffff ioport:5000(size=64) memory:c0000-dffff
xrandr. Noteworthy here is that the usual name of the laptop's display,
eDP-1, is not even listed here:
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767 HDMI-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 598mm x 336mm 1920x1080 60.00*+ 59.94 50.00 50.00 1680x1050 59.95 1600x900 60.00 1440x900 59.89 1280x1024 60.02 1280x800 59.81 1280x720 60.00 59.94 50.00 1024x768 60.00 800x600 60.32 720x576 50.00 720x480 59.94 640x480 59.94
# nvidia-xconfig: X configuration file generated by nvidia-xconfig # nvidia-xconfig: version 390.77 (buildmeister@swio-display-x64-rhel04-14) Tue Jul 10 23:19:22 PDT 2018 Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" 0 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" EndSection Section "Files" EndSection Section "InputDevice" # generated from default Identifier "Mouse0" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/psaux" Option "Emulate3Buttons" "no" Option "ZAxisMapping" "4 5" EndSection Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "kbd" EndSection Section "Monitor" Identifier "Monitor0" VendorName "Unknown" ModelName "Unknown" HorizSync 28.0 - 33.0 VertRefresh 43.0 - 72.0 Option "DPMS" EndSection Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Depth 24 EndSubSection EndSection