I'm using the GPU in my i3-3225 processor, an Ivy Bridge processor. The PC is connected through a KVM switch to the display.
When booting the PC with the display selected and On, I get the 1280x1024 resolution of my display.
When booting with the display off or not selected on the port, I get a resolution of 1024x768 @ 61 kHz.
What can I do to get the 1280x1024 resolution ?
I tried the xrandr recipe but I get the xrandr: Configure crt 0 failed error.
I know about the EDID thing. Could there be a way to save the current Xorg configuration as to be used as default even if the display is not connected ?
EDIT: Additional information
This is the output of xrandr --verbose I get when the PC is booted with the display connected:
$ xrandr --verbose
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 1280 x 1024, maximum 1280 x 1024
default connected 1280x1024+0+0 (0x138) normal (normal) 0mm x 0mm
Identifier: 0x137
Timestamp: 1212589
Subpixel: no subpixels
Clones:
CRTC: 0
CRTCs: 0
Transform: 1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
filter:
1280x1024 (0x138) 0.0MHz *current
h: width 1280 start 0 end 0 total 1280 skew 0 clock 0.0KHz
v: height 1024 start 0 end 0 total 1024 clock 0.0Hz
1024x768 (0x139) 0.0MHz
h: width 1024 start 0 end 0 total 1024 skew 0 clock 0.0KHz
v: height 768 start 0 end 0 total 768 clock 0.0Hz
800x600 (0x13a) 0.0MHz
h: width 800 start 0 end 0 total 800 skew 0 clock 0.0KHz
v: height 600 start 0 end 0 total 600 clock 0.0Hz
640x480 (0x13b) 0.0MHz
h: width 640 start 0 end 0 total 640 skew 0 clock 0.0KHz
v: height 480 start 0 end 0 total 480 clock 0.0Hz
This is the output of xrandr --verbose I get when the PC is booted with the display is not connected:
$ xrandr --verbose
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 1024 x 768, maximum 1024 x 768
default connected 1024x768+0+0 (0x138) normal (normal) 0mm x 0mm
Identifier: 0x137
Timestamp: 4495
Subpixel: unknown
Clones:
CRTC: 0
CRTCs: 0
Transform: 1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
filter:
1024x768 (0x138) 48.0MHz *current
h: width 1024 start 0 end 0 total 1024 skew 0 clock 46.8KHz
v: height 768 start 0 end 0 total 768 clock 61.0Hz
800x600 (0x139) 29.3MHz
h: width 800 start 0 end 0 total 800 skew 0 clock 36.6KHz
v: height 600 start 0 end 0 total 600 clock 61.0Hz
640x480 (0x13a) 18.4MHz
h: width 640 start 0 end 0 total 640 skew 0 clock 28.8KHz
v: height 480 start 0 end 0 total 480 clock 60.0Hz
xrandr
is what you want to use. You usually just use it to set to the mode you want to (as you say you know about the EDID thing, I suppose you know it provides the card with the list of supported modes and the preferred mode). The different resolution is just because the video driver will check across the connected displays for the supported resolutions -- if I boot my laptop with a display connected to the VGA port, I may as well as get 1024x768 on both, because it will mirror the screens by ...xorg.0.log
when you boot with the display, it will show up inxrandr
after you connect the display. Both X and XRandR will query the display for EDID data. Andxrandr
is updated in real-time, so once you plug the display, it will get the modes. Can you please share the exact command that gives the error above? And share the plain output of xrandr after connecting the display?