From b9e23293727ffcb8fb94fdc223852022c985aaf7 Mon Sep 17 00:00:00 2001 From: Arvydas Sidorenko Date: Wed, 21 Sep 2011 10:58:31 -0300 Subject: [PATCH] --- yaml --- r: 271895 b: refs/heads/master c: 7b1c8f58fcdbed75903943705ef41816e9648c1b h: refs/heads/master i: 271893: 7b5727f2a4bf88d3885f3f1b29321c9fdf2ad87d 271891: 8efd7b6ffa8c215c3fbe01accd48ad0af39bc82b 271887: b89d9971c36b88663b924c779c75638f2e81ff62 v: v3 --- [refs] | 2 +- trunk/drivers/media/video/stk-webcam.c | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 8865bf16349a..5cfd321babc6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 69967a71ae6ebe7aace94ef15f269b8bf2b5ce1e +refs/heads/master: 7b1c8f58fcdbed75903943705ef41816e9648c1b diff --git a/trunk/drivers/media/video/stk-webcam.c b/trunk/drivers/media/video/stk-webcam.c index 5fc6bbc165fa..cbc105f975de 100644 --- a/trunk/drivers/media/video/stk-webcam.c +++ b/trunk/drivers/media/video/stk-webcam.c @@ -55,6 +55,8 @@ MODULE_AUTHOR("Jaime Velasco Juan and Nicolas VIVIEN"); MODULE_DESCRIPTION("Syntek DC1125 webcam driver"); +/* bool for webcam LED management */ +int first_init = 1; /* Some cameras have audio interfaces, we aren't interested in those */ static struct usb_device_id stkwebcam_table[] = { @@ -560,6 +562,12 @@ static int v4l_stk_open(struct file *fp) if (dev == NULL || !is_present(dev)) return -ENXIO; + + if (!first_init) + stk_camera_write_reg(dev, 0x0, 0x24); + else + first_init = 0; + fp->private_data = dev; usb_autopm_get_interface(dev->interface); @@ -573,7 +581,7 @@ static int v4l_stk_release(struct file *fp) if (dev->owner == fp) { stk_stop_stream(dev); stk_free_buffers(dev); - stk_camera_write_reg(dev, 0x0, 0x48); /* turn off the LED */ + stk_camera_write_reg(dev, 0x0, 0x49); /* turn off the LED */ unset_initialised(dev); dev->owner = NULL; } @@ -1350,6 +1358,7 @@ static int stk_camera_resume(struct usb_interface *intf) return 0; unset_initialised(dev); stk_initialise(dev); + stk_camera_write_reg(dev, 0x0, 0x49); stk_setup_format(dev); if (is_streaming(dev)) stk_start_stream(dev);