How to scale down a picture display in omap2 driver

Hi,

I can get a picture of 640x480 to display on 1366x768 resolution in full screen, but If I display a 1920x1080 picture, I get a partial picture or blank screen. I use 2.6.32 kernel,
Doesn’t 2.6.32 kernel omap3 driver support down-scaling?

Thanks!

Kai

Doesn’t 2.6.32 kernel omap3 driver support down-scaling?

You don’t need to do this in the kernel. My resize-jpeg scripts, using netpbm package utilities, sounds like this:

djpeg -pnm $1 | pnmscale -pixels 480000 | cjpeg -quality 83 -optimize -dct float > resized-$1

Note that 480000 = 800x600.

I am interested in DSS hardware downscaling. I have looked at the video driver, it supports up/down scaling. But by ioctl, I tried to set xres, yres and xres_virtual, yres_virtual to 1920x1080 in struct fb_var_screeninfo. I got blank screen. But for a picture smaller than screen physical size like 1366x768. the picture would be scaled up automatically.

  > Doesn't 2.6.32 kernel omap3 driver support down-scaling?
  
  You don't need to do this in the kernel. My resize-jpeg scripts,
using netpbm package utilities, sounds like this:
  
  djpeg -pnm $1 | pnmscale -pixels 480000 | cjpeg -quality 83
-optimize -dct float > resized-$1
  
  Note that 480000 = 800x600.
  
I am interested in DSS hardware downscaling. I have looked at the video
driver, it supports up/down scaling. But by ioctl, I tried to set xres,
yres and xres_virtual, yres_virtual to 1920x1080 in struct
fb_var_screeninfo. I got blank screen. But for a picture smaller than
screen physical size like 1366x768. the picture would be scaled up
automatically. <http://www.takatan.net/lxr/ident?i=fb_var_screeninfo&gt;

Please note that, scaling is only available on video planes. You can not do
scaling on fb0.

Personally I have not done scaling with FBdev drivers, as part of PSP
release we always supported and tested V4L2 display driver on top of Video
planes and scaling is working perfectly fine there.

Thanks,
Vaibhav