Display probems using a KVM with 12.2 RC2

I’m having problems getting my screen to the right size when using a KVM with 12.2.

I have a Samsung monitor which should be optimised to 1680x1050 refreshing at 60MHz. When I have it directly wired to the computer this is what I get. I’ve saved this to xorg.conf.

However, when I attached it to the computer using a KVM, the screen size changes to 1024x768. I can change this to 1600x1200 via the nvidia-settings drop-down menu and this holds between reboots. Xorg.conf, meanwhile, still contains the saved 1680x1050 configuration.

An annoying feature of the 1600x1200 display is that the monitor displays a message to say this is not the optimum configuration, which remains in the middle of the screen for some time. The other annoying feature, in the end, a worse one, is, of course, that things are the wrong size and shape!

How do I get system to use xorg.conf to define my screen size and refresh rate?

On 09/01/2012 10:56 AM, johngwalker wrote:
>
> I’m having problems getting my screen to the right size when using a KVM
> with 12.2.
>
> I have a Samsung monitor which should be optimised to 1680x1050
> refreshing at 60MHz. When I have it directly wired to the computer this
> is what I get. I’ve saved this to xorg.conf.
>
> However, when I attached it to the computer using a KVM, the screen
> size changes to 1024x768. I can change this to 1600x1200 via the
> nvidia-settings drop-down menu and this holds between reboots.
> Xorg.conf, meanwhile, still contains the saved 1680x1050 configuration.
>
> An annoying feature of the 1600x1200 display is that the monitor
> displays a message to say this is not the optimum configuration, which
> remains in the middle of the screen for some time. The other annoying
> feature, in the end, a worse one, is, of course, that things are the
> wrong size and shape!
>
> How do I get system to use xorg.conf to define my screen size and
> refresh rate?

Do you know that xorg.conf is obsolete? Perhaps it would be read if you do not
have any “Device”, “Screen”, or “Monitor” sections in other files in
/etc/X11/xorg.conf.d/, but it is also possible that the newest versions of xorg
never use it.

Copy the appropriate sections from your xorg.conf into the files 50-device.conf,
50-monitor.conf, and 50-screen.conf. Then delete xorg.conf.

Thanks for the reply.

Copy the appropriate sections from your xorg.conf into the files 50-device.conf,
50-monitor.conf, and 50-screen.conf. Then delete xorg.conf.

I’ve done this, but it seems to have no effect. One reason might be that the boot loader options, under Yast, have as the chosen option “Autodetect by grub2”. There are other options here, but none that satisfy what i want.

So I think the question still is: how do I get openSUSE to use the x configuration?

On 09/02/2012 09:46 AM, johngwalker wrote:
>
> Thanks for the reply.
>
>> Copy the appropriate sections from your xorg.conf into the files
>> 50-device.conf,
>> 50-monitor.conf, and 50-screen.conf. Then delete xorg.conf.
>>
>
> I’ve done this, but it seems to have no effect. One reason might be
> that the boot loader options, under Yast, have as the chosen option
> “Autodetect by grub2”. There are other options here, but none that
> satisfy what i want.
>
> So I think the question still is: how do I get openSUSE to use the x
> configuration?

Did you check /var/log/Xorg.0.log? Xorg is very finicky about the configuration
files. I don’t use GRUB2, so I don’t know for sure, but I think that any option
selected there will not override any setting once the kernel is running.

Did you check /var/log/Xorg.0.log? Xorg is very finicky about the configuration
files

What should I check for?

I don’t use GRUB2, so I don’t know for sure, but I think that any option
selected there will not override any setting once the kernel is running.

It seems to me that that is precisely what is being followed.

I’m wondering how dangerous it would to be to uncheck the option marked “Use graphical console”. Would that let Xorg do its work?

On 09/02/2012 12:16 PM, johngwalker wrote:
>
>> Did you check /var/log/Xorg.0.log? Xorg is very finicky about the
>> configuration
>> files
>
> What should I check for?

Error messages.

