October 03, 2006

Getting Jiggy with my dual monitors

Well, my dual monitor setup seems to be working finally. Not sure exactly what I did to make it work, though, as I flailed about pretty wildly for awhile. I upgraded my X.org server, as I think PC-BSD 1.2 is one release behind. I've also tweaked my xorg.conf file to set both displays to have the same resolution, thinking maybe the mismatch resolutions was making it hard on the software. I'm not sure what exactly, but it is working for me now. Here's my current xorg.conf:

Section "ServerLayout"
	Identifier     "Radeon Dual Monitor"
	Screen      0  "Screen0" 0 0
	Screen         "Screen1" LeftOf "Screen0"
	InputDevice    "Mouse0" "CorePointer"
	InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
	RgbPath      "/usr/X11R6/lib/X11/rgb"
	ModulePath   "/usr/X11R6/lib/modules"
	FontPath     "/usr/X11R6/lib/X11/fonts/75dpi"
	FontPath     "/usr/X11R6/lib/X11/fonts/TTF"
	FontPath     "/usr/X11R6/lib/X11/fonts/TrueType"
	FontPath     "/usr/X11R6/lib/X11/fonts/URW"
#	FontPath     "/usr/X11R6/lib/X11/fonts/ae_fonts1"
#	FontPath     "/usr/X11R6/lib/X11/fonts/azeri"
	FontPath     "/usr/X11R6/lib/X11/fonts/bitstream-vera"
	FontPath     "/usr/X11R6/lib/X11/fonts/dejavu"
#	FontPath     "/usr/X11R6/lib/X11/fonts/encodings"
#	FontPath     "/usr/X11R6/lib/X11/fonts/fonts.cache-1"
	FontPath     "/usr/X11R6/lib/X11/fonts/freefonts"
#	FontPath     "/usr/X11R6/lib/X11/fonts/indic"
	FontPath     "/usr/X11R6/lib/X11/fonts/local"
#	FontPath     "/usr/X11R6/lib/X11/fonts/luxi"
	FontPath     "/usr/X11R6/lib/X11/fonts/misc"
	FontPath     "/usr/X11R6/lib/X11/fonts/omega"
	FontPath     "/usr/X11R6/lib/X11/fonts/URW"
#	FontPath     "/usr/X11R6/lib/X11/fonts/util"
EndSection


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

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

Section "InputDevice"
	Identifier  "Mouse0"
	Driver      "mouse"
	Option	    "Protocol" "auto"
	Option	    "Device" "/dev/sysmouse"
	Option	    "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
	#DisplaySize	  280   210	# mm
	Identifier   "LCD-Mon"
	VendorName   "PTS"
	ModelName    "PZ456"
 ### Comment all HorizSync and VertSync values to use DDC:
#	HorizSync    30.0 - 60.0
	VertRefresh  61.0 - 75.0
	Option	    "DPMS"
EndSection

Section "Monitor"
	#DisplaySize	  350 260	# mm
	Identifier   "CRT-Mon"
	VendorName   "SAM"
	ModelName    "SyncMaster"
 ### Comment all HorizSync and VertSync values to use DDC:
	HorizSync    30.0 - 96.0
	VertRefresh  50.0 - 160.0
	Option	    "DPMS"
EndSection

Section "Device"
	Identifier  "ATI Port 1"
	Driver      "ati"
	VendorName  "ATI Technologies Inc"
	BoardName   "R480 [Radeon X850Pro]"
	BusID       "PCI:1:0:0"

	# MergedFB options
	Option     "MergedFB" "True"
        Option     "CRT2Position"       "RightOf"
#        Option     "MetaModes" "2048x768-2048x768"
        Option     "RenderAccel" "True"        	# []
        Option     "DMAForXv" "True"           	# []

#	Option     "EnablePageFlip"     "True"
#        Option     "AGPMode"   "4"
#	Option     "AGPFastWrite"  "True"
#	Option     "MergedXineramaCRT2IsScreen0" "True"
#	Option "Xinerama" "True"
EndSection

