Funding Radeon driver development

Peter Hutterer mailinglists at
Mon Apr 16 00:20:38 PDT 2007

On 16/04/2007, at 16:26 , Alex Deucher wrote:
> Not really.  Most hardware operates very similarly.  If you learn one,
> others make sense easily.  Most modern display hardware has one or
> more crtcs, several outputs (DACs, TMDS, LVDS, etc.) and some routing
> regs.  Almost all 2D engines operate in the same surface based manner:
> src and dst surfaces with x/y and w/h rectangles.  And finally fixed
> function 3D engines generally follow the same pattern too:  a small
> number of state and offset regs and a bunch of vertex and texture regs
> that more often than not, follow D3D or OpenGL formats.
> And it's not just crash and burn, you can look at the driver functions
> to see which regs do what.  For example in the radeon driver:
> RADEON*CRTC() - crtc1 regs (primary display controller; the primary  
> "head")
> RADEON*CRTC2() - crtc2 regs
> RADEON*PLL() - primary video clock
> RADEON*PLL2() - secondary video clock
> RADEON*DAC() - primary DAC
> RADEON*FP() - internal TMDS
> etc.
> * = Init or Restore or Save
> Init - set up the register state
> Restore - write the state back to the hardware
> Save - save state
> All that aside, what sort of documentation do you feel would help you
> understand this better?  A conceptual overview of how modern cards
> work?   A basic tutorial on setting a mode?

I have virtually no knowledge of video drivers but your last email  
was very interesting.
it took me about 2 minutes to read it and understand it. it would  
take me several hours to extrapolate this information from the bits  
and pieces of the code.

IMHO, we need a lot more of those explanations on the wiki.


Multi-Pointer X Server

More information about the xorg mailing list