>> I don’t use GRUB2, so I don’t know for sure, but I think that any option
>> selected there will not override any setting once the kernel is
>> running.
>
> It seems to me that that is precisely what is being followed.
>
> I’m wondering how dangerous it would to be to uncheck the option marked
> “Use graphical console”. Would that let Xorg do its work?

Try it.

> I’m wondering how dangerous it would to be to uncheck the option marked
> “Use graphical console”. Would that let Xorg do its work?

Try it.

Once I’d worked out how to recover if disaster struck, I did.

Basically, this option concerns the boot menu. Unchecking it meant that I got a choice of what to load displayed in text. Once I booted the machine the graphics kicked in, presumably from the X server. The only difference was that the range of screen sizes offered was more restricted than before. It still wasn’t picking up the specifications from x.org.d.

This is getting beyond annoying.

I seem to have read something about a vga option on the kernel command line parameter. How does that work?

On 09/02/2012 03:46 PM, johngwalker wrote:

> This is getting beyond annoying.
>
> I seem to have read something about a vga option on the kernel command
> line parameter. How does that work?

The only vga option I know about is for GRUB. See
http://www.pendrivelinux.com/vga-boot-modes-to-set-screen-resolution/. The
command is wrong for GRUB2 - it uses the video option - and it has nothing to do
with the kernel.

You can confirm what is failing by examining /var/log/Xorg.0.log, although from what you’ve described this is a classic case of the KVM preventing the display’s EDID from being read correctly. There are already numerous threads on this topic if you care to search. It is not hard to crate a minimal xorg.conf (or use the newer Xorg config files if preferred) to overcome this.

Read this thread:

http://forums.opensuse.org/forums/english/get-technical-help-here/hardware/460441-11-4-higher-display-resolution.html

It shows how to force manual resolution with a minimal xorg.conf

@lwfinger: Thanks for the information on the vga parameter.It looks like it doesn’t solve my needs at all, in any case. Indeed, none of the options available are the right size or shape.

@deano: Please read my original post and my first reply to lwfinger. I have the xorg files in place, but they are apparently being ignored. The question is how to get 12.2 to follow instructions!

  1. The kernel boot parameter will NOT solve this issue. It is unrelated.

  2. I did read your initial post, but you haven’t shared your xorg.conf for us to comment on further. The thread I linked to, shows how to create a minimal configuration that will work without EDID from the monitor. However, since your monitor works at the correct resolution when directly connected (as expected), you can use the nvidia-settings ‘Acquire EDID’ function to save the EDID as a file. Then, the driver can be told to read this file (when it is now connected via the KVM device). You haven’t said what type of cable/connector you’re using, and this must match what is reported in /var/log/Xorg.0.log, but assuming DVI-0 as an example:

Section "Device"
 Identifier     "nVidia" 
 Driver         "nvidia"
 Option         "CustomEDID" "DVI-0:/path/to/your/custom.edid"
 EndSection

I have the xorg files in place, but they are apparently being ignored. The question is how to get 12.2 to follow instructions!

If you read my first reply, (and Larry also hinted at it), you need to take a close look at /var/log/Xorg.0.log for errors, and if it is still not clear to you what the problem is, then upload the contents to

SUSE Paste

and post the link to it here. I recommend that you post your xorg.conf too.

If you wanted me to post my files, you only had to ask.

My xorg.conf file was created by nvdia-settings when I ran it with the monitor directly attached, but I’ve split it up as suggested by lwfinger (though the xorg.conf web page suggests the xorg.conf file and the xorg.conf.d directory are alternatives).

The 50-device.conf file contains:

Section “Device”
Identifier “Device0”
Driver “nvidia”
VendorName “NVIDIA Corporation”
BoardName “GeForce GTX 555”
EndSection

The 50-monitor.conf file contains:

Section “Monitor”
Identifier “Monitor0”
VendorName “Unknown”
ModelName “Samsung SyncMaster”
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option “DPMS”
EndSection