Section "Device"
	Identifier  "ATI Port 2"
	Driver      "ati"
	VendorName  "ATI Technologies Inc"
	BoardName   "R480 [Radeon X850Pro]"
	BusID       "PCI:1:0:1"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "ATI Port 2"
	Monitor    "CRT-Mon"
	DefaultDepth 24
        SubSection "Display" 
                 Depth     24
		Virtual 2048 768
#                 Modes   "1280x1024" "1024x768" "800x600" 
                 Modes   "1024x768" "800x600" 
        EndSubSection 
EndSection

Section "Screen"
	Identifier "Screen1"
	Device     "ATI Port 1"
	Monitor    "LCD-Mon"
	DefaultDepth 24
        SubSection "Display" 
                Depth     24
		Virtual 2048 768
                Modes   "1024x768" "800x600" 
        EndSubSection 
EndSection

# Make it so other users can use DRI
Section "DRI"
    Mode 0666
EndSection

Trevor was kind enough to post his working xorg.conf, although it confuses me because it doesn't have two "Screen" sections. I wonder if it is because his displays are identical 19" Samsungs? Anyway, here's his working xorg.conf:

Section "ServerLayout"
	Identifier     "X.org Configured"
	Screen         0  "Screen0" 0 0
	InputDevice    "Mouse0" "CorePointer"
	InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
	RgbPath      "/usr/X11R6/lib/X11/rgb"
	ModulePath   "/usr/X11R6/lib/modules"
	FontPath     "/usr/X11R6/lib/X11/fonts/webfonts/"
	FontPath     "/usr/X11R6/lib/X11/fonts/urwfonts-ttf/"
	FontPath     "/usr/X11R6/lib/X11/fonts/URW/"
	FontPath     "/usr/X11R6/lib/X11/fonts/misc/"
	FontPath     "/usr/X11R6/lib/X11/fonts/TTF/"
	FontPath     "/usr/X11R6/lib/X11/fonts/Type1/"
	FontPath     "/usr/X11R6/lib/X11/fonts/100dpi/"
EndSection

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

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

Section "InputDevice"
	Identifier  "Mouse0"
	Driver      "mouse"
	Option	    "Protocol" "auto"
	Option	    "Device" "/dev/psm0"
	Option	    "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "SAM"
	ModelName    "SyncMaster"
	Option	    "DPMS"
EndSection

Section "Device"
	Identifier  "Card0"
	Driver      "ati"
	VendorName  "ATI Technologies Inc"
	BoardName   "RV350 AS [Radeon 9550]"
	BusID       "PCI:1:0:0"

        Option     "AGPMode" "4"            
        # This MAKEM BIG LOCKUP
#        Option     "AGPFastWrite" "True"       	# []
        Option     "MergedDPI" "100 100"       	# []
        Option     "MergedFB" "True"          	# []
        Option     "CRT2Position" "RightOf"    	# []
        Option     "MetaModes" "1280x1024-1280x1024"
        Option     "RenderAccel" "True"        	# []
        Option     "DMAForXv" "True"           	# []
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
        DefaultDepth 24
	SubSection "Display"
		Depth     24
                Modes "1280x1024"
                Virtual 2560 1024
	EndSubSection
EndSection

It was the first I had heard of the MetaModes option, so I played with that a bit. You specify the resolutions for the two displays, so maybe that's how his works. I didn't know that and that's why mine is commented out. It should be:

        Option     "MetaModes" "1024x768-1024x768"

Although my next step will be to bump the resolution for my 19in monitor to be 1280x1024, so the line will look like:

        Option     "MetaModes" "1280x1024-1024x768"

I also duplicated the "RenderAccel" and "DMAForXv" options, although I'm not clear on what they do. But it has bee pretty solid so far, so I think I have a working baseline xorg.conf. But am I happy enough to just leave it well enough alone? Noooooooooooo...


del.icio.us | Digg it | Furl | Yahoo MyWeb | Create Social Bookmark Links


Posted by jdarnold at 08:38 AM | TrackBack
Comments

I think you need one of these </i>

Posted by: Michael on October 3, 2006 10:14 AM

Thanks! The xorg.conf file had a <i> in it, sending it off into italics.

Posted by: Jonathan on October 3, 2006 10:25 AM

Post a comment

(Javascript required)

(Not published)

Comments: (you may use HTML tags for style)