New acceleration architecture

Thomas Winischhofer thomas at
Tue Jun 28 10:43:45 PDT 2005

Hash: SHA1

Thomas Winischhofer wrote:
> Zack Rusin wrote:
>>>So lets get to the question everyone wants to ask and that is: how do I 
>>>get a usable xcompmgr with the new architecture? 
>>>1) include "exa.h" in your driver and load exa,
> Could I please have a (global) #define whether exa is available? (So
> that I can #include the file only if it's really there)
>>>2) use the code from XAA primitives for solid-fills and screentoscreen 
>>>copies to implement Exa's Solid and Copy hooks. So no real changes at 
>>>this point. 
>>>3) create an ExaDriverRec structure and fill in the accel hooks.
>>>4) call exaCardInit(exaDriver, memory_base, off_screen_base,
>>>	memory_size, offscreen_byte_align, offscreen_pitch,
>>>	flags, max_x, max_y); to let the system know what are the 
>>>capabilities of your card. This is really a convenience macro and you 
>>>may fill in all those individually if you prefer that.
> Would you mind commenting the structure elements a bit more please?
> What's offscreen_byte_align, offscreen_pitch, for example? Is
> "memorysize" including the screen area, or the offscreen area only? Is
> offscreenbase an offset, or a pointer cast into "unsigned long"? If you
> want to make transition/porting easy please don't make me read the
> entire code :)
>>>5) exaDriverInit(pScreen, exaDriver); once you connected yours hooks and 
>>>setup your card.
>>>6) replace xf86AllocateOffscreenArea with calls to ExaOffscreenAlloc
> What about a wrapper for AllocLinear, since this is what's mostly used?
> And what about the loader symbols (or is this loader-symbol stuff out
> since the dl? - I admit I haven't followed development in this area)

And what about some sort of equivalent to "RestoreAccelState" for dual
head? Or is this not needed for exa?

- --
Thomas Winischhofer
thomas AT winischhofer DOT net
twini AT xfree86 DOT org
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird -


More information about the xorg mailing list