Radeon driver in 1.4 breaks dualhead on Thinkpad with RV250
Martin Cracauer
cracauer at cons.org
Mon Feb 15 08:10:23 PST 2010
I previously reported this to the general Xorg list, but since then I
checked that things work normally with other X11 servers of the same
version and no ATI driver, so I thought I re-post here.
Basically, when I went and updated my RV250 equipped Thinkpad to Xorg
1.4.2 (from what identifies itself as 7.0.0), the internal LCD refuses
to work in dual-head with the VGA output. From the Xorg.0.log output
it looks like the Radeon/ATI driver incorrectly assumes it's talking
to DVI, not LVDS.
Cross-checking with the output when starting just the LCD
single-headed (which works fine) I see what I think is confirmation,
in that in that case RADEON(0) properly iterates through LVDS,
S-video, DVI and VGA-0.
In the dual-head config the driver insist on only trying DVI (the
computer doesn't have a DVI output plug) and subsequently only comes
up with a single screen, on the VGA, and the LCD stays blank.
I tried a couple of options, basically all I could find on google
related to lvds and monitor options but the problem persists.
It would be great if you could have a look and point me in the right
direction.
Here is the message I composed earlier with the Xorg.0.log ouput:
The chip is:
Radeon RV250 [Mobility FireGL 9000]
I use the ATI/Radeon driver. Dual-head via screenlayout.
The working Xorg version identified itself as:
X Window System Version 7.0.0
Release Date: 21 December 2005
X Protocol Version 11, Revision 0, Release 7.0
The broken update is:
X.Org X Server 1.4.2
Release Date: 11 June 2008
xorg.conf:
http://www.cons.org/xorg-problem201002/xorg.conf.1.vgaonly-but-at-right-res.txt
Log:
http://www.cons.org/xorg-problem201002/Xorg.0.log.1.vgaonly-but-at-right-res.txt
That is after I put in a couple options in an attempt to deal with the
problem. The original version working in xorg 7.0.0 is here:
http://www.cons.org/xorg-problem201002/xorg.conf.previously-working
I think these are the decisive lines:
(II) RADEON(0): Output LVDS using monitor section LVDS
(II) RADEON(0): BIOS provided dividers will be used.
(WW) RADEON(0): LVDS Info:
XRes: 1400, YRes: 1050, DotClock: 84960
HBlank: 200, HOverPlus: 72, HSyncWidth: 40
VBlank: 12, VOverPlus: 2, VSyncWidth: 1
[correct]
(II) RADEON(0): Output S-video has no monitor section
(II) RADEON(0): Default TV standard: NTSC
(II) RADEON(0): TV standards supported by chip: NTSC PAL NTSC-J
(II) RADEON(0): Port0:
Monitor -- AUTO
Connector -- DVI-D
DAC Type -- None
TMDS Type -- Internal
DDC Type -- 0x64
[...]
(II) RADEON(0): Output: DVI-0, Detected Monitor Type: 0
finished output detect: 0
[...]
II) RADEON(1): Output VGA-0 using monitor section VGA-0
(II) RADEON(1): I2C bus "VGA-0" initialized.
(II) RADEON(1): Output DVI-0 has no monitor section
(II) RADEON(1): DFP table revision: 3
(II) RADEON(1): I2C bus "DVI-0" initialized.
(II) RADEON(1): Output LVDS using monitor section LVDS
(II) RADEON(1): Panel ID string: SXGA+ Single (85MHz)
(II) RADEON(0): Panel Size from BIOS: 1400x1050
(II) RADEON(1): BIOS provided dividers will be used.
(WW) RADEON(1): LVDS Info:
XRes: 1400, YRes: 1050, DotClock: 84960
HBlank: 200, HOverPlus: 72, HSyncWidth: 40
VBlank: 12, VOverPlus: 2, VSyncWidth: 1
(II) RADEON(1): Output S-video has no monitor section
(II) RADEON(1): Default TV standard: NTSC
(II) RADEON(1): TV standards supported by chip: NTSC PAL NTSC-J
(II) RADEON(1): Port0:
Monitor -- AUTO
Connector -- VGA
DAC Type -- Primary
TMDS Type -- None
DDC Type -- 0x60
[...]
(II) RADEON(1): Output: VGA-0, Detected Monitor Type: 0
(II) RADEON(1): Found color CRT connected to primary DAC
[...]
(II) RADEON(1): Output VGA-0 connected
(II) RADEON(1): Output VGA-0 using initial mode 1368x768
The result is, as I said, that only VGA has output, at the correct
resultion. The internal LCD stays blank. There is only a
DISPLAY=:0.0.
To the best of my reading of the logfile my problem is that the driver
erroneously used DVI instead of LVDS and subsequently deleted that
screen. I toyed around with everything I could find in google about
this but I couldn't make the
(II) RADEON(0): Output: DVI-0, Detected Monitor Type: 0
go away nor make the LCD work.
If I just use the LCD section in ServerLayout the LCD works fine and
the VGA port mirrors the LCD output. Log:
http://www.cons.org/xorg-problem201002/Xorg.0.log.justonescreen.txt
Notice that it now has a line:
(II) RADEON(0): Output: LVDS, Detected Monitor Type: 0
Anyway...
So how do I force the first screen on LVDS in dual-head mode?
Thanks
Martin
P.S. while I here asking a question: while this worked fine under Xorg
7.0.0 I would like to force the server to come up dual-head even if
corrently nothing is connected to the VGA port. It didn't do that, if
VGA wasn't connected it just came up with the LCD.
--
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Martin Cracauer <cracauer at cons.org> http://www.cons.org/cracauer/
FreeBSD - where you want to go, today. http://www.freebsd.org/
More information about the xorg-driver-ati
mailing list