New acceleration architecture
thomas at winischhofer.net
Tue Jun 28 10:43:45 PDT 2005
-----BEGIN PGP SIGNED MESSAGE-----
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
>>>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 AT winischhofer DOT net http://www.winischhofer.net/
twini AT xfree86 DOT org
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
-----END PGP SIGNATURE-----
More information about the xorg