Rotate trouble on r300 (was: Re: XRandR rotate support HW rotate or not?)

Xavier Bestel xavier.bestel at free.fr
Fri Oct 31 11:17:54 PDT 2008


Le vendredi 31 octobre 2008 à 09:34 -0400, Alex Deucher a écrit :
> 2008/10/31  <FloraGui at viatech.com.cn>:
> > Dear Keith Packard:
> >
> >       I have recently study RandR,  I found if we use RandR rotate no matter
> > static rotate or dynamic rotate,we always use RandR's own software rotate.
> >
> >       We draw the screen desktop very slow,  how can we support HW rotate
> > using RandR or it is a RandR limitation, if it is, RandR1.3 has support HW
> > rotate or not ?
> 
> Your driver needs to implement the EXA composite hook with support for
> transforms and the randr 1.2 shadow_create/allocate/destroy hooks.
> The basic idea is that when you elect to rotate your screen, a shadow
> framebuffer is allocated in the randr core code calling the driver
> shadow* hooks to allocate a buffer for the rotated screen.  The crtc
> is then pointed to this shadow buffer.  The randr core code then uses
> the driver's EXA composite hook to transform the regions that are
> damaged and display them in the shadow buffer.  Both the Intel driver
> and the radeon driver implement this.

BTW, does anyone know why rotating the screen doesn't play well with
compiz on an r300 ? The screen looks garbled (like if the framebuffer
wasn't rotated so the pitch is all wrong), every second image (e.g. when
you move the cube slowly, one image is perfect, the next one is
garbled).

	Xav





More information about the xorg mailing list