From: Martin Tůma Date: Tue, 26 Aug 2025 16:28:29 +0000 (+0200) Subject: media: pci: mgb4: Fix timings comparison in VIDIOC_S_DV_TIMINGS X-Git-Tag: v6.18-rc1~133^2~230 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0750649b528ff18d1d68aecb45b34ec22d5ab778;p=thirdparty%2Flinux.git media: pci: mgb4: Fix timings comparison in VIDIOC_S_DV_TIMINGS Compare the whole v4l2_bt_timings struct, not just the width/height when setting new timings. Timings with the same resolution and different pixelclock can now be properly set. Signed-off-by: Martin Tůma Signed-off-by: Hans Verkuil --- diff --git a/drivers/media/pci/mgb4/mgb4_vin.c b/drivers/media/pci/mgb4/mgb4_vin.c index 989e93f67f75b..42c327bc50e10 100644 --- a/drivers/media/pci/mgb4/mgb4_vin.c +++ b/drivers/media/pci/mgb4/mgb4_vin.c @@ -610,8 +610,7 @@ static int vidioc_s_dv_timings(struct file *file, void *fh, timings->bt.height < video_timings_cap.bt.min_height || timings->bt.height > video_timings_cap.bt.max_height) return -EINVAL; - if (timings->bt.width == vindev->timings.bt.width && - timings->bt.height == vindev->timings.bt.height) + if (v4l2_match_dv_timings(timings, &vindev->timings, 0, false)) return 0; if (vb2_is_busy(&vindev->queue)) return -EBUSY;