Funding Radeon driver development

David Nusinow dnusinow at speakeasy.net
Mon Apr 16 07:11:14 PDT 2007


On Mon, Apr 16, 2007 at 04:50:38PM +0930, Peter Hutterer wrote:
> 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.

I agree with Peter. Perhaps tutorials on the wiki would be helpful. If you
like, I can convert what you write and put them in to the xorg-docs package
as well if it'd be helpful.

 - David Nusinow



More information about the xorg mailing list