The 50-screen.conf file contains:

Section “Screen”
Identifier “Screen0”
Device “Device0”
Monitor “Monitor0”
DefaultDepth 24
Option “Stereo” “0”
Option “nvidiaXineramaInfoOrder” “CRT-0”
Option “metamodes” “1680x1050_60 +0+0; nvidia-auto-select +0+0”
SubSection “Display”
Depth 24
EndSubSection
EndSection

And I’ve pasted the contents of xorg.0.log when I ran the machine with the monitor attached via a KVM to SUSE Paste

It reads the xord.conf files correctly, but then comes up with an error:

17.658] () NVIDIA(0): Option “MetaModes” “1680x1050_60 +0+0; nvidia-auto-select +0+0”
17.658] (
) NVIDIA(0): Enabling 2D acceleration
18.518] (WW) NVIDIA(GPU-0): The EDID read for display device CRT-0 is invalid:
18.518] (WW) NVIDIA(GPU-0): unrecognized EDID Header.

and, a few lines later:

18.522] () NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
18.522] (
) NVIDIA(0): device CRT-0 (Using EDID frequencies has been enabled on
18.522] (**) NVIDIA(0): all display devices.)
18.529] (WW) NVIDIA(0): No valid modes for “1680x1050_60+0+0”; removing.

Does this suggest that the problem lies in my KVM? Or where?

Thanks for the help so far. It’s beginning to look like it isn’t a simple problem.

On 09/06/2012 10:46 AM, johngwalker wrote:

>> 17.658] () NVIDIA(0): Option “MetaModes” “1680x1050_60 +0+0;
>> nvidia-auto-select +0+0”
>> 17.658] (
) NVIDIA(0): Enabling 2D acceleration
>> 18.518] (WW) NVIDIA(GPU-0): The EDID read for display device CRT-0
>> is invalid:
>> 18.518] (WW) NVIDIA(GPU-0): unrecognized EDID Header.
>
> and, a few lines later:
>
>> 18.522] () NVIDIA(0): Using HorizSync/VertRefresh ranges from the
>> EDID for display
>> 18.522] (
) NVIDIA(0): device CRT-0 (Using EDID frequencies
>> has been enabled on
>> 18.522] (**) NVIDIA(0): all display devices.)
>> 18.529] (WW) NVIDIA(0): No valid modes for “1680x1050_60+0+0”;
>> removing.
>
> Does this suggest that the problem lies in my KVM? Or where?
>
> Thanks for the help so far. It’s beginning to look like it isn’t a
> simple problem.

The initial problem is with the switch - you were told that several postings
ago. It does not pass the EDID. The next problem is that your configuration
files are not correct, but I think it is simple to fix. Note, the error log says
you have no valid modes for 1680x1050_60.

You need to specify the mode in 50-monitor.conf. I think you need the following
in that file:


Section "Monitor"
Identifier "Default Monitor"

# 1680x1050 59.95 Hz (CVT 1.76MA) hsync: 65.29 kHz; pclk: 146.25 MHz
Modeline "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059
1089 -hsync +vsync
Option "PreferredMode" "1680x1050_60.00"
EndSection

The modeline data comes from ‘cvt 1680 1050 60’. and should be on a single line.

With only one mode specified in the Monitor section, your 50-screen.conf can be
quite simple:


Section "Screen"
Identifier "Default Screen"
Monitor "DefaultMonitor"

Device "Device0"

EndSection

Thanks, lwfinger, but it’s still not working. From the log, it looks like it’s not even reading 50-monitor.conf (see SUSE Paste).

50-monitor.conf reads

Section “Monitor”
Identifier “DefaultMonitor”
# 1680x1050 59.95 Hz (CVT 1.76MA) hsync: 65.29 kHz; pclk: 146.25 MHz
Modeline “1680x1050_60.00” 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
Option “PreferredMode” “1680x1050_60.00”
EndSection

and 50-screen.conf reads

Section “Screen”
Identifier “Screen”
Monitor “DefaultMonitor”
Device “Device0”
EndSection

I can’t see a typo, but anyone is free to shout if they notice one.

johngwalker wrote:

>
> I can’t see a typo, but anyone is free to shout if they notice one.
>
I had trouble a couple of distributions ago. My setting, given below,
probably have more than the minimal required but the worked.

50-monitor.conf

Section “Monitor”
DisplaySize 433 271
HorizSync 31.3-80.2
VertRefresh 56-75
Identifier “Monitor[0]”
ModelName “1680X1050@60HZ”
Option “DPMS”
Option “PreferredMode” “1680x1050”
VendorName “–> LCD”

If your monitor doesn’t support DDC you may override the

defaults here

UseModes “Modes[0]”
EndSection
Section “Modes”
Identifier “Modes[0]”
Modeline “1280x1024” 108.00 1280 1328 1440 1688 1024 1025 1028 1066 +HSync
+VSync
Modeline “1680x1050” 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync
+vsync
EndSection

50-screen.conf

Section “Screen”
DefaultDepth 16

Doesn’t help for radeon/radeonhd drivers; use magic in

50-device.conf instead

SubSection “Display”
Depth 24
Modes “1680x1050” “1280x1024”
EndSubSection
Device "Device[0]
Identifier “Screen[0]”
Monitor “Monitor[0]”
EndSection

50-device.conf

Section “Device”
Identifier “Device[0]”
BusID “0:2:0”
BoardName “865 G”
Driver “intel”
#Driver “radeon”

Required magic for radeon/radeonhd drivers; output name

(here: “DVI-0”) can be figured out via ‘xrandr -q’

#Option “monitor-DVI-0” “Default Monitor”
Option “monitor-VGA” “Monitor[0]”
Screen 0
VendorName “Intel”

Option “Legacy3D” “true”

Option “DDC” “false”

Option “EDID” “false”

EndSection

I hope you can sort something out from those.

Thanks for the suggestion. I tried amending the files in line with what you suggested, but X is still reading the EDID, finding it invalid and ignoring what I specify. I can, however, confirm that it’s reading the files. A typo in any one of them causes the GUI not to load.

50-device.conf contains:

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce  GTX 555"
EndSection 

50-monitor.conf contains:


Section "Monitor"
  Identifier     "DefaultMonitor"
  Option "PreferredMode" "1680x1050_60.00"
  UseModes "Modes[0]"
EndSection 
Section "Modes"
  Identifier "Modes[0]"
  Modeline "1280x1024" 108.00 1280 1328 1440 1688 1024 1025 1028 1066 +HSync +VSync
  Modeline "1680x1050" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
  Modeline "1680x1050_60.00"  146.25  1680 1784 1960 2240  1050 1053 1059 1089 -hsync +vsync
EndSection

50-screen.conf contains:


Section "Screen"
  Identifier     "Screen"
  Monitor        "DefaultMonitor"
  Device         "Device0"
  DefaultDepth 16
  SubSection "Display"
    Depth 24
    Modes "1680x1050_60.00" "1680x1050" "1280x1024"
  EndSubSection
EndSection 

The log can be seen at SUSE Paste

This is getting seriously annoying.

johngwalker wrote:

>
> Thanks for the suggestion. I tried amending the files in line with what
> you suggested, but X is still reading the EDID, finding it invalid and
> ignoring what I specify. I can, however, confirm that it’s reading the
> files. A typo in any one of them causes the GUI not to load.
>

>
> The log can be seen at ‘SUSE Paste’
> (http://paste.opensuse.org/45100824)
>
> This is getting seriously annoying.
>
>
The option below dosn’t work with intel chipsets but may work with your
50-screen.conf
Option “EDID” “false”

I suggest the screen section because the log seems to be reading that
section when the edid section appears.
On second thoughts I would try adding it to each of the files.

Thanks for the idea, Graham. It was a good one, except it didn’t make the slightest bit of difference. I tried adding it file by file, but no joy with any of them.