Commit 416e87a4 authored by Hans Verkuil's avatar Hans Verkuil Committed by Mauro Carvalho Chehab

[media] saa7110: fix querystd

Return V4L2_STD_UNKNOWN if no signal is detected.
Otherwise AND the standard mask with the detected standards.
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent e83c30c7
...@@ -202,7 +202,7 @@ static v4l2_std_id determine_norm(struct v4l2_subdev *sd) ...@@ -202,7 +202,7 @@ static v4l2_std_id determine_norm(struct v4l2_subdev *sd)
status = saa7110_read(sd); status = saa7110_read(sd);
if (status & 0x40) { if (status & 0x40) {
v4l2_dbg(1, debug, sd, "status=0x%02x (no signal)\n", status); v4l2_dbg(1, debug, sd, "status=0x%02x (no signal)\n", status);
return decoder->norm; /* no change*/ return V4L2_STD_UNKNOWN;
} }
if ((status & 3) == 0) { if ((status & 3) == 0) {
saa7110_write(sd, 0x06, 0x83); saa7110_write(sd, 0x06, 0x83);
...@@ -264,7 +264,7 @@ static int saa7110_g_input_status(struct v4l2_subdev *sd, u32 *pstatus) ...@@ -264,7 +264,7 @@ static int saa7110_g_input_status(struct v4l2_subdev *sd, u32 *pstatus)
static int saa7110_querystd(struct v4l2_subdev *sd, v4l2_std_id *std) static int saa7110_querystd(struct v4l2_subdev *sd, v4l2_std_id *std)
{ {
*(v4l2_std_id *)std = determine_norm(sd); *std &= determine_norm(sd);
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment