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.shtyl...@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

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

Reply via email to