[Xorg-driver-geode] [PATCH 0/4] Patch set explanation

Huang, FrankR FrankR.Huang at amd.com
Fri Jul 9 01:03:31 PDT 2010


The first patch is used when the mask is not zero. And the Src is one
pixel without the repeat parameter. Because the exaScratch.srcWidth and
exaScratch.srcHeight are shared between Mask and Src. So the src' width
and height are missing. The rendering region will be enlarged to whole
mask region, not one pixel rendering.

The second patch is used for PictOpSrc rendering fix, the black region
will be added if the rendering region is bigger than the source picture.
Although it is not met by us, I am very happy to do that ahead. At the
same time, a new variable maskrepeat is added for recording the Mask
repeat variable.

The third patch is used to fix the Progressbar/Scrollbar/Button
misrendering issue. This patch fix the PictOpOver operation in our
driver.
And because the lx_do_composite_mask_opover uses the off-screen FB
region(256KB fixed), so splitting the big mask into small ones.

The fourtch patch is used to fix the add-on green region in file
browser. It is because the srcX and srcY is out of the source picture
that leads wrong rendering in PictOpOver. And add code for srcX and srcY
coordinate calculation(same as maskX and maskY).


After these four patches, I still have some questions to ask:
1)Rotation. Seems in this condition, the srcX and srcY coordinate
calculation is not needed. I want to check with Janothon about this and
check the code.

2)Other rendering bugs. Still I can see some small rendering bug using
HW method. Need more feedback from users

3)Mask and Src coordinate is negative or bigger than the region. I add
the FIXME in the patch

4)Only PictOpClear, PictOpSrc and PictOpOver are taken care of, Still
other ops.


Based on the advice of Mart, I turn to the glyph rendering low
performance issue(X11perf) now.

Thanks,
Frank 



More information about the Xorg-driver-geode mailing list