All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: g.liakhovetski@gmx.de, mchehab@osg.samsung.com,
	linux-media@vger.kernel.org, linux-sh@vger.kernel.org
Subject: Re: [PATCH] rcar_vin: propagate querystd() error upstream
Date: Mon, 24 Aug 2015 21:58:07 +0000	[thread overview]
Message-ID: <55DB936F.2060008@cogentembedded.com> (raw)
In-Reply-To: <2204711.y8psPZeT2j@avalon>

hello.

On 08/21/2015 12:51 AM, Laurent Pinchart wrote:

>> rcar_vin_set_fmt() defaults to  PAL when the subdevice's querystd() method
>> call fails (e.g. due to I2C error).  This doesn't work very well when a
>> camera being used  outputs NTSC which has different order of fields and
>> resolution.  Let  us stop  pretending and return the actual error (which
>> would prevent video capture on at least Renesas Henninger/Porter board
>> where I2C seems particularly buggy).
>>
>> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
>>
>> ---
>> The patch is against the 'media_tree.git' repo's 'fixes' branch.
>>
>>   drivers/media/platform/soc_camera/rcar_vin.c |    2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> Index: media_tree/drivers/media/platform/soc_camera/rcar_vin.c
>> =================================>> --- media_tree.orig/drivers/media/platform/soc_camera/rcar_vin.c
>> +++ media_tree/drivers/media/platform/soc_camera/rcar_vin.c
>> @@ -1592,7 +1592,7 @@ static int rcar_vin_set_fmt(struct soc_c
>>   		/* Query for standard if not explicitly mentioned _TB/_BT */
>>   		ret = v4l2_subdev_call(sd, video, querystd, &std);
>>   		if (ret < 0)
>> -			std = V4L2_STD_625_50;
>> +			return ret;
>
> What if the subdev doesn't implement querystd ? That's the case of camera
> sensors for instance.

    Indeed.

> In that case we should default to V4L2_FIELD_NONE.

    Hmm, even if the set_fmt() method is called with V4L2_FIELD_INTERLACED 
already, like in this case?

>>   		field = std & V4L2_STD_625_50 ? V4L2_FIELD_INTERLACED_TB :
>>   						V4L2_FIELD_INTERLACED_BT;

MBR, Sergei


WARNING: multiple messages have this Message-ID (diff)
From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: g.liakhovetski@gmx.de, mchehab@osg.samsung.com,
	linux-media@vger.kernel.org, linux-sh@vger.kernel.org
Subject: Re: [PATCH] rcar_vin: propagate querystd() error upstream
Date: Tue, 25 Aug 2015 00:58:07 +0300	[thread overview]
Message-ID: <55DB936F.2060008@cogentembedded.com> (raw)
In-Reply-To: <2204711.y8psPZeT2j@avalon>

hello.

On 08/21/2015 12:51 AM, Laurent Pinchart wrote:

>> rcar_vin_set_fmt() defaults to  PAL when the subdevice's querystd() method
>> call fails (e.g. due to I2C error).  This doesn't work very well when a
>> camera being used  outputs NTSC which has different order of fields and
>> resolution.  Let  us stop  pretending and return the actual error (which
>> would prevent video capture on at least Renesas Henninger/Porter board
>> where I2C seems particularly buggy).
>>
>> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
>>
>> ---
>> The patch is against the 'media_tree.git' repo's 'fixes' branch.
>>
>>   drivers/media/platform/soc_camera/rcar_vin.c |    2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> Index: media_tree/drivers/media/platform/soc_camera/rcar_vin.c
>> ===================================================================
>> --- media_tree.orig/drivers/media/platform/soc_camera/rcar_vin.c
>> +++ media_tree/drivers/media/platform/soc_camera/rcar_vin.c
>> @@ -1592,7 +1592,7 @@ static int rcar_vin_set_fmt(struct soc_c
>>   		/* Query for standard if not explicitly mentioned _TB/_BT */
>>   		ret = v4l2_subdev_call(sd, video, querystd, &std);
>>   		if (ret < 0)
>> -			std = V4L2_STD_625_50;
>> +			return ret;
>
> What if the subdev doesn't implement querystd ? That's the case of camera
> sensors for instance.

    Indeed.

> In that case we should default to V4L2_FIELD_NONE.

    Hmm, even if the set_fmt() method is called with V4L2_FIELD_INTERLACED 
already, like in this case?

>>   		field = std & V4L2_STD_625_50 ? V4L2_FIELD_INTERLACED_TB :
>>   						V4L2_FIELD_INTERLACED_BT;

MBR, Sergei


  reply	other threads:[~2015-08-24 21:58 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-19 21:02 [PATCH] rcar_vin: propagate querystd() error upstream Sergei Shtylyov
2015-08-19 21:02 ` Sergei Shtylyov
2015-08-20 21:51 ` Laurent Pinchart
2015-08-20 21:51   ` Laurent Pinchart
2015-08-24 21:58   ` Sergei Shtylyov [this message]
2015-08-24 21:58     ` Sergei Shtylyov
2015-08-25 19:42     ` Laurent Pinchart
2015-08-25 19:42       ` Laurent Pinchart
2015-08-25 14:25 ` Hans Verkuil
2015-08-25 14:25   ` Hans Verkuil
2015-08-31 22:13   ` Sergei Shtylyov
2015-08-31 22:13     ` Sergei Shtylyov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=55DB936F.2060008@cogentembedded.com \
    --to=sergei.shtylyov@cogentembedded.com \
    --cc=g.liakhovetski@gmx.de \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=mchehab@osg.samsung.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.