[Xorg-driver-geode] Rendering issue update

Huang, FrankR FrankR.Huang at amd.com
Wed May 19 21:04:44 PDT 2010


Hi,all

 

            Just as the last mail mentioned, our geode driver has problem on SRC rendering operation.  So do other rendering operations¡­

            I modify the code and upload a patch for tests(fix the SRC operation). All feedback are welcome. The best thing is that I am beginning on modifying our code:-). That encourages us to go on!

            I¡¯ll test the other rendering operation and let you know my new update.

 

Thanks,

Frank

 

________________________________

From: xorg-driver-geode-bounces+frankr.huang=amd.com at lists.x.org [mailto:xorg-driver-geode-bounces+frankr.huang=amd.com at lists.x.org] On Behalf Of Huang, FrankR
Sent: 2010Äê5ÔÂ12ÈÕ 17:13
To: xorg-driver-geode at lists.x.org
Subject: [Xorg-driver-geode] Rendering issue update

 

Hi, all

            

            For the rendering issue, I have written a simple Xlib program that triggers geode HW rendering( lx_do_composite() ). What the application does is as below :

1)       It creates a 100x100 window (color: white) for the destination picture

2)       It creates a picture of 1x1 with the format PICT_x8r8g8b8(color: green) for the source picture, the source picture has the repeat attribute.

3)       It creates a picture of 20x20 with the format PICT_a8(only alpha value to do alpha blend) for the mask picture.

4)       Call the XRenderComposite() to trigger. The dst_x and dst_y are all 50, width and height are all 40. the mask_x and mask_y are all 5. So the alpha blend green region is 15x15

See the result of Radeon_X1200.png. It is the standard result. Run on my RS690/SB600 workstation. The rending function FUNC_NAME(RadeonComposite) on X1200 will be called. 

 

            Because our driver can only support limit rendering, I choose this test case. This will use lx_do_composite() in the geode LX. I don¡¯t know why our driver must require the pSrc->width and pSrc->height with value of 1 in lx_prepare_composite(). I follow this requirement in this application. You can see the HW rendering result with the picture of Geode_lx.png on geode platform. Apparently, there must be some HW rendinging bug in our driver. I will use this program instead of the progressbar gtk application to go on debugging.

 

            Source code is in render_test.zip. 

            You can compiled it with ¡°gcc ¨Cg ¨Cv ¨CWall ¨Co render main.c ops.c tests_10x10.c ¨CLxxx ¨ClX11 ¨ClXrender¡±

 

            With the help of this application¡¯s debug, we will close to the root cause of this long-long ago historical rendering bug on geode platform.

 

 

Thanks,

Frank

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x.org/archives/xorg-driver-geode/attachments/20100520/6bdcd93d/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: patch
Type: application/octet-stream
Size: 3130 bytes
Desc: patch
URL: <http://lists.x.org/archives/xorg-driver-geode/attachments/20100520/6bdcd93d/attachment.obj>


More information about the Xorg-driver-geode mailing list