You are not logged in.

#1 2007-12-01 02:18:40

lithium
Member
Registered: 2007-09-18
Posts: 76

X.org refuses to obey

I have a recurring problem with Xorg. It seems to resurface every time that xorg-server is upgraded and I fumble around with the settings to make it work but it's really beginning to bug me now.

This machine is a laptop (Dell Latitude D610) with Intel i915 graphics driver. Normally when I am at home I use the laptop with an external LCD monitor that supports 1280x1024 (@ 60HZ only!). When I take it out I want to use the laptop LCD's native resolution of 1440x1050. The problem here lies with the use of the external montior. X.org simply INSISTS on auto-detecting settings and refuses to listen to what I have in xorg.conf. When I use it with the external monitor the settings MUST be 1280x1024 @ 60Hz. However every couple of times that I startx it will randomly choose 640x480 instead or just decide on it's own to switch to 75Hz. I make no changes to the xorg.conf file or any other file for that matter. It will just randomly decide to change things up a bit. Isn't there any way to tell X.org to stop trying to think it's so smart and independent and grown up that it doesn't have to listen to xorg.conf anymore?

Here is my entire xorg.conf:

Section "ServerLayout"
    Identifier     "Internal"
    Screen         "Internal"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "ServerLayout"
    Identifier     "External"
    Screen         "External"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
    RgbPath      "/usr/share/X11/rgb"
    ModulePath   "/usr/lib/xorg/modules"
    FontPath     "/usr/share/fonts/misc"
    FontPath     "/usr/share/fonts/100dpi:scaled"
    FontPath     "/usr/share/fonts/75dpi:scaled"
    FontPath     "/usr/share/fonts/TTF"
    FontPath     "/usr/share/fonts/Type1"
    FontPath     "/usr/share/fonts/artwiz-fonts"
EndSection

Section "Module"
    Load  "dbe"
    Load  "glx"
    Load  "GLcore"
    Load  "dri"
    Load  "record"
    Load  "xtrap"
    Load  "extmod"
    Load  "type1"
    Load  "freetype"
EndSection

Section "InputDevice"
    Identifier  "Keyboard0"
    Driver      "kbd"
EndSection

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option        "Protocol" "auto"
    Option        "Device" "/dev/input/mice"
    Option        "ZAxisMapping" "4 5"
EndSection

Section "Monitor"
    Identifier   "Internal LCD"
    VendorName   "Dell"
EndSection

Section "Monitor"
    Identifier   "Samsung LCD"
    VendorName   "Samsung"
    ModeLine     "1280x1024" 108.0 1280 1328 1440 1688   1024 1025 1028 1066 +hsync +vsync
EndSection

Section "Device"
    Identifier  "915GM"
    Driver      "i810"
    VendorName  "Intel Corporation"
    BoardName   "Mobile 915GM/GMS/910GML Express Graphics Controller"
    BusID       "PCI:0:2:0"
EndSection

Section "Screen"
    Identifier "Internal"
    Device     "915GM"
    Monitor    "Internal LCD"
    SubSection "Display"
        Modes    "1400x1050"
        Virtual    1400 1050
        Depth     24
    EndSubSection
EndSection

Section "Screen"
    Identifier "External"
    Device     "915GM"
    Monitor    "Samsung LCD"
    SubSection "Display"
        Modes   "1280x1024_60"
        Virtual    1280 1024
        Depth     24
    EndSubSection
EndSection

That way when I want to use the external LCD I can just do "startx -- -layout External" and when I want to use the Laptops LCD I can do "startx -- -layout Internal". Note that the problem only concerns the External layout (I think).

Offline

#2 2007-12-01 04:33:00

zodmaner
Member
Registered: 2007-07-11
Posts: 653

Re: X.org refuses to obey

Try putting this option:

Option "PreferredMode" "1280x1024_60.00"

In Monitor section of your external LCD monitor.

More info:
http://wiki.debian.org/XStrikeForce/HowToRandR12
http://bbs.archlinux.org/viewtopic.php? … 65#p299465
http://bbs.archlinux.org/viewtopic.php? … 03#p301403

Last edited by zodmaner (2007-12-01 04:49:06)

Offline

#3 2007-12-01 05:07:58

lithium
Member
Registered: 2007-09-18
Posts: 76

Re: X.org refuses to obey

Thanks for the quick reply. It still seems to start up at 640x480 every second or third time before being able to start up at 1280x1024 again. Like I said before, I don't change ANYTHING during these times. I just run the startx command, quit X and run it again and it will now be in 640x480 for some reason.

Why in the world would X.org autodetect settings even if you have your own settings in the xorg.conf file.

