Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.
Admin message
Equinix is shutting down its operations with us on April 30, 2025. They have graciously supported us for almost 5 years, but all good things come to an end.
Given the time frame, it's going to be hard to make a smooth transition of the cluster to somewhere else (TBD). Please expect in the next months some hiccups in the service and probably at least a full week of downtime to transfer gitlab to a different place.
All help is appreciated.
Project 'drm/intel' was moved to 'drm/i915/kernel'. Please update any links and bookmarks that may still have the old path.
DDC pin sanitation removal leads to no outputs (bisected)
System is a Debian 10 amd64. Mainboard is an Asus B360M-A with latest bios. Latest working kernel is 6.5, first broken is 6.6. A monitor on HDMI port and another on VGA one.
Issue happen always: when PC boots, x doesn't start. And during reboot an i915 crash happens. In detail, VGA monitor remains off, HDMI one only show a black screen where you can move mouse cursor.
This morning drm-tip showed a different behavior: instead of black screen, it kept previous debug lines and I could move cursor above that image.
When I pressed CTRL+ALT+Fx to reach a console, a loop of debug messages started to come out with no end. I could not reach virtual terminals and had to logon by telnet.
Now I've tried with drmtip: same issue during startup, but I don't see crash in shutdown
The "crash", or really a warning backtrace:
i915 0000:00:02.0: drm_WARN_ON(!intel_irqs_enabled(dev_priv)) WARNING: CPU: 5 PID: 182 at drivers/gpu/drm/i915/display/intel_display_irq.c:11
that you see in https://bugzilla.kernel.org/attachment.cgi?id=305357 is unrelated to the DDC issue. Please file a separate issue for that. Looks like we've fixed it already, but would be nice to identify what to backport to v6.6.
At the start I suspected they were separated, but in the first steps of bisect I saw them in sync. Going on I kept looking only at the other issue...I will need to bisect again.
Argh. Feels like even the HPD pins are screwed up on this board
Please boot drm-tip without the VGA monitor connected, and with drm.debug=0xe log_buf_len=4M passed to the kernel cmdline, and attach the resulting dmesg.
Booting without VGA, HDMI monitor works. And then if I connect VGA cable, the other monitor works too. But only after logon to kde. Doesn't matter if connected before or after logon.
I put a dmesg before vga connection and another one after.
Yes, I see BIOS screen (and I can reach BIOS configuration), then I see lilo prompt and a part of kernel messages scrolling (about 70-80% of normal boot, don't know exactly because they scroll very fast). Then the monitor shuts down.
Another interesting thing to check would be to boot without loading i915 (eg. pass modprobe.blacklist=i915,snd_hda_intel 3 to the kernel (and whatever else is needed on your distro to avoid the GUI stuff loading the driver)), and then run the following commands as root and see what they report:
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec. SDEISR (0x000c4000): 0x03600000 (port d:0, port c:1, port b:1, crt:0) (0x000c4004): 0x03e20f00 (0x000c4008): 0x00000000 (0x000c400c): 0x00000000 (0x000c4030): 0x18181818 (0x000c403c): 0x00000018 PCH_PP_STATUS (0x000c7200): 0x00000000 (off, not ready, sequencing idle) PCH_PP_CONTROL (0x000c7204): 0x00000000 (blacklight disabled, do not power down on reset, panel off)``
intel_reg write 0xc4030 0xffffffff
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec.
intel_reg write 0xc403C 0xffffffff
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec.
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec. SDEISR (0x000c4000): 0x03600000 (port d:0, port c:1, port b:1, crt:0) (0x000c4004): 0x03e20f00 (0x000c4008): 0x00000000 (0x000c400c): 0x00000000 (0x000c4030): 0x18181818 (0x000c403c): 0x00000018 PCH_PP_STATUS (0x000c7200): 0x00000000 (off, not ready, sequencing idle) PCH_PP_CONTROL (0x000c7204): 0x00000000 (blacklight disabled, do not power down on reset, panel off)
sleep 1
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec.
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec. SDEISR (0x000c4000): 0x03600000 (port d:0, port c:1, port b:1, crt:0) (0x000c4004): 0x03e20f00 (0x000c4008): 0x00000000 (0x000c400c): 0x00000000 (0x000c4030): 0x18181818 (0x000c403c): 0x00000018 PCH_PP_STATUS (0x000c7200): 0x00000000 (off, not ready, sequencing idle) PCH_PP_CONTROL (0x000c7204): 0x00000000 (blacklight disabled, do not power down on reset, panel off)
Those numbers don't seem to match the earlier boot logs. The logs indicated that the VDD force bit (bit 3) was set in 0xC7204 but here it is not set on the first read.
Unfortunately the other thing we see here is that the HPD live state for DDI A really is asserted, so the hardware really thinks there's is something hooked up to DDI A. Also DDI B HPD is asserted as well, even though there is no DDI B in the VBT. So looks like the board designers just pulled those pins to the wrong state The real mystery is how the BIOS (and Windows presumably) manage to work on this board. I tried to look around in some Windows code a bit but I can't see anything that would explain this.
PS. please mark the shell output as a quote to make it more readable.
Done this test, like the previous it was taken without loading i915.
intel_reg read 0xc4000
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec. SDEISR (0x000c4000): 0x02400000 (port d:0, port c:1, port b:0, crt:0)
intel_reg write 0xc4030 0x10101010
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec.
intel_reg write 0xc403C 0x00000010
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec.
sleep 1
intel_reg read 0xc4000
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin register spec. SDEISR (0x000c4000): 0x03600000 (port d:0, port c:1, port b:1, crt:0)
Warning: register spec not found in '/usr/share/intel-gpu-tools/registers'. Using builtin r
egister spec.
DDI_BUF_CTL_A (0x00064000): 0x00000081 (disabled not reversed x1 dete
cted)
(0x00051000): 0x20400042
SFUSE_STRAP (0x000c2014): 0x00000103 (display enabled, crt no, lane
reversal no, port b no, port c yes, port d yes)
Kernel 6.5.10 works fine, kernel 6.6 and 6.6.1 both have black screen here. System is a Beelink Mini S12 Pro (12th gen Alder Lake N100 cpu w/integrated gpu Alder Lake-N
[UHD Graphics] [8086:46D1]). I also tried 6.6 on a Gemini Lake Intel NUC and had the same problem.