[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: re-probing DDC/EDID



On Sun, 2009-05-24 at 22:11 -0700, perryh_(_at_)_pluto_(_dot_)_rain_(_dot_)_com wrote:
> Robert Noland <rnoland_(_at_)_FreeBSD_(_dot_)_org> wrote:
> > On Fri, 2009-05-22 at 15:18 -0700, perryh_(_at_)_pluto_(_dot_)_rain_(_dot_)_com wrote:
> > > Robert Noland <rnoland_(_at_)_FreeBSD_(_dot_)_org> wrote:
> > > > On Thu, 2009-05-21 at 23:38 -0700, perryh_(_at_)_pluto_(_dot_)_rain_(_dot_)_com wrote:
> > > > > Is there any way to re-probe the monitor's DDC/EDID while the
> > > > > X server is running?
> > > ...
> > > > xrandr?
> > >
> > > That seems to return the set of resolutions probed at startup
> > > (i.e. those of the old monitor):
> >
> > what driver are you using?
> 
> ATI, I think.  I'll append xorg.conf (with comments deleted,
> to reduce its size a bit).
> 
> > Radeon or Intel *should* detect a changed display I think.
> > You really shouldn't need to set modelines anymore.
> 
> When setting up the previous monitor -- and the one before that --
> it seemed necessary to remove unusable modelines from xorg.conf,
> else CtrlAlt+ and CtrlAlt- would set modes that produced a messed-
> up display or a blank screen.  (The monitors' DDC reports -- or
> -configure's interpretation of them -- apparently included modes
> that would not actually work.)
> 
> > Do keep in mind that since the front buffer is created at startup
> > time and can't currently be re-sized on the fly that you need to
> > set the virtual screen size to the maximum that you intend to use
> > or that will be the highest mode used (and displayed by xrandr).
> 
> I had expected something along those lines, which is why I didn't
> expect to be able to _use_ 1920x1200 without restarting, but I'd
> still expect to be able to rerun the probe of the monitor and get
> the new report -- including the modelines that would have been
> generated if I had been running that probe "for real".

Ok, I still think that you are going about this the wrong way in a randr
based world...  If you look at your xorg log, you should see the modes
that are probed and calculated for the display.  I think that you should
remove all the modelines from the Monitor section.  The Modes listed in
the screen section I think is ok, but I'm not sure how useful it really
is.  If you add a Virtual 1920 1200 line to the Display section, then
your initial front buffer will be sized large enough to use the new
mode.  (You are probably only using Depth 24)  See man xorg.conf.

If randr is producing invalid modes, then either the display is quirky
and not giving the right data to the ddx driver or it's a bug that needs
to be looked at upstream.

robert.

> 
> ============================ 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/misc/"
> 	FontPath     "/usr/X11R6/lib/X11/fonts/TTF/"
> 	FontPath     "/usr/X11R6/lib/X11/fonts/Type1/"
> 	FontPath     "/usr/X11R6/lib/X11/fonts/CID/"
> 	FontPath     "/usr/X11R6/lib/X11/fonts/75dpi/"
> 	FontPath     "/usr/X11R6/lib/X11/fonts/100dpi/"
> EndSection
> 
> Section "Module"
> 	Load  "dbe"
> 	Load  "dri"
> 	Load  "extmod"
> 	Load  "glx"
> 	Load  "record"
> 	Load  "xtrap"
> 	Load  "freetype"
> 	Load  "type1"
> 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   "BTC"
> 	ModelName    "LM-1702"
> 	Modeline "1280x1024"  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync
> 	Modeline "1024x768"    65.00  1024 1048 1184 1344   768  771  777  806 -hsync -vsync
> 	Modeline  "800x600"    40.00   800  840  968 1056   600  601  605  628 +hsync +vsync
> 	Modeline  "640x480"    25.20   640  656  752  800   480  490  492  525 -hsync -vsync
> 	Option	    "DPMS"
> EndSection
> 
> Section "Device"
> 	Identifier  "Card0"
> 	Driver      "ati"
> 	VendorName  "ATI"
> 	BoardName   "3D Rage Pro AGP 1X/2X"
> 	ChipSet     "ati"
> 	ChipId      0x4742
> 	ChipRev     0x5c
> 	BusID       "PCI:1:0:0"
> EndSection
> 
> Section "Screen"
> 	Identifier "Screen0"
> 	Device     "Card0"
> 	Monitor    "Monitor0"
> 	SubSection "Display"
> 		Viewport   0 0
> 		Depth     1
> 		Modes "1280x1024" "1024x768" "800x600" "640x480"
> 	EndSubSection
> 	SubSection "Display"
> 		Viewport   0 0
> 		Depth     4
> 		Modes "1280x1024" "1024x768" "800x600" "640x480"
> 	EndSubSection
> 	SubSection "Display"
> 		Viewport   0 0
> 		Depth     8
> 		Modes "1280x1024" "1024x768" "800x600" "640x480"
> 	EndSubSection
> 	SubSection "Display"
> 		Viewport   0 0
> 		Depth     15
> 		Modes "1280x1024" "1024x768" "800x600" "640x480"
> 	EndSubSection
> 	SubSection "Display"
> 		Viewport   0 0
> 		Depth     16
> 		Modes "1280x1024" "1024x768" "800x600" "640x480"
> 	EndSubSection
> 	SubSection "Display"
> 		Viewport   0 0
> 		Depth     24
> 		Modes "1280x1024" "1024x768" "800x600" "640x480"
> 	EndSubSection
> EndSection
-- 
Robert Noland <rnoland_(_at_)_FreeBSD_(_dot_)_org>
FreeBSD

Attachment: signature.asc
Description: This is a digitally signed message part


Visit your host, monkey.org