diff options
author | Anatolij Gustschin <agust@denx.de> | 2010-12-22 15:31:58 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-12-29 05:17:16 -0500 |
commit | f9d7d787842e92bc768d282f37fc3056c5441ddb (patch) | |
tree | 6143a6f97bbef123f32cfd90ae7862a785edd40f /drivers/media/video/saa7115.c | |
parent | 641d21167f66ef4c574ef4f586fec0ae32179acd (diff) |
[media] saa7115: allow input standard autodetection for more chips
Autodetect input's standard using field frequency detection
feature (FIDT in status byte at 0x1F) of the chips saa7111/
saa7111a/saa7113/saa7114/saa7118.
Signed-off-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/saa7115.c')
-rw-r--r-- | drivers/media/video/saa7115.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/media/video/saa7115.c b/drivers/media/video/saa7115.c index 301c62b88cad..f35459d1f42f 100644 --- a/drivers/media/video/saa7115.c +++ b/drivers/media/video/saa7115.c | |||
@@ -1348,8 +1348,17 @@ static int saa711x_querystd(struct v4l2_subdev *sd, v4l2_std_id *std) | |||
1348 | int reg1e; | 1348 | int reg1e; |
1349 | 1349 | ||
1350 | *std = V4L2_STD_ALL; | 1350 | *std = V4L2_STD_ALL; |
1351 | if (state->ident != V4L2_IDENT_SAA7115) | 1351 | if (state->ident != V4L2_IDENT_SAA7115) { |
1352 | int reg1f = saa711x_read(sd, R_1F_STATUS_BYTE_2_VD_DEC); | ||
1353 | |||
1354 | if (reg1f & 0x20) | ||
1355 | *std = V4L2_STD_525_60; | ||
1356 | else | ||
1357 | *std = V4L2_STD_625_50; | ||
1358 | |||
1352 | return 0; | 1359 | return 0; |
1360 | } | ||
1361 | |||
1353 | reg1e = saa711x_read(sd, R_1E_STATUS_BYTE_1_VD_DEC); | 1362 | reg1e = saa711x_read(sd, R_1E_STATUS_BYTE_1_VD_DEC); |
1354 | 1363 | ||
1355 | switch (reg1e & 0x03) { | 1364 | switch (reg1e & 0x03) { |