Present Perfect


Picture Gallery
Present Perfect

Xorg contributions

Filed under: Hacking — Thomas @ 11:57


More than half a year ago I got a new computer for the living room, as quiet as possible, with an ATI 2400 based card. It took some tweaking to get X working, including using the "new" radeonhd driver, and learning enough about how XRandr works to cook up a simple one-line patch to get my card detected correctly and allow me to use multiple screens (I wanted to write Xinerama but apparently that's not the cool word to use anymore).

An X driver patch is only one step removed on the geek ladder from kernel patching, right ?

Anyway, as a good open source citizen I submitted this patch in the correct location, got some followup questions to try my card with HDMI attached, lugged my computer across the room to the TV, did the testing, sent the info, and assumed my patch would make it in, and forgot all about it.

Yesterday I did an upgrade, got a new X, and restarted, and I only had one screen working after booting. After scratching my had a little and relearning xrandr, I vaguely recalled me doing this patch half a year before, and checked if it was still valid. Seems it didn't land yet, sigh.

I know we're all busy in open source, but a one line patch verified by hand by someone owning the card to work, should be a no-brainer, right ? I'll repoke the relevant people and get it in this time.

I do have to say though it's definitely an improvement to have the whole X tree be split up, and to be able to take just one module, find a problem, create a one-line patch, and rebuild just the rpm package for that driver, instead of having to rebuild all of X for a simple change.

For those of you who happen to have Fedora 9 and the exact same card (GeCube ATI Radeon HD 2400Pro, with one VGA, one DVI, and one HDMI output), you can get the package from my Fedora 9 repository.


  1. Uhm, why were you using the weird radeonhd driver instead of the normal radeon driver, which a) has more features, and b) actually works?

    Comment by daniels — 2008-12-28 @ 14:22

  2. @daniels: The radeon driver doesn’t allow me to do multihead properly. In fact, xrandr -q lists DVI-0 as connected (good, that’s my main screen) and a HDMI-0 as connected (bad, I don’t have an HMDI connector on my card and so there’s definately nothing connected to it). It fails to detect that the card has a VGA output and that in fact that’s where the monitor is connected to. So I have no way of enabling the second screen. If I foolishly pretend that HDMI is VGA and set the HDMI output to the right of my main screen, then ‘something’ happens – the second screen goes from ‘no signal input’ to ‘signal out of range’. But still doesn’t help me much.

    Comment by Thomas — 2008-12-28 @ 19:23

  3. try the latest git tree for radeon, I fixed this issue for Red Hat customer a month or so ago.

    Comment by Dave AIrlie — 2008-12-28 @ 21:51

  4. @thomasvs: Wow, if only we had some kind of bug tracking system. :) The radeon guys are pretty responsive, just file a nice descriptive bug with your Xorg.0.log attached and it’ll get fixed up reasonably quickly, I’m sure.

    Comment by daniels — 2008-12-29 @ 02:24

  5. I was using radeonhd until I actually tried to contribute by filling a bug report. Those guys are insane.

    If the radeon driver isn’t working for you I recommend you to send a bug report for that. The are also very responsive in the #radeon IRC channel.

    Comment by Felipe Contreras — 2008-12-30 @ 08:55

RSS feed for comments on this post. TrackBack URL

Leave a comment