[Xorg-driver-geode] Glyph rendering

Huang, FrankR FrankR.Huang at amd.com
Tue Jul 20 02:54:55 PDT 2010


The PICT_r3g3b2 can noe be used. Give up.
I use PICT_a8r8g8b8 to play a trick to do the PictOpAdd on PICT_a8, the 4 PICT_a8 compose one PICT_a8r8g8b8. It can work:). But still have some side effect.
By the way, from my debug, the pitch(stride) of source can be modulus(%) with 4, the result is 0.

Thanks,
Frank

-----Original Message-----
From: Jonathan Morton [mailto:jonathan.morton at movial.com] 
Sent: 2010?7?20? 9:32
To: Huang, FrankR
Cc: Mart Raudsepp; xorg-driver-geode at lists.x.org; michel at daenzer.net
Subject: Re: [Xorg-driver-geode] Glyph rendering

On 19 July 2010 12:35, Huang, FrankR <FrankR.Huang at amd.com> wrote:
> I found that our HW can not support PICT_a8 destination, only support PICT_r3g3b2 destination. Can you use PICT_r3g3b2? From the experiment, the result is not correct. I think the HW will split the 8 bits value into 3,3,2 and do the PictOpAdd separately instead a whole 8 bits value?
> Or do that in SW way (I wrote in the driver)?

You have better information on the hardware than I do.  I can only
tell you what needs to be done.

For this particular purpose you can treat A8 as being equivalt to
8-bit greyscale.  I don't know if that helps you.

If there is no way to make Geode do the A8 addition in one pass, then
it is probably better to do it in software.  This is trivially
achieved by rejecting the operation and allowing Pixman to take it
over.  Pixman - if a recent enough version - will automatically take
advantage of MMX or SSE2 if available (I don't know if your hardware
has it).

 - Jonathan Morton




More information about the Xorg-driver-geode mailing list