status of DMA usage for pixmap migration in Xglamo

Carsten Haitzler (The Rasterman) raster at openmoko.org
Fri Mar 7 11:47:04 CET 2008


On Tue, 4 Mar 2008 12:36:34 +0100 Dodji Seketeli <dodji at openedhand.com> babbled:

N.B. - if this ends up failing or succeeding as a way to offload work on the
CPU, what are you doing next Dodji? I know 2D needs fixing. blits for large
pixmaps will be broken until a move to tiled pixmap formats in memory (and that
is probably best done as a move to EXA), as well as xrender can be accelerated
for:

* Color+Alpha mask expansion (anti-aliased text rendering, 4 bit only tho for
aa) Color+Alpha mask expansion (same)
* ARGB32 -> RGB565 Over Blend
* RGB565 -> RGB565 Over Blend with bitmap mask
* RGB565 + constant alpha (1x1 mask) -> RGB565 Over Blend
* RGBA32 + constant alpha (1x1 mask) -> RGB565 Over Blend
* RGBA32->RGB565 convert (with dither)
* Scaling (so scale + blend can be done as a 2 pass operation for non-rotated
scaling - when the matrix is just right).

these should be possible to accelerate and align with xrender mostly - the aa
text with 4 bits is a bit of a stretch, but can be done as opposed to A8 which
is the preferred method normally.

otherwise we have the usual software fallbacks for xrender. :)

when these are done - or almost done i can do engine level stuff to make sure
paths go via these as much as possible.

> Hello,
> 
> In my email
> http://lists.openmoko.org/pipermail/openmoko-devel/2008-February/001975.html,
> I talked about my attempts of using DMA to move pixmap from system ram
> to video ram. The problem I was hitting is that I needed to first move
> the pixmap data into an offscreen buffer into video ram and then use
> the glamo blitter to actually blit the pixmap to the visible are of the
> video ram where it belongs. The problem with using the blitter from
> within the kernel was that I needed to add support for the glamo
> command processor to the kernel and make Xglamo delegate the command
> processor initialisation to the kernel.
> 
> So I have a patch set for that now. These are attached to bug
> http://bugzilla.openmoko.org/cgi-bin/bugzilla/show_bug.cgi?id=1234.
> 
> So now, I need to write a test application that will let use compare
> the speed of this DMA based proof of concept against the classical
> memcpy used for doing the pixmap migrations.
> 
> Cheers,
> 
> Dodji.
> 
> -- 
> OpenedHand Ltd.
> Unit R, Homesdale Business Center / 216 - 218 Homesdale Road /
> Bromley / BR1 2QZ / United Kingdom.  Tel,fax: +44 (0) 208 819 6559
> 
> Expert Open Source For Consumer Devices - http://www.openedhand.com
> 


-- 
Carsten Haitzler (The Rasterman) <raster at openmoko.org>



More information about the openmoko-devel mailing list