Jump to content

Radeon:External laptop monitor refresh rate


jimdunn
 Share

Recommended Posts

I posted this over at the Mandriva forum, but I thought it was interesting enough to pop it on here too:

 

Here's a great tutorial on using the mergefb option in xorg to handle dual displays: http://ozlabs.org/~jk/docs/mergefb/

 

I have an external monitor hooked to my laptop via the VGA port, and I'd been struggling to get X to use anything other than a horrible 60 Hz to drive it.

 

Once I followed the steps on the linked page, it just worked fine at a "lovely" 85 Hz - no flicker - no more headaches !!!

 

Because I only wanted the same resolution on the lcd and the monitor, and I wasn't interested in scrolling around multiple desktops, I changed the config from the linked page a little bit - and here's what works like a charm for me now:

 

The particular trick is duplicating your Device section with the same BusID in both sections (you can get the ID from lspci), and setting up 2 monitor sections - 1 for lcd, 1 for monitor.

 

As you'll see, in MetaModes I've forced both displays to 1024x768 - but you don't have to do that (I played around with the dual desktop overlapping etc.., and it works really well - I just didn't use it in the end) - it was just the solution to my refresh rate problem.

 

Section "ServerFlags"
  #DontZap # disable <Ctrl><Alt><BS> (server abort)
  #DontZoom # disable <Ctrl><Alt><KP_+>/<KP_-> (resolution switching)
  AllowMouseOpenFail # allows the server to start up even if the mouse does not work
 EndSection

 Section "Module"
  Load "dbe" # Double-Buffering Extension
  Load "v4l" # Video for Linux
  Load "extmod"
  Load "type1"
  Load "freetype"
  Load "glx" # 3D layer
  Load "dri" # direct rendering
 EndSection

 Section "InputDevice"
  Identifier "Keyboard1"
  Driver "kbd"
  Option "XkbModel" "logicd"
  Option "XkbLayout" "us"
  Option "XkbOptions" "compose:rwin"
 EndSection

 Section "InputDevice"
  Identifier "Mouse1"
  Driver "mouse"
  Option "Protocol" "ExplorerPS/2"
  Option "Device" "/dev/mouse"
 EndSection

 Section "Monitor"
  Identifier "monitor1"
  VendorName "Philips"
  ModelName "Philips 107S(17inch/CM1300)"
  HorizSync 30.0-69.0
  VertRefresh 50.0-120.0
  DisplaySize 269 201 # 96 DPI @ 1024x768
 EndSection

 Section "Monitor"
  Identifier "laptop lcd"
  Option		  "DPMS"
 EndSection

 Section "Device"
  Identifier "device1"
  VendorName "ATI Technologies Inc"
  BoardName "ATI Radeon 9250 and earlier"
  Driver "ati"
  BusID  "PCI:01:05:0"
  Option  "MergedFB" "true"
  Option  "MetaModes" "1024x768-1024x768 1024x768-1024x768"
  Option  "MergedDPI" "100 100"
  Option "DPMS"
  Option "BIOSHotkeys"
  Option "XaaNoOffscreenPixmaps" "1"
 EndSection

 Section "Device"
  Identifier "device2"
  VendorName "ATI Technologies Inc"
  BoardName "ATI Radeon 9250 and earlier"
  Driver "ati"
  BusID  "PCI:01:05:0"
  Option "DPMS"
  Option "BIOSHotkeys"
  Option "XaaNoOffscreenPixmaps" "1"
  Screen 1
 EndSection

 Section "Screen"
  Identifier "screen1"
  Device "device1"
  Monitor "monitor1"
  DefaultColorDepth 24 
  Subsection "Display"
	  Depth 8
	  Modes "1024x768" "832x624" "800x600" "640x480" "480x360" "320x240"
  EndSubsection

  Subsection "Display"
	  Depth 15
	  Modes "1024x768" "832x624" "800x600" "640x480" "480x360" "320x240"
  EndSubsection

  Subsection "Display"
	  Depth 16
	  Modes "1024x768" "832x624" "800x600" "640x480" "480x360" "320x240"
  EndSubsection

  Subsection "Display"
	  Depth 24
	  Modes "1024x768" "832x624" "800x600" "640x480" "480x360" "320x240"
  EndSubsection
 EndSection

 Section "Screen"
  Identifier "screen2"
  Device "device2"
  Monitor "laptop lcd"
  DefaultColorDepth 24 
  Subsection "Display"
	  Depth 8
	  Modes "1024x768" "832x624" "800x600" "640x480" "480x360" "320x240"
  EndSubsection

  Subsection "Display"
	  Depth 15
	  Modes "1024x768" "832x624" "800x600" "640x480" "480x360" "320x240"
  EndSubsection

  Subsection "Display"
	  Depth 16
	  Modes "1024x768" "832x624" "800x600" "640x480" "480x360" "320x240"
  EndSubsection

  Subsection "Display"
	  Depth 24
	  Modes "1024x768" "832x624" "800x600" "640x480" "480x360" "320x240"
  EndSubsection
 EndSection

 Section "ServerLayout"
  Identifier "layout1"
  InputDevice "Keyboard1" "CoreKeyboard"
  InputDevice "Mouse1" "CorePointer"
  Screen "screen1"
 EndSection

Edited by jimdunn
Link to comment
Share on other sites

Thanks for this tip.

You use 1024x768 on both screens... is this your LCD's native resolution?

Yes it is

 

Is your external CRT capable of more than 1024x768?

Yes, but I prefer it at 1024 x 768

 

I would like to have native 1400x1050 on the LCD and native 1280x1024 on the external LCD (TMDS), is it possible at all?

I'm not sure - but if it is I'm afraid I can't tell you how :mellow:

 

Someone else might know if you can use this trick to get the 2 screens at different resolutions - I played around with my Xorg.conf just before posting this, but everything I tried left both screens the same size, sometimes with the mouse scrolling the screen around when the desktop was bigger than the monitor.

 

On the page I linked to he has 2 resolutions available and switches between them using xrandr depending on which screen he wants to look at.

 

He says:

 

 

 

Also, make sure that the larger of the monitors can display at the resolution of the smaller one, and that both have that resolution present in their Screen section -> Display subsection -> Modes parameter. With this setup, the overall X configuration will have two resolutions available, one matching each display. The xrandr program can be used to switch between these two resolutions while X is running. When running at the resolution of the larger monitor, the smaller monitor will scroll around the desktop with the mouse - however, since you're mirroring, you can hide this display from view.

 

 

 

He also goes on to talk about merging - using both screens as "viewports" to the same desktop, but that all sounded too complex for me.

 

I was just happy to get the refresh rate issue solved - it had really been annoying looking at a 60Hz CRT.

Link to comment
Share on other sites

In fact, after a little thought I can't see how you could ever have 2 screens at different resolutions showing the same thing.

 

By definition, the higher resolution screen can fit more "stuff" on it than the smaller resolution screen can display (without scrolling).

 

Say you open a 1024 x 768 pic on a 1024 x 768 screen - it will fit.

But try and display it on 800 x 600 and it won't (without resizing)

 

So 2 screens at different resolutions can't be clones and fully visible.

 

Unless I'm having a mad moment :unsure:

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...