diff options
Diffstat (limited to 'drivers/media/usb/gspca/finepix.c')
-rw-r--r-- | drivers/media/usb/gspca/finepix.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/media/usb/gspca/finepix.c b/drivers/media/usb/gspca/finepix.c index fb68a2934255..52bdb569760b 100644 --- a/drivers/media/usb/gspca/finepix.c +++ b/drivers/media/usb/gspca/finepix.c | |||
@@ -77,7 +77,14 @@ static int command(struct gspca_dev *gspca_dev, | |||
77 | 12, FPIX_TIMEOUT); | 77 | 12, FPIX_TIMEOUT); |
78 | } | 78 | } |
79 | 79 | ||
80 | /* workqueue */ | 80 | /* |
81 | * This function is called as a workqueue function and runs whenever the camera | ||
82 | * is streaming data. Because it is a workqueue function it is allowed to sleep | ||
83 | * so we can use synchronous USB calls. To avoid possible collisions with other | ||
84 | * threads attempting to use gspca_dev->usb_buf we take the usb_lock when | ||
85 | * performing USB operations using it. In practice we don't really need this | ||
86 | * as the camera doesn't provide any controls. | ||
87 | */ | ||
81 | static void dostream(struct work_struct *work) | 88 | static void dostream(struct work_struct *work) |
82 | { | 89 | { |
83 | struct usb_fpix *dev = container_of(work, struct usb_fpix, work_struct); | 90 | struct usb_fpix *dev = container_of(work, struct usb_fpix, work_struct); |