what is the purpose of GeodeCalculatePitchBytes function?

Cui, Hunk Hunk.Cui at amd.com
Wed Sep 8 20:43:47 PDT 2010


Hi, Jordan & ajax,

	As you said, it is a compression algorithm, in your 2008-11-18
patch: "LX: Change the way EXA memory is allocated" (
http://cgit.freedesktop.org/xorg/driver/xf86-video-geode/commit/?id=cf06
55edbcbd3910c12c33d8c786cc72c0242786 ), you have one operation: Disable
compression when there is less then 16Mb of memory.

	In datasheet: 32478e- AMD Geode(tm) LX Processor Graphics
Software Specification, Table 2-9. Minimum Memory Requirements (MB), the
minimum memory requirements is 12Mb.

	So in driver code, why does it setup up to 16Mb? (if
(pGeode->tryCompression && pGeode->FBAvail <= 0x1000000). What is the
foundation?

Thanks,
Hunk Cui

> >> 	Ask one question...
> >> 	In
> >>
http://cgit.freedesktop.org/xorg/driver/xf86-video-geode/tree/src/gx_dri
> >> ver.c#n1560, this is the function " GeodeCalculatePitchBytes", in
the
> >> process of calculate the pitch, why does the compression require a
power
> >> of 2, what is the purpose?
> >
> > Framebuffer compression is a hardware feature.  If the hardware
requires
> > a power-of-two pitch...
> >
> > - ajax
> 
> Which indeed it does.  The compression algorithm and requirements are
> discussed in
> reasonable detail in the datasheet.
> 
> Jordan
> 




More information about the xorg-devel mailing list