Hi Deepthy, On Friday 23 September 2011 13:53:39 Ravi, Deepthy wrote: > On Wednesday, September 21, 2011 2:36 PM Laurent Pinchart wrote: > > On Wednesday 21 September 2011 07:32:44 Ravi, Deepthy wrote: > >> On Wednesday, September 21, 2011 4:56 AM Laurent Pinchart wrote: > >> > On Tuesday 20 September 2011 16:56:51 Deepthy Ravi wrote: > >> >> Configure INPMOD and PACK8 fileds of CCDC_SYN_MODE > >> >> register for UYVY8_2X8 and YUYV8_2X8 formats. > >> >> > >> >> Signed-off-by: Deepthy Ravi <deepthy.ravi@xxxxxx> > >> >> --- > >> >> > >> >> drivers/media/video/omap3isp/ispccdc.c | 11 ++++++++--- > >> >> 1 files changed, 8 insertions(+), 3 deletions(-) > >> >> > >> >> diff --git a/drivers/media/video/omap3isp/ispccdc.c > >> >> b/drivers/media/video/omap3isp/ispccdc.c index 418ba65..1dcf180 > >> >> 100644 --- a/drivers/media/video/omap3isp/ispccdc.c > >> >> +++ b/drivers/media/video/omap3isp/ispccdc.c > >> >> @@ -985,8 +985,12 @@ static void ccdc_config_sync_if(struct > >> >> isp_ccdc_device > >> >> *ccdc, > >> >> > >> >> syn_mode &= ~ISPCCDC_SYN_MODE_INPMOD_MASK; > >> >> if (format->code == V4L2_MBUS_FMT_YUYV8_2X8 || > >> >> > >> >> - format->code == V4L2_MBUS_FMT_UYVY8_2X8) > >> >> - syn_mode |= ISPCCDC_SYN_MODE_INPMOD_YCBCR8; > >> >> + format->code == V4L2_MBUS_FMT_UYVY8_2X8){ > >> >> + if (pdata && pdata->bt656) > >> >> + syn_mode |= ISPCCDC_SYN_MODE_INPMOD_YCBCR8; > >> >> + else > >> >> + syn_mode |= ISPCCDC_SYN_MODE_INPMOD_YCBCR16; > >> >> + } > >> >> > >> >> else if (format->code == V4L2_MBUS_FMT_YUYV8_1X16 || > >> >> > >> >> format->code == V4L2_MBUS_FMT_UYVY8_1X16) > >> >> > >> >> syn_mode |= ISPCCDC_SYN_MODE_INPMOD_YCBCR16; > >> >> > >> >> @@ -1172,7 +1176,8 @@ static void ccdc_configure(struct > >> >> isp_ccdc_device *ccdc) syn_mode &= ~ISPCCDC_SYN_MODE_SDR2RSZ; > >> >> > >> >> /* Use PACK8 mode for 1byte per pixel formats. */ > >> >> > >> >> - if (omap3isp_video_format_info(format->code)->width <= 8) > >> >> + if ((omap3isp_video_format_info(format->code)->width <= 8) && > >> >> + (omap3isp_video_format_info(format->code)->bpp > >> >> <= 8)) > >> > > >> > I'm not sure to follow you. This will clear the PACK8 bit for the > >> > YUYV8_2X8 formats. Those formats are 8 bits wide, shouldn't PACK8 be > >> > set to store samples on 8 bits instead of 16 bits ? > >> > > >> > Is this patch intended to support YUYV8_2X8 sensors in non BT.656 mode > >> > with the bridge enabled ? In that case, what would you think about > >> > setting the CCDC input format to YUYV8_1X16 instead ? This would > >> > better reflect the reality, as the bridge converts YUYV8_2X8 to > >> > YUYV8_1X16, and the CCDC is then fed with YUYV8_1X16. > >> > >> Yes this is intended for YUYV8_2X8 sensors in non BT.656 with 8 to 16 > >> bit bridge enabled. So the data has to be stored as 16 bits per sample. > >> Thats why PACK8 is cleared . I am not sure about using YUYV8_1X16. > > > > My original idea when I wrote the YV support patches was to implement > > this use case with YUYV8_2X8 at the sensor output and YUYV8_1X16 at the > > CCDC input. The ISP driver could then enable the bridge automatically. > > I'm not sure if that's the best solution though, it might be confusing > > for the users. What I would like to keep, however, is the idea of > > enabling the bridge automatically. > > But for streaming to start, the formats on both ends of the link should > match. I believe setting different formats at sensor output and ccdc input > will give a broken pipe error. Is my understanding correct ? If so, how do > you propose to handle the situation ? We already handle that situation for the lane shifter in ispvideo.c. The code could be extended. -- 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