summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorWojciech Bieganski <wbieganski@antmicro.com>2014-11-19 13:35:55 +0100
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2014-11-24 14:27:44 +0100
commitfe1ee4c7673246ecf0ba4b121d956594097c5ff6 (patch)
treeaafeb8a0dbce2562fecbd70d2777b206022026b6 /drivers
parent169a233f4779a7617179f825723d38f9832238f8 (diff)
media: adv7180 now works at 25 fps
This commit, updates the driver to work faster with 32-Lead and 40-Lead versions of adv7180 chip. Output pin VS/FIELD is now configured as VSYNC.
Diffstat (limited to 'drivers')
-rw-r--r--drivers/media/video/adv7180.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/media/video/adv7180.c b/drivers/media/video/adv7180.c
index 14b48edb39b2..d8f2f2ba193d 100644
--- a/drivers/media/video/adv7180.c
+++ b/drivers/media/video/adv7180.c
@@ -98,6 +98,8 @@
#define ADV7180_IMR3_ADI 0x4C
#define ADV7180_IMR4_ADI 0x50
+#define ADV7180_VS_FIELD_REG 0x58
+
struct adv7180_state {
struct v4l2_subdev sd;
struct work_struct work;
@@ -485,6 +487,12 @@ static __devinit int adv7180_probe(struct i2c_client *client,
/* read current norm */
__adv7180_status(client, NULL, &state->curr_norm);
+ /* VSYNC output (not FIELD) */
+ ret = i2c_smbus_write_byte_data(client,
+ ADV7180_VS_FIELD_REG, 0x01);
+ if (ret < 0)
+ goto err_unreg_subdev;
+
/* register for interrupts */
if (state->irq > 0) {
ret = request_irq(state->irq, adv7180_irq, 0, DRIVER_NAME,