This was also reported as a Debian bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=894731 Today I upgraded from linux-image-4.14.17 to 4.15.11. Because the third monitor connected via VGA doesn't seem to expose a proper EDID or any EDID at all, I use "drm_kms_helper.edid_firmware=VGA-1:edid/1280x1024.bin" to force the resolution. This used to work fine with the built-in firmwares as well as with a custom EDID I acquired from the screen by connecting it to HDMI. With the upgrade to 4.15, the flag doesn't work anymore. The only relevant message I get in dmesg is: [ 8.750411] [drm] drm_kms_firmware.edid_firmware is deprecated, please use drm.edid_firmware intead. When using the config variable drm.edid_firmware, instead, the deprecation warning disappears, but still, nothing happens. "edid-decode /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-VGA-1/edid" now returns an invalid or no EDID: Extracted contents: header: 00 00 00 00 00 00 00 00 serial number: 00 00 00 00 00 00 00 00 00 00 version: 00 00 basic params: 00 00 00 00 00 chroma info: 00 00 00 00 00 00 00 00 00 00 established: 00 00 00 standard: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 descriptor 1: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 descriptor 2: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 descriptor 3: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 descriptor 4: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 extensions: 00 checksum: 00 No header found Manufacturer: @@@ Model 0 Serial Number 0 EDID version: 0.0 Analog display, Input voltage level: 0.7/0.3 V Sync: Image size is variable Gamma: 1.00 Monochrome or grayscale display Established timings supported: Standard timings supported: non-conformant standard timing (0 horiz) non-conformant standard timing (0 horiz) non-conformant standard timing (0 horiz) non-conformant standard timing (0 horiz) non-conformant standard timing (0 horiz) non-conformant standard timing (0 horiz) non-conformant standard timing (0 horiz) non-conformant standard timing (0 horiz) Manufacturer-specified data, tag 0 Manufacturer-specified data, tag 0 Manufacturer-specified data, tag 0 Manufacturer-specified data, tag 0 Checksum: 0x0 (valid) EDID block does not conform at all! Bad year of manufacture Manufacturer name field contains garbage Whereas previously it would display information about the custom EDID. Additionally, it would print these messages to dmesg: [ 62.914247] platform VGA-1: firmware: direct-loading firmware edid/edid.bin [ 62.914265] [drm] Got external EDID base block and 0 extensions from "edid/edid.bin" for connector "VGA-1" Which does not happen anymore as of >= 4.15
Created attachment 276133 [details] dmesg from 4.16 kernel with regression
Created attachment 276135 [details] dmesg from working 4.14 kernel
Please file drm/i915 bugs at the freedesktop.org bugzilla: https://bugs.freedesktop.org/enter_bug.cgi?product=DRI&component=DRM/Intel Please add drm.debug=14 module parameter, and grab the dmesgs again, and attach to the bug at fdo.
Also, try adding "video=VGA-1:e" in addition to the drm.firmware parameter.
Adding video=VGA-1:e fixed it for me.