3

When two monitors are connected at boot, the Linux kernel completely hangs at fb0: switching to i915 from EFI VGA. The screens stay on and continue displaying the last message, but everything is otherwise unresponsive. Numlock/Capslock lights don't toggle. Alt-SysRq usually does not work, though I can occasionally force a reboot with Alt-SysRq+B. Dmesg and other logs are not written to disk. When two monitors are connected at boot the UEFI splash image displays at a lower resolution - so I wonder if the issue is caused by incorrect video information given to Linux by the UEFI. Connecting the second monitor after POST works fine, Linux starts using the monitor before even switching to the DRM framebuffer and there's no hang. nomodeset or i915.modeset=0 also work, but this is obviously undesirable.

Hardware

  • Intel Core i7-11700K (HD750 Graphics - gen12)
  • Asus ROG Strix B560-A Gaming WiFi w/UEFI v1203
  • Monitor 1: Dell P2419H over HDMI @ 1920x1080p60
  • Monitor 2: Dell P2419HC over DisplayPort 1.2 @ 1920x1080p60

Software

  • Pop_OS! 21.10 x64 (Issue also occurs with Ubuntu 21.10)
  • Linux pop-os 5.15.5-76051505-generic #202111250933~1638201579~21.10~09f1aa7 SMP

The issue seems similar to other issues related to Intel Gen12+ graphics on Linux:

However, those issues are supposed to be fixed by Linux 5.15, and I've tried their workarounds already.

Attempted Fixes

UEFI

  • Disable PCIe low power modes
  • Change eGPU dedicated VRAM amount
  • Disable eGPU low power modes
  • Disable VT-d
  • Disable SR-IOV
  • Disable chipset/DMI low power modes
  • Set splash screen logo display to "Full screen" rather than Auto
  • Disable Fast Boot

systemd-boot

  • loader.conf:
    • console-mode auto
    • console-mode max

Kernel command line

  • Set drm.edid_firmware to firmware dumps read from each monitor
  • Disable one monitor with video=DP-1:d (The monitor still comes on?)
  • Force monitor modes with video=DP-1:1920x1080@60 video=HDMI-1:1920x1080@60
  • Remove quiet loglevel=0 systemd.show_status=false splash
  • Set vga=ask (doesn't work)
  • i915.force_probe=4c8a
  • i915.fastboot=1 and i915.fastboot=0
  • i915.enable_guc=2
  • i915.enable_dc=0
  • i915.enable_fbc=1 and enable_fbc=0
  • Many combinations of the above

Initramfs

  • Added i915 to initramfs

Still need to try

  • Change bootloader to GRUB2, since it supports overriding the resolution from the UEFI.
  • Compile kernel with USB serial console support to see if there are messages printed after the display driver fails.

Any suggestions?

Mastax
  • 116

0 Answers0