Also: The 75Hz issue is no longer happening (I think the modeline took care of that). Only the 640x480 issue.

Offline

#4 2007-12-01 10:44:24

zodmaner
Member
Registered: 2007-07-11
Posts: 653

Re: X.org refuses to obey

Are you using the newest version of X.org? The latest version of X.org (version 7.3) ignores the following options:

HorizSync from the Monitor section
VertRefresh from the Monitor section
Modes from Display subsection in Screen section

...and use RandR to set your monitor resolution & DPI values by means of auto-detection.

The only way to 'force' X.org to use resolution you want is to use the PreferredMode option that I've said above, combining with ModeLine option.

lithium wrote:

It still seems to start up at 640x480

Are you still getting this after put the PreferredMode option in your xorg.conf? Make sure that it is in your external monitor's Monitor section, not the internal one. If the problem still persist then I'm afraid you gotta wait for someone else who are more well verse in RandR-fu then me. smile

Last edited by zodmaner (2007-12-01 10:53:22)

Offline

#5 2007-12-01 11:17:32

somairotevoli
Member
Registered: 2006-05-23
Posts: 335

Re: X.org refuses to obey

zodmaner wrote:

The latest version of X.org (version 7.3) ignores the following options:

HorizSync from the Monitor section
VertRefresh from the Monitor section
Modes from Display subsection in Screen section

Doesn't ignore mine. If I comment out those sections (HorizSync,VertRefresh,Modes) then I am stuck with 640*480
my xorg.conf that gives me 1280*1024@85 w/o any problems

# X Server Configuration file generated by kX Generator 0.3.7
# (c) 2006 Tomasz Salacinski

  Section "ServerLayout"
      Identifier     "Xorg Configured"
      Screen         "Screen0"
      InputDevice    "Keyboard0" "CoreKeyboard"
      InputDevice    "PS/2 Mouse" "CorePointer"
  EndSection

  Section "ServerFlags"
      Option         "AllowMouseOpenFail" "true"
      Option         "DefaultServerLayout" "Xorg Configured"
  EndSection

  Section "Files"
RgbPath "/usr/share/X11/rgb"
      ModulePath     "/usr/lib/xorg/modules"
      FontPath     "/usr/share/fonts/misc:unscaled"
    FontPath     "/usr/local/share/fonts"
    FontPath "/usr/share/fonts/75dpi"
EndSection

  Section "Module"
      Load           "ddc"
      Load           "dbe"
      Load           "extmod"
      Load           "glx"
      Load           "bitmap"
      Load           "type1"
      Load           "freetype"
      Load           "record"
     # Load           "dri"
  EndSection

  Section "InputDevice"
      Identifier     "Keyboard0"
      Driver         "keyboard"
      Option         "CoreKeyboard"
      Option         "XkbRules" "xorg"
      Option         "XkbModel" "pc105"
      Option         "XkbLayout" "en_US"
      Option         "XkbVariant" ""
  EndSection

  Section "InputDevice"
      Identifier     "PS/2 Mouse"
      Driver         "mouse"
      Option         "Protocol" "auto"
      Option         "ZAxisMapping" "4 5"
      Option         "Device" "/dev/psaux"
      Option         "Emulate3Buttons" "true"
      Option         "Emulate3Timeout" "70"
      Option         "SendCoreEvents" "true"
  EndSection

  Section "Device"
      Identifier     "Card0"
      Driver         "nvidia"
      VendorName     "nVidia Corporation"
      BoardName      "NV5M64 [RIVA TNT2 Model 64/Model 64 Pro]"
      Option         "RenderAccel" "True"
      Option         "NoLogo" "True"
      Option         "NvAGP" "1"
      Option         "AllowGLXWithComposite" "true"
      Option         "UseEdidDpi" "false"
      Option         "DPI" "96 x 96"
      Option         "backingstore" "true"
  EndSection

  Section "Monitor"
      Identifier     "Monitor0"
      HorizSync      30.0 - 85.0
      VertRefresh    48.0 - 150.0
Gamma 1
  EndSection

  Section "Screen"
      Identifier     "Screen0"
      Device         "Card0"
      Monitor        "Monitor0"
      DefaultDepth 16

         SubSection "Display"
            Depth           16
            Modes           "1280x1024" "1024x768" "800x600" "640x480"
         EndSubSection
  EndSection

Section "Extensions"
    Option "Composite" "Enable"
    EndSection

Last edited by somairotevoli (2007-12-01 11:20:30)

Offline

#6 2007-12-01 11:33:52

zodmaner
Member
Registered: 2007-07-11
Posts: 653

