I have been spending quite a few hours rewriting the aging xf86-video-r128 (ATI Technologies RAGE 128 DDX) code this week. Unfortunately, portions of the code are written in a way that makes it hard to separate EXA and XAA acceleration initialization. Furthermore, it supports the virtually deprecated DRI1 as well. The initialization of these items (EXA, XAA, and DRI1) were written in a way that is very confusing and fragile ways that it is taking a lot of time to carefully untangle them.
What I am trying to do here is to untangle and isolate the initialization of these standards so that I can disable them without causing issues. Furthermore, by implementing the initialization process this way, it will later make it easier to add DRI2 and KMS support down the road.
For now, I am trying to untangle the code without breaking the existing code. I expect this to continue for several weeks.