dmitrysmagin / dingoo-linux

Automatically exported from code.google.com/p/dingoo-linux
1 stars 2 forks source link

Implement higher/lower resolution modes in framebuffer and use IPU to scale up/down. #26

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
The image processing unit in the JZ4740 allows fast scaling and color
conversion of images. Use it from the framebuffer driver to implement
varying resolutions so userspace developers don't have necessarily to adapt
to 320x240.

Original issue reported on code.google.com by igga...@gmail.com on 30 Jul 2009 at 10:17

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
From the JZ4740 specs, looks like the scaling function can be disabled but not 
the
color conversion one. However, since it is a linear conversion (see formulas in 
the
register descrptions in the JZ4740 IPU specs) and you can choose the 
coefficients, it
should be possible to set values that will result in RGB->RGB conversion.

It is certainly a pity that the IPU does not do rotation, though.

Original comment by igga...@gmail.com on 31 Jul 2009 at 9:10

GoogleCodeExporter commented 9 years ago
I'm not sure about possibility of RGB->RGB. First, the source is in diferent 
format
in memory (Y,U,V colors are in separate places, not together for one pixel like 
for
RGB) and also the coefficients are not separated enough so there is no way to 
set it
to map e.g. Y to R, U to G and V to B directly.

What is possible however is to 
- emulate 265 color mode with colormap entries stored in YUV and do 
256color->YUV
conversion (+optional rotation) in software and then scale and convert into 
16bit RGB
via IPU
- implement native YUV framebuffer modes with scaling done by IPU for 
implementing
SDL YUV overlay or Xvideo X11 extension (if we want to run some sort of X 
server on
the device).

BTW, I wonder if IPU can feed ILI controller via DMA directly or there must be 
two
DMA transfers (IPU -> RAM, RAM -> ILI). I guess the latter.

Original comment by fano...@gmail.com on 4 Aug 2009 at 10:23