Re: X.org refuses to obey

somairotevoli wrote:

Doesn't ignore mine.

Really? Hm... that's strange. hmm Mine was completely useless (I can't set my monitor resolution with them). Maybe this is because I'm using ATI card + open source (radeon) driver?

Offline

#7 2007-12-01 12:40:36

dhave
Arch Linux f@h Team Member
From: Outside the matrix.
Registered: 2005-05-15
Posts: 1,112

Re: X.org refuses to obey

This whole matter of xorg's evolution is confusing to a lot of people --  me, especially. I would really, really like to see a straightforward description of how xorg manages displays. One problem with some of the xorg wikis -- and this is inherent to the wiki format -- is that it's hard to tell what's current and what's obsolete or at least deprecated. The latest techniques are inserted right in there with xorg options which went out in the last millennium (that is, way back in 1999).

Obviously the trend is toward autodetection of and auto-adjustment to monitor specs. That's O.K. with me,  but what's not clear is whether and how we can maintain a degree of control over what xorg is doing. It seems that a number of xorg.conf options have been deprecated in favor of autodetection and of using xrandr to override or supplement that. But I'm still not clear on the details.

I often use my Thinkpad T43 connected to an external flat-screen panel. I'm presently using xrandr to manually switch between displays in order to get the optimal resolution on each. I don't mind doing that, but I think it's ironic that now that things are supposed to be more automatic, I'm actually having to intervene manually. For a number of years the "old" xorg-server system managed my displays just fine once I had configured them via xorg.conf.

If someone can point me to a really good, succinct, up-to-date explanation of the ins and outs of the current xorg approach to displays, I'd appreciate it. Thanks.


Donate to Arch!

Tired? There's a nap for that. --anonymous

Offline

#8 2007-12-01 18:14:39

berbae
Member
From: France
Registered: 2007-02-12
Posts: 1,302

Re: X.org refuses to obey

From http://wiki.debian.org/XStrikeForce/HowToRandR12 :

The RandR 1.2 extension first appeared in Xserver 1.3 (i.e DebianTesting, since 2007-08-21). It provides automatic discovery of modes (resolutions, refresh rates, ...) together with the ability to configure outputs dynamically (resize, rotate, move, ...).

As of today, the following drivers/boards support RandR 1.2:

    * the Intel driver on all boards (since 1.9.91),
    * the NV driver on G80 boards (since 2.0.95),
    * the ATI driver on r200/r300/r400 boards (since 6.7.191) where RandR 1.2 replaces MergedFB,
    * the MGA driver on all boards (since 1.9.99)

Other drivers still use the old/hard/non-standard way to configure modes.

So the nvidia driver continues to use the xorg.conf parameters as before :
HorizSync
VertRefresh from the Monitor section
Modes from Display subsection in Screen section
and others.
For the nvidia driver nothing's changed it doesn't use the RandR 1.2 extension to configure itself.

Offline

#9 2007-12-01 18:37:55

dhave
Arch Linux f@h Team Member
From: Outside the matrix.
Registered: 2005-05-15
Posts: 1,112

Re: X.org refuses to obey

Merci, berbae. That's about the clearest explanation in a small space that I've seen.


Donate to Arch!

Tired? There's a nap for that. --anonymous

Offline

#10 2007-12-02 01:36:05

lithium
Member
Registered: 2007-09-18
Posts: 76

Re: X.org refuses to obey

Yes, the PreferredMode line is in the external monitor section of the xorg.conf file. I still start up at 640x480 every couple of times.

Looking through the Xorg.0.log I see the following:

(WW) I810(0): Option "PreferredMode" is not used

Keep in mind that I am using the i810 driver. Does that change things?

Offline

#11 2007-12-02 21:42:51

exiguous
Member
Registered: 2007-11-11
Posts: 44

Re: X.org refuses to obey

I use the open-source ati driver, but here are some suggestions:

When I use a Modeline, I give it a special label so that it's clear that Xorg should use that one:

Modeline "1280x1024_60.00"  108.88  1280 1360 1496 1712  1024 1025 1028 1060
SubSection "Display"
         Depth           24
         Modes           "1280x1024_60.00"
EndSubSection

You could also try the following option in the Device section:

Option  "DDC"  "false"

When I use that option, I provide the HorizSync and VertRefresh values as well. Without them, I would be stuck at a much lower resolution.

Does Arch have the man page for i810? http://intellinuxgraphics.org/man.html

There may be some more useful options in there.

Offline

#12 2007-12-04 08:43:41

lithium
Member
Registered: 2007-09-18
Posts: 76

