This is an automatic generated email to let you know that the following patch 
were queued:

Subject: [media] media: rcar-vin: allow field to be changed
Author:  Niklas Söderlund <niklas.soderlund+rene...@ragnatech.se>
Date:    Fri Sep 2 13:44:58 2016 -0300

The driver forced whatever field was set by the source subdevice to be
used. This patch allows the user to change from the default field.

Signed-off-by: Niklas Söderlund <niklas.soderlund+rene...@ragnatech.se>
Signed-off-by: Hans Verkuil <hans.verk...@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mche...@s-opensource.com>

 drivers/media/platform/rcar-vin/rcar-v4l2.c | 9 +++++++++
 1 file changed, 9 insertions(+)

---

diff --git a/drivers/media/platform/rcar-vin/rcar-v4l2.c 
b/drivers/media/platform/rcar-vin/rcar-v4l2.c
index 62ca7e35517e..88bfee33b478 100644
--- a/drivers/media/platform/rcar-vin/rcar-v4l2.c
+++ b/drivers/media/platform/rcar-vin/rcar-v4l2.c
@@ -102,6 +102,7 @@ static int __rvin_try_format_source(struct rvin_dev *vin,
        struct v4l2_subdev_format format = {
                .which = which,
        };
+       enum v4l2_field field;
        int ret;
 
        sd = vin_to_source(vin);
@@ -114,12 +115,16 @@ static int __rvin_try_format_source(struct rvin_dev *vin,
 
        format.pad = vin->src_pad_idx;
 
+       field = pix->field;
+
        ret = v4l2_subdev_call(sd, pad, set_fmt, pad_cfg, &format);
        if (ret < 0 && ret != -ENOIOCTLCMD)
                goto done;
 
        v4l2_fill_pix_format(pix, &format.format);
 
+       pix->field = field;
+
        source->width = pix->width;
        source->height = pix->height;
 
@@ -143,6 +148,10 @@ static int __rvin_try_format(struct rvin_dev *vin,
        rwidth = pix->width;
        rheight = pix->height;
 
+       /* Keep current field if no specific one is asked for */
+       if (pix->field == V4L2_FIELD_ANY)
+               pix->field = vin->format.field;
+
        /*
         * Retrieve format information and select the current format if the
         * requested format isn't supported.

_______________________________________________
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
https://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to