R128 Dualhead: WORKING!

Alex Deucher alexdeucher at gmail.com
Wed Nov 10 06:45:41 PST 2004


Update:
http://www.botchco.com/alex/r128/r128dh.diff

Corruption on crtc2 is now fixed.  thanks to Aymeric Vincent for the clues that
led to the fix (bad shift in dda2_on_off in InitDDA2Registers()).  The only
problem that remains now is that SwitchMode() doesn't work right on crtc2.  The
mode on crtc2 gets set correctly on server startup and by switching to another
VT and back, but not when using switchmode().  When you use switchmode() crtc2
ends up with these very odd modes or modes that are out of sync. 
However they seem to be programmed correctly, because if you switch to
one of these modes and then switch to another VT and back the proper
mode gets set on crtc2.  I can't seem to figure out why.  I tried
resetting the modes on both crtc2 and crtc1 when switchmode() is
called on crtc2; I tried several different mode restore orderings, and
several other things (turning off the dac, unsourcing crtc2, etc.),
but none had any effect: same behavior.  Ideas welcome.

Thanks,

Alex


P.S. Sorry, I haven't posted any new binaries yet.  The ones on my site are old.

On Sun, 7 Nov 2004 03:25:06 -0500, Alex Deucher <alexdeucher at gmail.com> wrote:
> I finally got dualhead working on r128.  It still needs some cleanup
> and there are a few bugs I haven't worked out yet:
> 
> - modes on crtc2: the right side flickers and has some artifacts
> - doesn't play well with the bios: if you have both the crt and the
> lcd active when you start X in dualhead mode, both heads will flicker
> horribly.  Not sure why yet.  workaround is to switch to lcd only
> before starting dualhead X.
> 
> Other than that it works fine in basic testing.
> 
> Patch available here:
> http://freedesktop.org/bugzilla/show_bug.cgi?id=1760
> or here:
> http://www.botchco.com/alex/r128/r128dh.diff
> 
> Feedback and bug fixes welcome.  Once this is fixed up I'll work on
> adding mergedfb support.
> Please post results/patches here:
> http://freedesktop.org/bugzilla/show_bug.cgi?id=1760
> 
> x86 xorg cvs binaries:
> http://www.botchco.com/alex/r128/ati_drv.o
> http://www.botchco.com/alex/r128/r128_drv.o
> (you need both)
> 
> Alex
>



More information about the xorg mailing list