Re: X.org refuses to obey

Thanks for all the replies. Unfortunately, nothing here seems to work properly. X still randomly starts up in 640x480 about half the time.

Any idea on why "PreferredMode" is not used?

Offline

#13 2007-12-04 20:37:23

exiguous
Member
Registered: 2007-11-11
Posts: 44

Re: X.org refuses to obey

I'm not sure about "PreferredMode", but have you tried the other Intel driver (xf86-video-intel)? It looks like it uses RandR 1.2, which might help. See the link berbae provided.

Offline

#14 2007-12-05 00:06:58

Bogart
Member
From: Madrid, Spain
Registered: 2005-06-22
Posts: 272

Re: X.org refuses to obey

I think that the Option PreferredMode works with the new intel driver, not with i810 (can't say it for sure, though).

However, I think it could all be a matter of small details in xorg.conf.

If you want to stay with the i810 driver for now, make sure you have these options in your xorg.conf (with the correct HorizSync and VertRefresh values):

Section "Monitor"
    Identifier   "Samsung LCD"
    VendorName   "Samsung"
    HorizSync XX - XX
    VertRefresh XX - XX
    ModeLine     "1280x1024" 108.0 1280 1328 1440 1688   1024 1025 1028 1066 +hsync +vsync
EndSection

Section "Screen"
    Identifier "External"
    Device     "915GM"
    Monitor    "Samsung LCD"
    DefaultDepth 24
    SubSection "Display"
        Modes   "1280x1024"
        Virtual    1280 1024
        Depth     24
    EndSubSection
EndSection

And if you want to upgrade to the "intel" driver (you need to install xf86-video-intel), try with this:

Section "Monitor"
    Identifier   "Samsung LCD"
    VendorName   "Samsung"
    ModeLine     "1280x1024_60.00" 108.0 1280 1328 1440 1688   1024 1025 1028 1066 +hsync +vsync
    Option    "PreferredMode" "1280x1024_60.00"
EndSection

Section "Device"
    Identifier  "915GM"
    Driver      "intel"
    VendorName  "Intel Corporation"
    BoardName   "Mobile 915GM/GMS/910GML Express Graphics Controller"
    BusID       "PCI:0:2:0"
    Option "CacheLines"  "800"
EndSection

Section "Screen"
    Identifier "External"
    Device     "915GM"
    Monitor    "Samsung LCD"
    DefaultDepth 24
    SubSection "Display"
        Modes   "1280x1024_60.00"
        Virtual    1280 1024
        Depth     24
    EndSubSection
EndSection

Offline

#15 2007-12-05 22:46:52

lithium
Member
Registered: 2007-09-18
Posts: 76

Re: X.org refuses to obey

Bogart,

That first one seemed to work fine. I just started and restarted X about 12 times in a row and it used 1280x1024 @ 60Hz every time. It could be that I wasn't putting in the HorizSync line, only the VertRefresh line before.

Also, why are there two intel drivers now (xf86-video-intel and xf86-video-i810). Is there good reason to upgrade to the xf86-video-intel driver or no?

Thanks a lot.

Offline

#16 2007-12-08 10:10:36

Bogart
Member
From: Madrid, Spain
Registered: 2005-06-22
Posts: 272

Re: X.org refuses to obey

I'm glad that worked smile

>>Also, why are there two intel drivers now

Basically it got renamed. The i810 driver is the old one, and the new one since version 2.0 is called intel.

>>Is there good reason to upgrade?

The new driver has new features and should work better, though it has also introduced small problems. However, I would recommend upgrading now and see how it works for you. Sooner or later you'll probably have to upgrade anyway, since I don't think the old driver is going to be maintained any longer. Just make sure you adjust your xorg.conf with the changes I suggested for the intel driver and things should be good. If they aren't, post back (or you can always revert to the i810 driver).

Offline

#17 2007-12-25 07:20:43

shevegen
Member
Registered: 2005-03-17
Posts: 10

Re: X.org refuses to obey

Does complaining to the xorg devs about the growing complexity help? It seems that with many moves within the xorg team, things are getting worse in certain aspects ... modular build system without sufficient docu made it harder to have a working xorg-server on your own (monolithic build was straightforward, i did so without problem on an archlinux base install, including kde. all worked easily and nicely!) ... the goal to "not require xorg.conf file anymore" reads nice in theory but in practise it seems laden with problems on "non standard" hardware or simply ignoring user input.
And this is from the usability point of view, if you dig into the mailing list they seem to be preoccupied more with regression testing ... sad

Anyway cool to see people manage to win against that complexity wink

Offline

Board footer

Powered by FluxBB