Radeon X300, radeonfb, dual head - conclusion

Hans-Jürgen Koch hjk at linutronix.de
Fri Apr 20 14:54:41 PDT 2007

I'd like to bring this thread to a preliminary conclusion. Today I experimented a little more,
with the following results:

Short summary:

We're talking about this card:

01:00.0 VGA compatible controller: ATI Technologies Inc RV370 5B60 [Radeon X300 (PCIE)]

This is a MSI RX300HM, with an X300SE and 128MB RAM. The card has one DVI-I, one VGA, and
one S-Video connector. I have two NEC MultiSync LCD2070WNX 20" monitors (1680x1050 each).
The monitors have both VGA and DVI-D inputs. Computer has a Core2Duo at 1.86GHz, Intel ICH8
chipset, 1GB RAM.

X server is xserver-xorg from Debian unstable. Kernel is vanilla 2.6.21-rc7.
X server is configured for mergedfb to achieve a 3360x1050 desktop across the two monitors.
All tests were performed with KDE 3.5.5 from Debian unstable.


1.) The monitor connected to the DVI port MUST use a DVI cable. Connecting it with a
DVI-VGA adapter does not work. Using an adapter causes the same picture being displayed
on both monitors. This might only happen with this special card.

2.) Using DRM does NOT work. Compiling radeon drm as a kernel module and configuring
dri in xorg.conf leads to fine 3D acceleration (glxgears -printfps says 1400fps), but
only on the first monitor. The second monitor always shows a black image. It is probably
a correct 1680x1050 video signal (monitor doesn't complain), but only black.
If I compile the kernel without drm support, and delete the dri lines in xorg.conf,
I have a working dual head setup with Pseudo-Xinerama. 

3.) Using radeonfb does NOT work. I tried to compile it into the kernel to have a 
framebuffer console at boot time, but that's not possible. I noticed two effects:
3.1.) if drm is also enabled, the X server hangs at 100% CPU with black screens on both
      monitors. Framebuffer console before X starts is OK.
3.2.) if drm is not enabled, the X server starts, but with a garbled screen that is
      hardly useable. Framebuffer console before X starts is fine.

4.) Using vesafb instead of radeonfb works. I have a framebuffer console, and X works 
as expected. No DRI, of course (glxgears -printfps says 900fps).

I'd really like to see these issues fixed. I'm willing and able to help on the kernel
side of the story, although I never looked into fb or drm code yet. I won't compile
X servers, though.

Any comments?
Any ideas how we could proceed?



More information about the xorg mailing list