From: Jose Abreu <jose.ab...@synopsys.com>

Currently, cobalt driver always returns 60fps in g_parm.
This patch uses the new v4l2_calc_timeperframe helper to
calculate the time per frame value.

Signed-off-by: Jose Abreu <joab...@synopsys.com>
Cc: Carlos Palminha <palmi...@synopsys.com>
Tested-by: Hans Verkuil <hans.verk...@cisco.com>
Signed-off-by: Hans Verkuil <hans.verk...@cisco.com>
---
 drivers/media/pci/cobalt/cobalt-v4l2.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/media/pci/cobalt/cobalt-v4l2.c 
b/drivers/media/pci/cobalt/cobalt-v4l2.c
index e2a4c705d353..c8fd2d075f43 100644
--- a/drivers/media/pci/cobalt/cobalt-v4l2.c
+++ b/drivers/media/pci/cobalt/cobalt-v4l2.c
@@ -1064,10 +1064,15 @@ static int cobalt_subscribe_event(struct v4l2_fh *fh,
 
 static int cobalt_g_parm(struct file *file, void *fh, struct v4l2_streamparm 
*a)
 {
+       struct cobalt_stream *s = video_drvdata(file);
+       struct v4l2_fract fps;
+
        if (a->type != V4L2_BUF_TYPE_VIDEO_CAPTURE)
                return -EINVAL;
-       a->parm.capture.timeperframe.numerator = 1;
-       a->parm.capture.timeperframe.denominator = 60;
+
+       fps = v4l2_calc_timeperframe(&s->timings);
+       a->parm.capture.timeperframe.numerator = fps.numerator;
+       a->parm.capture.timeperframe.denominator = fps.denominator;
        a->parm.capture.readbuffers = 3;
        return 0;
 }
-- 
2.18.0

Reply via email to