[argyllcms] Re: Hardware (?) problems: Matrox G550 Dual DVI

  • From: "Hal V. Engel" <hvengel@xxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Sun, 20 Jul 2008 12:59:43 -0700

On Sunday 20 July 2008 07:16:15 am Graeme Gill wrote:
> Volker Sauer wrote:
> >> It's been exacerbated by the fact that there is no official means
> >> for accessing the 2nd screen VideoLUTs when Xinerama is running,
> >> even though it is possible in some cases.
> >
> > In which cases is it possible? With which card/driver combinations?
>
> If it's real Xinerama, rather than a faked up Xinerama, it tends
> to work. 

This has been my experience as well.

> Xinerama makes multiple X11 screens look like one
> large screen by intercepting some of the X11 protocol to
> the multiple screens, but it doesn't intercept the XF86VidMode
> extension calls, so they are able to talk to the different
> underlying screens VideoLUTs. If the Xinerama extension is faked
> by the driver, it usually doesn't fake the multiple underlying
> screens, XF86VidMode can't access them.
 
For example the nvidia driver in twinview mode uses a faked Xinerama and you 
can not access both LUTs (only one global LUT for the virtual screen).  But 
with Xinerama correctly installed and configured with the same driver both 
LUTs can be manipulated.  These drivers have worked this way for at least the 
last two years.

I have used a G450 dual head card in the past and was able to update both LUTs 
in Xinerama.  But I also found that you definitely needed to have everything 
in xorg correctly installed and configured for this to work.  For example, you 
need to make sure that you have Option "xinerama" "yes" set in the 
"SeverFlags" section of your xorg.conf.  Without this you will get dual 
screens but they will appear as one virtual screen with one LUT.  Also on 
newer versions of xorg, which are modular, you must make sure that you have 
installed the xinerama extension or you will not get a fully functional dual 
screen system.  One of the things this affects is LUT loading.

The ATI drivers are in a state of flux right now.  As you found out there are 
closed drivers from the vendor and two open drivers.  The closed driver has 
long been a significant problem for users.  My understanding is that it has 
it's own API for LUT loading and you can build a special version of xcalib 
that knows about and uses this API.  That might fix the issues you were having 
with stability when loading the LUTs on this hardware.  But I have not used 
this driver and I can't comment on what your odds of success are.  If you are 
using this make sure you have the latest driver versions since it is my 
understanding that recent releases are much improved. 

The open source ATI drivers are so new that it does not surprise me at all 
that many users could not get them to work.  There is lots of work going on 
right now with the kernel, xorg and many of these open source video drivers 
(nouveau, radeon?? and Intel) to fix many issues including the LUT loading 
issues you are seeing.  I understand that the latest Intel drivers work 
nicely, are stable and support a broad range of Intel hardware but still have 
a few minor issues.   The Intel drivers are definitly at the leading edge of 
this trend and Intel has been supporting this effort for some time. 

The open source Radeon drivers are less mature but are making rapid progress 
in part because ATI/AMD is now working with the open source community by 
supplying device specifications, documentation and some code as well as direct 
technical support to the developers (things that they refused to do only about 
a year ago).  In fact those who are involved on the open source side say that 
ATI/AMD are currently doing more than Intel is to support the open source 
community.  My understanding is that with some hardware the open source 
radeon?? drivers are actaully working OK (I don't know about your hardware).   
Again you need to make sure that you use the very latest versions since these 
drivers are changing rapidly right now.

Nouveau is the open driver for nvidia hardware and it is the result of a large 
reverse engineering effort and has no support from nvidia corp.  Progress is 
slower than the Radeon driver efforts because of this (IE. lack of support 
from the hardware vendor) but this driver is supposed to work OK with some 
nvidia hardware (NV4x) and XRandR 1.2 support is supposed to be working.  2D 
is said to be working OK (in fact better than either the nv or nvidia drivers) 
but 3D is still problematic but is mostly working on some hardware (again 
NV4x).

We also need to remember that it was only a few years ago when multimonitor 
LUT loading did not work on Windows and the video card vendors didn't seem to 
care that their drivers didn't work correctly in this regard.  But user kept 
complaining about this and now we have this stuff working on Windows.  I know 
that both the open and closed source X11 video card driver developement teams 
are receiving lots of complaints from users about these issues and I know that 
many of them are working on fixing this.  But I can't predict how long it will 
take to fix across the board and older hardware like yours may take the 
longest to fix since these efforts tend to focus on newer hardware.  It 
appears that the open source community is responding more quickly and at least 
one driver now has workable XRandR 1.2 support in a usable driver (Intel).  
Others should follow over the next few months and I expect that by the end of 
the year that things will be much improved.

Hal

Other related posts: