[media] adv7180: Add cropcap operation

Add support to get the pixel aspect ratio depending on the current
standard (50 vs 60 Hz).

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
Niklas Söderlund 2016-04-02 14:42:19 -03:00 committed by Mauro Carvalho Chehab
parent d0fadc8693
commit 64b3df9223
1 changed files with 16 additions and 0 deletions

View File

@ -726,6 +726,21 @@ static int adv7180_g_mbus_config(struct v4l2_subdev *sd,
return 0;
}
static int adv7180_cropcap(struct v4l2_subdev *sd, struct v4l2_cropcap *cropcap)
{
struct adv7180_state *state = to_state(sd);
if (state->curr_norm & V4L2_STD_525_60) {
cropcap->pixelaspect.numerator = 11;
cropcap->pixelaspect.denominator = 10;
} else {
cropcap->pixelaspect.numerator = 54;
cropcap->pixelaspect.denominator = 59;
}
return 0;
}
static const struct v4l2_subdev_video_ops adv7180_video_ops = {
.s_std = adv7180_s_std,
.g_std = adv7180_g_std,
@ -733,6 +748,7 @@ static const struct v4l2_subdev_video_ops adv7180_video_ops = {
.g_input_status = adv7180_g_input_status,
.s_routing = adv7180_s_routing,
.g_mbus_config = adv7180_g_mbus_config,
.cropcap = adv7180_cropcap,
};