[maemo-developers] ARM MMU questions

From: Simon Pickering S.G.Pickering at bath.ac.uk
Date: Thu Oct 25 01:56:53 EEST 2007
>> (i.e. see my shared memory example code I sent to the list
>> a few weeks ago, which runs on both 770 and N800).
>
> Yes, I've seen it. Please don't stop with such examples :-)

Don't worry, there are more things in the pipeline :)

>> Yes, that's why it's not mapped, but there shouldn't necessarily be any
>> reason why it can't be remapped and used (e.g. for colourspace
>> conversion), which is my goal.
>
> I wonder what is real goal? Some test or benchmark? Or some image
> processing without displaying it (as graphics chip can display both RGB
> and YUV directly so there is no need to convert)?

I was talking with Siarhei Siamashka who said it might be useful to use 
the DSP on the 770 for colourspace conversion and scaling. Framebuffer 
access works on the 770 (which saves a round trip so the ARM can output 
the data), but one still needs large shared memory buffers to transfer 
the video data from an application such as mplayer (these buffers on 
the 770 suffer from the same TLB problems as framebuffer mapping on the 
N800).

Although the N800 performs scaling on the LCD controller (by an 
arbitrary factor, rather than the 770's fixed ones), it may still be 
useful to perform colourspace conversion somewhere other than the ARM 
processor to free it up. It also annoys me that I can't get framebuffer 
access to work on the N800 :).

Regarding the usefulness of using the DSP for this, although the LCD 
controller accepts RGB/YUV directly, it also accepts a custom format 
which is 12bit/pixel rather than 16bit/pixel. As the OMAP->LCD 
controller bandwidth is limited, this means that using this smaller 
pixel encoding a higher framerate/larger frame can be achieved than 
with standard YUV/RGB. Offloading this processing to the DSP frees the 
ARM to do something more useful (especially in the case of the 770 
where it will be doing scaling as well).


Simon


More information about the maemo-developers mailing list