Re: Getting started with OMAP3 ISP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Enrico,

On Thursday 01 September 2011 16:12:42 Enrico wrote:
> On Thu, Sep 1, 2011 at 12:24 PM, Enrico <ebutera@xxxxxxxxxxxxxxxx> wrote:
> > On Thu, Sep 1, 2011 at 11:55 AM, Laurent Pinchart
> > 
> >> Does your tvp5150 generate progressive or interlaced images ?
> > 
> > In the driver it is setup to decode by default in bt656 mode, so
> > interlaced.
> > 
> > I've read on the omap trm that the isp can deinterlace it setting
> > properly SDOFST, i just noticed in the register dump this:
> > 
> > omap3isp omap3isp: ###CCDC SDOFST=0x00000000
> > 
> > and maybe this is related too:
> > 
> > omap3isp omap3isp: ###CCDC REC656IF=0x00000000
> > 
> > Moreover i just found this [1] old thread about the same problem, i'm
> > reading it now.
> > 
> > Enrico
> > 
> > [1]: http://www.spinics.net/lists/linux-media/msg28079.html
> 
> Still not working, and much more doubts :D
> 
> 1) In board code isp_parallel_platform_data i added the bt656 = 1
> setting and i see it gets applied, but reading code and omap trm i've
> found that you must set ISPCCDC_REC656IF_ECCFVH flag too.

That's not mandatory, but I suppose it wouldn't hurt.

> 2) ispccdc.c:ccdc_config_outlineoffset(..) seems broken to me.
> 
> It is used only once in ccdc_configure:
> ccdc_config_outlineoffset(ccdc, ccdc->video_out.bpl_value, 0, 0);
> 
> so the last two parameters are always set to 0, while they should be
> (conditionally) set with for ex. EVENODD, 1
> 
> Moreover the implementation has this (hope it will keep formatting...):
> 
> switch (oddeven) {
>         case EVENEVEN:
>                 isp_reg_set(isp, OMAP3_ISP_IOMEM_CCDC, ISPCCDC_SDOFST,
>                             (numlines & 0x7) <<
> ISPCCDC_SDOFST_LOFST0_SHIFT); break;
>         case ODDEVEN:
>                 isp_reg_set(isp, OMAP3_ISP_IOMEM_CCDC, ISPCCDC_SDOFST,
>                             (numlines & 0x7) <<
> ISPCCDC_SDOFST_LOFST1_SHIFT); break;
>         case EVENODD:
>                 isp_reg_set(isp, OMAP3_ISP_IOMEM_CCDC, ISPCCDC_SDOFST,
>                             (numlines & 0x7) <<
> ISPCCDC_SDOFST_LOFST2_SHIFT); break;
>         case ODDODD:
>                 isp_reg_set(isp, OMAP3_ISP_IOMEM_CCDC, ISPCCDC_SDOFST,
>                             (numlines & 0x7) <<
> ISPCCDC_SDOFST_LOFST3_SHIFT); break;
>         default:
>                 break;
>         }
> 
> But reading the omap trm (Figure 12-77) it seems to me that all the
> LOFSTX should be set.

The driver currently has no support for interlaced video. This code has never 
been properly tested.

> 3) Last but not least, i'm using V4L2_MBUS_FMT_UYVY8_1X16 format in
> tvp5150, but i'm not sure it is correct. What is the proper format for
> bt656? Maybe V4L2_MBUS_FMT_UYVY8_2X8?

You should use V4L2_MBUS_FMT_UYVY8_2X8, as video data is transmitted on a 8-
bit bus with two samples per pixel.

-- 
Regards,

Laurent Pinchart
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux