Dual-head config broke with update to 1.4.2

Alex Deucher alexdeucher at gmail.com
Mon Feb 15 15:16:25 PST 2010

On Mon, Feb 15, 2010 at 5:44 PM, Martin Cracauer <cracauer at cons.org> wrote:
> Alex Deucher wrote on Mon, Feb 15, 2010 at 05:35:14PM -0500:
>> On Mon, Feb 15, 2010 at 5:24 PM, Martin Cracauer <cracauer at cons.org> wrote:
>> > Alex Deucher wrote on Mon, Feb 15, 2010 at 11:27:39AM -0500:
>> >> On Mon, Feb 15, 2010 at 11:14 AM, Martin Cracauer <cracauer at cons.org> wrote:
>> >> > Alex Deucher wrote on Mon, Feb 15, 2010 at 10:52:44AM -0500:
>> >> >> On Sun, Feb 14, 2010 at 6:51 PM, Martin Cracauer <cracauer at cons.org> wrote:
>> >> >> > I have a Thinkpad T41 with an internal LCD and a VGA out, using an
>> >> >> > older Radeon chip and the radeon Xorg driver. ?I have a display at the
>> >> >> > VGA out and have configured dual-head via ServerLayout. ?This broke
>> >> >> > with an update to Xorg 1.4.2.
>> >> >> >
>> >> >> > Short version:
>> >> >> > - I seem to select the wrong output between LVDS (LCD), VGA, DVI and
>> >> >> > ?TV. ?Instead of LVDS and VGA and I seem to get the (non-existent)
>> >> >> > ?DVI and VGA. ?As a result, when X11 is up it seems that screen-0
>> >> >> > ?disappeared and screen-1 (VGA) is now DISPLAY=:0.0. ?There is no
>> >> >> > ?:0.1.
>> >> > [...]
>> >> >> Your best bet is to switch to using xrandr to configure your card:
>> >> >> http://wiki.debian.org/XStrikeForce/HowToRandR12
>> >> >> It will let you dynamically switch between single and multi-head.
>> >> >
>> >> > No, that doesn't work for me. ?I need classic dualhead with separate
>> >> > $DISPLAY so that I have separate virtual desktop switching on each.
>> >> >
>> >> > I have seen that this works fine for the same Xorg version on other
>> >> > computers not using the Radeon/ATI driver.
>> >> >
>> >> > So I reported it to the ATI driver list (assuming my subscription went
>> >> > through).
>> >>
>> >> If you want to keep using zaphod mode, your best bet it to continue
>> >> using the old version of the driver. ?New features like support for
>> >> more than two outputs cause problems with zaphod mode.
>> >
>> > But I don't want more than two outputs.
>> Most people want access to all the outputs supported by their cards.
> At the same time? I don't understand.

Yes.  some people use their cards in a docking station and want to use
DVI + VGA.  Others want to use DVI + LVDS, others want to use LVDS +
TV, etc.  With xrandr 1.2+, you can switch between outputs and
single/dual head on the fly.  The downside is you don't get the
independent X screens.

> Anyway, I think it should be rated as a bug that the Radeon drivers
> triy, by default in a laptop, to use the DVI port that is only present
> in the docking station.  Instead of the LCD panel built into the
> laptop.

The thing is we don't know what's on the docking station and what's
not.  Every OEM sets up their systems differently.

> It is still not clear to me whether I can use the old dual-screen
> setup at all.  Do I just have a config problem or is this entirely
> disabled in Xorg now?

You can use it, but you will get whatever the first 2 connectors are
which are DVI and VGA since there is currently no way of picking which
connectors are associated with each instance of the driver for zaphod

>> > All I want is my working pre-1.4.x setup with internal LCD and VGA
>> > back. ?I hope this is a misunderstanding. ?I don't want any new
>> > feature. ?Just my two old outputs just the way they were until I
>> > upgraded Xorg.
>> >
>> > In case this is actually broken now, can I use an old driver in the
>> > 1.4.x Xorg server or do I have to downgrade the whole server?
>> You should be able to use the pre-xrandr1.2 driver (xf86-video-ati
>> 6.6.3) with xserver 1.4.x.
> Thanks.
>> > so easily. ?Apart from the fact that it worked until recently with
>> > your ATI driver and continues to work with other card's drivers the
>> > model of work and setup is entirely different between classic
>> > dual-head with two screens and xrandr. ?There's no easy way for me to
>> > switch to any single-display dual-screen setup.
>> What other recent open source drivers does it work with?  Most, if not
>> all, xrandr 1.2 capable open source drivers have dropped zaphod
>> support.
> The NVidia drivers in the same X11 server and I'm pretty sure another
> notebook here with Intel G45 does it fine.  I can't check right now
> which Xorg version that one has.

The intel driver has definitely dropped zaphod support.  You are
likely using an older version of the driver that still supported it.

> So what you are saying is that the official position of the Xorg
> organization is that there will be no support for dual-head that has
> separate screens anymore?

No.  I'm saying that very few people use it and there are not enough
developer resources to make sure it stays working in all cases.  Both
the xserver and driver sides break from time to time.

> That there will be no way to have different virtual desktop switching
> on the two screens? Just Microsoft Windows style big span screen
> support?

It can be done with zephyr or vnc I think.

>> I think radeon is the only one that even attempts to
>> continue to support it anymore.  It still works it just doesn't
>> provide a way to select which connectors you want to associate with
>> each instance of the driver.  The number of zaphod users is relatively
>> small and the amount of developer resources to support it is
>> relatively high.  More people want to be able to use and dynamically
>> switch between all their connectors than want to use zapod.
> OK, but then as I said above, if the user can't pick the outputs it
> seems a little counter-intuitive to select VGA and the DVI in the
> not-present docking station as opposed to the Laptop's own LCD panel
> which is present.

The current code is was an attempt to continue to support zaphod mode
when xrandr support got added it works for most users.  Some zaphod
users may want DVI + VGA, others want LVDS + DVI, others want LVDS +
VGA.  Unfortunately, in some cases, like yours, it doesn't do the
right thing.  I'm happy to accept any patches to make it work better,
but I don't have the time to put a lot of effort into it myself.

> Can I hack this up in the source? If I kill any trace of the DVI port
> would it come up with LCD and VGA?

Yes.  you could skip the enumeration of the DVI and TV outputs in
radeon_bios.c, however, then you couldn't use those outputs with
xrandr if you wanted to do that rather than use zaphod.


> Martin
> --
> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
> 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 mailing list