Re: [patch] exa: fix pitch handling in ModifyPixmapHeader

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2008.04.18 14:03:50 +0200, Tilman Sauerbeck wrote:
> Unfortunately I cannot reproduce #15509 on my i945 sofar. I tried the
> master branches of xserver.git and intel.git with a framebuffer of
> 2560x2560 pixels, and rotation still worked fine after I connected the
> VGA output and extended my desktop to it.

Try to set virtual height <= 2048. Current intel driver will disable
accel if virtualY's larger than 2048, which I think a little overkill.
As hw at least supports 2D blit larger than that, and disable smaller
size pixmap acceleration totally. I don't know much of why it is, Eric?

I think We'd just fix exa to handle driver's limits and alignement
correctly, and let it pass down those can be done in hw. I have pushed
pitch check patch in intel driver on 2.3-branch, although we might fix
left issue later, but just check them for safe now.

> diff --git a/exa/exa.c b/exa/exa.c
> index 81dc3e2..5014c0f 100644
> --- a/exa/exa.c
> +++ b/exa/exa.c
> @@ -385,6 +389,9 @@ exaModifyPixmapHeader(PixmapPtr pPixmap, int width, int height, int depth,
>  
>      if (pExaPixmap) {
>  	pExaPixmap->sys_ptr = pPixData;
> +        pExaPixmap->sys_pitch = devKind;
> +

We'd better check (devKind > 0). 

> +        exaSetFbPitch(pExaScr, pExaPixmap, width, height, bitsPerPixel);
>  
>          exaSetAccelBlock(pExaScr, pExaPixmap,
>                           width, height, bitsPerPixel);
_______________________________________________
xorg mailing list
xorg@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/xorg

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [X Forum]     [Intel Graphics]     [AMD Graphics]     [Nouveau Driver]     [XFree86]     [XFree86 Newbie]     [IETF Annouce]     [Security]     [Fontconfig]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Video for Linux]     [Linux RAID]

  Powered by Linux