Re: [PATCH] media: i2c: tvp5150: fix color burst lock instability on some hardware

From: Mauro Carvalho Chehab
Date: Mon Mar 26 2018 - 05:44:08 EST


Hi Nasser,

Em Mon, 26 Mar 2018 03:26:33 +0430
Nasser Afshin <afshin.nasser@xxxxxxxxx> escreveu:

> According to the datasheet, INTREQ/GPCL/VBLK should have a pull-up/down
> resistor if it's been disabled. On hardware that does not have such
> resistor, we should use the default output enable value.
> This prevents the color burst lock instability problem.

If this is hardware-dependent, you should instead store it at
OF (for SoC) or pass via platform_data (for PCI/USB devices).

>
> Signed-off-by: Nasser Afshin <Afshin.Nasser@xxxxxxxxx>
> ---
> drivers/media/i2c/tvp5150.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/i2c/tvp5150.c b/drivers/media/i2c/tvp5150.c
> index 2476d812f669..0e9713814816 100644
> --- a/drivers/media/i2c/tvp5150.c
> +++ b/drivers/media/i2c/tvp5150.c
> @@ -328,7 +328,7 @@ static const struct i2c_reg_value tvp5150_init_default[] = {
> TVP5150_OP_MODE_CTL,0x00
> },
> { /* 0x03 */
> - TVP5150_MISC_CTL,0x01
> + TVP5150_MISC_CTL,0x21
> },
> { /* 0x06 */
> TVP5150_COLOR_KIL_THSH_CTL,0x10
> @@ -1072,7 +1072,8 @@ static int tvp5150_s_stream(struct v4l2_subdev *sd, int enable)
> * Enable the YCbCr and clock outputs. In discrete sync mode
> * (non-BT.656) additionally enable the the sync outputs.
> */
> - val |= TVP5150_MISC_CTL_YCBCR_OE | TVP5150_MISC_CTL_CLOCK_OE;
> + val |= TVP5150_MISC_CTL_YCBCR_OE | TVP5150_MISC_CTL_CLOCK_OE |
> + TVP5150_MISC_CTL_INTREQ_OE;
> if (decoder->mbus_type == V4L2_MBUS_PARALLEL)
> val |= TVP5150_MISC_CTL_SYNC_OE;
> }



Thanks,
Mauro