External monitor on HDMI-port often not working after suspend / sleep

Hello everybody,

I am using Manjaro (kernel 5.8) with kde/plasma. I have a small “problem”, which I am now trying to solve or at least to better understand. Frequently, the external monitor I plug-in via HDMI cable gets not activated when the linux-system in the meanwhile suspended / slept. I can exclude the monitor itself as the source of the problem as I have tested it with another x86-system.

Until now I see 2 possible reasons for the problem but I am not sure whether it is a) or b):

a) The motherboard / intel HDA / nvidia Geforce mx250 of my laptop does not work properly - somehow the HDMI-port gets deactivated and not activated when it wakes up.
b) There is some bug in my Linux which prevents the system to activate the HDMI-port

I see following possible indications to isolate the problem:

  • xrandr shows all the time DP-2 as connected even if the HDMI-cable is unplugged - it seems not to recognize that the monitor is not connected.
  • After that problem occurs, I have to shut down my laptop and start it again - then the monitor wakes up. A simple reboot does not wake up the monitor.
  • Everytime the problem occurs, the system “forgets” the display resolution I set before for DP-2 - I have to set it again to 1920x1200 via display configuration in systemsettings5

What not helped until now are the following measures:

  • Firmware-Update BIOS (to Insyde HP .09 from HP .05)
  • Installation of video-hybrid-intel-nvidia-455xx-prime (before I used only video-linux)
  • New installation of Manjaro with Kernels 5.4 and 5.8 without any modifications on the system except for audio issues (installation of pulseaudio-git v13.99999…).
  • Tried a lot of xrandr / xset commands based on similar problems people discussed about in some forums like:
xrandr --auto
xrandr --output eDP-1 --auto --output DP-2 --auto --left-of eDP-1
xset dpms force off; sleep 5; xset dpms force on
xset dpms force on; xset s reset

The xrandr output when the problem occurs is outlined below:

Screen 0: minimum 320 x 200, current 2944 x 1080, maximum 16384 x 16384
eDP-1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
   1920x1080     60.06*+  60.01    59.97    59.96    59.93    40.04  
   1680x1050     59.95    59.88  
   1400x1050     59.98  
   1600x900      59.99    59.94    59.95    59.82  
   1280x1024     60.02  
   1400x900      59.96    59.88  
   1280x960      60.00  
   1440x810      60.00    59.97  
   1368x768      59.88    59.85  
   1280x800      59.99    59.97    59.81    59.91  
   1280x720      60.00    59.99    59.86    59.74  
   1024x768      60.04    60.00  
   960x720       60.00  
   928x696       60.05  
   896x672       60.01  
   1024x576      59.95    59.96    59.90    59.82  
   960x600       59.93    60.00  
   960x540       59.96    59.99    59.63    59.82  
   800x600       60.00    60.32    56.25  
   840x525       60.01    59.88  
   864x486       59.92    59.57  
   700x525       59.98  
   800x450       59.95    59.82  
   640x512       60.02  
   700x450       59.96    59.88  
   640x480       60.00    59.94  
   720x405       59.51    58.99  
   684x384       59.88    59.85  
   640x400       59.88    59.98  
   640x360       59.86    59.83    59.84    59.32  
   512x384       60.00  
   512x288       60.00    59.92  
   480x270       59.63    59.82  
   400x300       60.32    56.34  
   432x243       59.92    59.57  
   320x240       60.05  
   360x202       59.51    59.13  
   320x180       59.84    59.32  
DP-1 disconnected (normal left inverted right x axis y axis)
HDMI-1 disconnected (normal left inverted right x axis y axis)
DP-2 connected 1024x768+1920+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00* 
   800x600       60.32    56.25  
   848x480       60.00  
   640x480       59.94 

inxi -Fazy

System:
  Kernel: 5.8.16-2-MANJARO x86_64 bits: 64 compiler: N/A 
  parameters: BOOT_IMAGE=/boot/vmlinuz-5.8-x86_64 
  root=UUID=f10fe1a4-9cde-4dbf-a28c-d05d6857cb50 rw quiet apparmor=1 
  security=apparmor udev.log_priority=3 
  Desktop: KDE Plasma 5.19.5 tk: Qt 5.15.1 wm: kwin_x11 dm: SDDM 
  Distro: Manjaro Linux 
Machine:
  Type: Convertible System: HP product: HP ENVY x360 Convertible 15-dr1xxx 
  v: Type1ProductConfigId serial: <filter> Chassis: type: 31 serial: <filter> 
  Mobo: HP model: 86B2 v: 85.20 serial: <filter> UEFI: Insyde v: F.09 
  date: 08/06/2020 
Battery:
  ID-1: BAT0 charge: 52.8 Wh condition: 52.8/52.8 Wh (100%) volts: 17.0/15.1 
  model: 333-AC-3E-A SA04055XL type: Li-ion serial: <filter> status: Full 
  Device-1: hid-0018:04F3:2400.0002-battery model: ELAN2514:00 04F3:2400 
  serial: N/A charge: N/A status: N/A 
CPU:
  Topology: Quad Core model: Intel Core i7-10510U bits: 64 type: MT MCP 
  arch: Kaby Lake family: 6 model-id: 8E (142) stepping: C (12) microcode: D6 
  L2 cache: 8192 KiB 
  flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx 
  bogomips: 36812 
  Speed: 887 MHz min/max: 400/4900 MHz Core speeds (MHz): 1: 698 2: 698 3: 672 
  4: 655 5: 697 6: 699 7: 696 8: 700 
  Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled 
  Type: l1tf status: Not affected 
  Type: mds status: Not affected 
  Type: meltdown status: Not affected 
  Type: spec_store_bypass 
  mitigation: Speculative Store Bypass disabled via prctl and seccomp 
  Type: spectre_v1 
  mitigation: usercopy/swapgs barriers and __user pointer sanitization 
  Type: spectre_v2 mitigation: Enhanced IBRS, IBPB: conditional, RSB filling 
  Type: srbds mitigation: TSX disabled 
  Type: tsx_async_abort status: Not affected 
Graphics:
  Device-1: Intel UHD Graphics vendor: Hewlett-Packard driver: i915 v: kernel 
  bus ID: 00:02.0 chip ID: 8086:9b41 
  Device-2: NVIDIA GP108M [GeForce MX250] vendor: Hewlett-Packard 
  driver: nvidia v: 455.28 alternate: nouveau,nvidia_drm bus ID: 02:00.0 
  chip ID: 10de:1d13 
  Device-3: Cheng Uei Precision Industry (Foxlink) HP Wide Vision HD Camera 
  type: USB driver: uvcvideo bus ID: 1-4:3 chip ID: 05c8:03d3 
  Display: x11 server: X.Org 1.20.9 compositor: kwin_x11 
  driver: modesetting,nvidia unloaded: intel,nouveau alternate: fbdev,nv,vesa 
  display ID: :0 screens: 1 
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 507x285mm (20.0x11.2") 
  s-diag: 582mm (22.9") 
  Monitor-1: eDP-1 res: 1920x1080 hz: 60 dpi: 142 size: 344x194mm (13.5x7.6") 
  diag: 395mm (15.5") 
  OpenGL: renderer: Mesa Intel UHD Graphics (CML GT2) v: 4.6 Mesa 20.1.8 
  direct render: Yes 
Audio:
  Device-1: Intel vendor: Hewlett-Packard driver: sof-audio-pci 
  alternate: snd_hda_intel,snd_soc_skl,snd_sof_pci bus ID: 00:1f.3 
  chip ID: 8086:02c8 
  Sound Server: ALSA v: k5.8.16-2-MANJARO 
Network:
  Device-1: Intel Wireless-AC 9462 driver: iwlwifi v: kernel port: 4000 
  bus ID: 00:14.3 chip ID: 8086:02f0 
  IF: wlo1 state: up mac: <filter> 
  IF-ID-1: docker0 state: down mac: <filter> 
Drives:
  Local Storage: total: 476.94 GiB used: 181.74 GiB (38.1%) 
  SMART Message: Unable to run smartctl. Root privileges required. 
  ID-1: /dev/nvme0n1 model: KBG30ZMV512G KIOXIA size: 476.94 GiB block size: 
  physical: 512 B logical: 512 B speed: 15.8 Gb/s lanes: 2 serial: <filter> 
  rev: ADHA0102 scheme: GPT 
RAID:
  Hardware-1: Intel 82801 Mobile SATA Controller [RAID mode] driver: ahci 
  v: 3.0 port: 4060 bus ID: 00:17.0 chip ID: 8086.282a rev: N/A 
Partition:
  ID-1: / raw size: 238.41 GiB size: 233.67 GiB (98.01%) 
  used: 91.82 GiB (39.3%) fs: ext4 dev: /dev/nvme0n1p4 
Swap:
  Alert: No Swap data was found. 
Sensors:
  System Temperatures: cpu: 49.0 C mobo: 37.0 C 
  Fan Speeds (RPM): N/A 
Info:
  Processes: 388 Uptime: 1d 22h 53m Memory: 15.31 GiB used: 10.09 GiB (65.9%) 
  Init: systemd v: 246 Compilers: gcc: 10.2.0 Packages: pacman: 1390 lib: 361 
  flatpak: 0 Shell: Bash v: 5.0.18 running in: konsole inxi: 3.1.05 

Could I state: The source of the problem must be the motherboard / intel hda / nvidia mx250 as for linux there is no difference between reboot vs. shutdown + start as the system gets in both cases the same drivers loaded?

Or is there a different way how to find out what the source of the problem is?

Many thanks!

Kind regards,

D.

Disabling the hibernation at /etc/systemd/sleep.conf seems to work for now.


#AllowHibernation=no
#AllowSuspendThenHibernate=no
#AllowHybridSleep=no

Best regards,
L