diff options
author | Hans Verkuil <hans.verkuil@cisco.com> | 2013-08-19 10:21:50 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <m.chehab@samsung.com> | 2013-08-24 03:30:01 -0400 |
commit | b8f0fff4279a1b85fa4b6d7d8b538c254edcb4a1 (patch) | |
tree | 9ab3d196fe8e7633baa8b7bb6726af43d8187710 /drivers/media/i2c/ad9389b.c | |
parent | 70b654945bacd27622ef1c424f054ae04de597e0 (diff) |
[media] v4l2-dv-timings: add callback to handle exceptions
In most cases the v4l2_bt_timings_cap struct has all the information
necessary to determine valid timings, but occasionally there are exceptions.
Add a callback function to be able to test for those exceptions.
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media/i2c/ad9389b.c')
-rw-r--r-- | drivers/media/i2c/ad9389b.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/media/i2c/ad9389b.c b/drivers/media/i2c/ad9389b.c index fc608516fc43..836978602973 100644 --- a/drivers/media/i2c/ad9389b.c +++ b/drivers/media/i2c/ad9389b.c | |||
@@ -648,12 +648,12 @@ static int ad9389b_s_dv_timings(struct v4l2_subdev *sd, | |||
648 | v4l2_dbg(1, debug, sd, "%s:\n", __func__); | 648 | v4l2_dbg(1, debug, sd, "%s:\n", __func__); |
649 | 649 | ||
650 | /* quick sanity check */ | 650 | /* quick sanity check */ |
651 | if (!v4l2_valid_dv_timings(timings, &ad9389b_timings_cap)) | 651 | if (!v4l2_valid_dv_timings(timings, &ad9389b_timings_cap, NULL, NULL)) |
652 | return -EINVAL; | 652 | return -EINVAL; |
653 | 653 | ||
654 | /* Fill the optional fields .standards and .flags in struct v4l2_dv_timings | 654 | /* Fill the optional fields .standards and .flags in struct v4l2_dv_timings |
655 | if the format is one of the CEA or DMT timings. */ | 655 | if the format is one of the CEA or DMT timings. */ |
656 | v4l2_find_dv_timings_cap(timings, &ad9389b_timings_cap, 0); | 656 | v4l2_find_dv_timings_cap(timings, &ad9389b_timings_cap, 0, NULL, NULL); |
657 | 657 | ||
658 | timings->bt.flags &= ~V4L2_DV_FL_REDUCED_FPS; | 658 | timings->bt.flags &= ~V4L2_DV_FL_REDUCED_FPS; |
659 | 659 | ||
@@ -691,7 +691,8 @@ static int ad9389b_g_dv_timings(struct v4l2_subdev *sd, | |||
691 | static int ad9389b_enum_dv_timings(struct v4l2_subdev *sd, | 691 | static int ad9389b_enum_dv_timings(struct v4l2_subdev *sd, |
692 | struct v4l2_enum_dv_timings *timings) | 692 | struct v4l2_enum_dv_timings *timings) |
693 | { | 693 | { |
694 | return v4l2_enum_dv_timings_cap(timings, &ad9389b_timings_cap); | 694 | return v4l2_enum_dv_timings_cap(timings, &ad9389b_timings_cap, |
695 | NULL, NULL); | ||
695 | } | 696 | } |
696 | 697 | ||
697 | static int ad9389b_dv_timings_cap(struct v4l2_subdev *sd, | 698 | static int ad9389b_dv_timings_cap(struct v4l2_subdev *sd, |