[PATCH] Add RGB555X and RGB565X formats to pxa-camera
Guennadi Liakhovetski
g.liakhovetski at gmx.de
Sat Sep 5 16:19:42 EDT 2009
On Sat, 5 Sep 2009, Marek Vasut wrote:
> Dne So 5. září 2009 10:55:55 Guennadi Liakhovetski napsal(a):
> > On Sat, 5 Sep 2009, Marek Vasut wrote:
> > > > > > drivers/media/video/pxa_camera.c | 4 ++++
> > > > > > 1 files changed, 4 insertions(+), 0 deletions(-)
> > > > > >
> > > > > > diff --git a/drivers/media/video/pxa_camera.c
> > > > > > b/drivers/media/video/pxa_camera.c
> > > > > > index 46e0d8a..de0fc8a 100644
> > > > > > --- a/drivers/media/video/pxa_camera.c
> > > > > > +++ b/drivers/media/video/pxa_camera.c
> > > > > > @@ -1222,6 +1222,8 @@ static int required_buswidth(const struct
> > > > > > soc_camera_data_format *fmt)
> > > > > > case V4L2_PIX_FMT_YVYU:
> > > > > > case V4L2_PIX_FMT_RGB565:
> > > > > > case V4L2_PIX_FMT_RGB555:
> > > > > > + case V4L2_PIX_FMT_RGB565X:
> > > > > > + case V4L2_PIX_FMT_RGB555X:
> > > > > > return 8;
> > > > > > default:
> > > > > > return fmt->depth;
> > > > > > @@ -1260,6 +1262,8 @@ static int pxa_camera_get_formats(struct
> > > > > > soc_camera_device *icd, int idx,
> > > > > > case V4L2_PIX_FMT_YVYU:
> > > > > > case V4L2_PIX_FMT_RGB565:
> > > > > > case V4L2_PIX_FMT_RGB555:
> > > > > > + case V4L2_PIX_FMT_RGB565X:
> > > > > > + case V4L2_PIX_FMT_RGB555X:
> > > > > > formats++;
> > > > > > if (xlate) {
> > > > > > xlate->host_fmt = icd->formats + idx;
> > >
> > > What should we do with this patch? Any updates? I spoke to Guennadi and
> > > he thinks it's not a good idea to apply it (as pxaqci doesnt support
> > > those formats). But to my understanding, those formats are endian-swapped
> > > versions of the other ones without X at the end so there shouldnt be a
> > > problem with it.
> >
> > Marek, please, look in PXA270 datasheet. To support a specific pixel
> > format means, e.g., to be able to process it further, according to this
> > format's particular colour component ordering. Process further can mean
> > convert to another format, extract various information from the data
> > (statistics, etc.)... Now RGB555 looks like (from wikipedia)
> >
> > 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
> > R4 R3 R2 R1 R0 G4 G3 G2 G1 G1 B4 B3 B2 B1 B1 --
> >
> > (Actually, I thought bit 15 was unused, but it doesn't matter for this
> > discussion.) Now, imagine what happens if you swap the two bytes. I don't
> > think the PXA will still be able to meaningfully process that format.
> >
>
> Not on the pxa side, but on the camera side -- Bs and Rs swapped in the diagram
> above.
And then? Are you trying to tell me, that the PXA then swaps them back?...
Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/
More information about the linux-arm-kernel
mailing list