xrandr: Configure crtc 0 failed problems
So I was setting up a second machine with an old monitor. (Old? From 2011.)
The monitor is a Dell P2412H. The machine has an Intel HD Graphics 4600 (HSW GT2). They're connected with a VGA cable.
I had Debian loaded on the box. The problem was that the resolution was 1024 by 768 maximum, despite the monitor going up to 1920 x 1080.
I was sure it used to work, but maybe I imagined it. Maybe it was a different monitor.
I tried the common stuff you see around, run cvt
to figure out a modeline, then use xrandr to create and add the mode.
I did:
cvt 1920 1080
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
Then
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode XWAYLAND0 "1920x1080_60.00"
xrandr --output XWAYLAND0 --mode "1920x1080_60.00"
But got the error:
Configure crtc 0 failed
Great.
I had an Ubuntu 21.04 installer lying around, so I installed that and tried again. Same problem.
Reading around various places I convinced myself it was Wayland.
So I installed [[MX Linux]], which has resisted Wayland so far and I wanted to try out for other reasons anyway.
I tried it all again, except with VGA-1 as the output rather than XWAYLAND0 this time.
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode VGA-1 "1920x1080_60.00"
xrandr --output VGA-1 --mode "1920x1080_60.00"
Same shit, different distro - argh!
So then I search for the manual for the monitor.
And came across this table of display modes:
The pixel clock is different from what cvt pumps out! 148.5 rather than 173.0.
So I tried
xrandr --newmode "1920x1080_60.00" 148.5 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode VGA-1 "1920x1080_60.00"
xrandr --output VGA-1 --mode "1920x1080_60.00"
And it worked, boom!
I wonder if it would have worked on Wayland, too. Probably. But that's OK, I like the look of MX Linux for now.
Just need to put it in a script to load that modeline automatically.
Huge faff though - I thought this stuff just worked these days. I guess it's something specific to this graphics chip. It's an Intel though, I thought they were pretty well supported. And the monitor is Dell. Not some weird generic brand. Hey ho.
Resources
- public document at doc.anagora.org/xrandr-configure-crtc-0-failed-problems
- video call at meet.jit.si/xrandr-configure-crtc-0-failed-problems