[media] bt819: fix querystd

Return V4L2_STD_UNKNOWN if no signal is detected.
Otherwise AND the standard mask with the detected standards.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Hans Verkuil 2013-05-29 10:18:55 -03:00 committed by Mauro Carvalho Chehab
parent 7dd8fbbe50
commit ddc7f72a3d
1 changed files with 5 additions and 3 deletions

View File

@ -215,15 +215,17 @@ static int bt819_status(struct v4l2_subdev *sd, u32 *pstatus, v4l2_std_id *pstd)
struct bt819 *decoder = to_bt819(sd);
int status = bt819_read(decoder, 0x00);
int res = V4L2_IN_ST_NO_SIGNAL;
v4l2_std_id std;
v4l2_std_id std = pstd ? *pstd : V4L2_STD_ALL;
if ((status & 0x80))
res = 0;
else
std = V4L2_STD_UNKNOWN;
if ((status & 0x10))
std = V4L2_STD_PAL;
std &= V4L2_STD_PAL;
else
std = V4L2_STD_NTSC;
std &= V4L2_STD_NTSC;
if (pstd)
*pstd = std;
if (pstatus)