summaryrefslogtreecommitdiff
path: root/linux/drivers/media
diff options
context:
space:
mode:
authorJean-Francois Moine <moinejf@free.fr>2008-10-22 19:51:56 +0200
committerJean-Francois Moine <moinejf@free.fr>2008-10-22 19:51:56 +0200
commit6d8e41de4953417c43bb7b97ce4ea305cf207522 (patch)
treedb99fc712df37895527ee42c46722f7f7e3493b5 /linux/drivers/media
parent2c1d2959d7098e5e5f0acd1bcc6c015c824dac0a (diff)
downloadmediapointer-dvb-s2-6d8e41de4953417c43bb7b97ce4ea305cf207522.tar.gz
mediapointer-dvb-s2-6d8e41de4953417c43bb7b97ce4ea305cf207522.tar.bz2
gspca: Clear the bulk endpoint at starting time when bulk transfer.
From: Jean-Francois Moine <moinejf@free.fr> - usb_clear_halt() added in gspca and removed in finepix. Priority: normal Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Diffstat (limited to 'linux/drivers/media')
-rw-r--r--linux/drivers/media/video/gspca/finepix.c3
-rw-r--r--linux/drivers/media/video/gspca/gspca.c6
2 files changed, 6 insertions, 3 deletions
diff --git a/linux/drivers/media/video/gspca/finepix.c b/linux/drivers/media/video/gspca/finepix.c
index 65d3cbfe6..d3e3f085b 100644
--- a/linux/drivers/media/video/gspca/finepix.c
+++ b/linux/drivers/media/video/gspca/finepix.c
@@ -308,9 +308,6 @@ static int sd_start(struct gspca_dev *gspca_dev)
int ret;
int size_ret;
- /* Reset bulk in endpoint */
- usb_clear_halt(gspca_dev->dev, gspca_dev->cam.epaddr);
-
/* Init the device */
memset(gspca_dev->usb_buf, 0, 12);
gspca_dev->usb_buf[0] = 0xc6;
diff --git a/linux/drivers/media/video/gspca/gspca.c b/linux/drivers/media/video/gspca/gspca.c
index 4e0e7a32a..a602dac6b 100644
--- a/linux/drivers/media/video/gspca/gspca.c
+++ b/linux/drivers/media/video/gspca/gspca.c
@@ -607,6 +607,12 @@ static int gspca_init_transfer(struct gspca_dev *gspca_dev)
if (ret < 0)
goto out;
+ /* clear the bulk endpoint */
+ if (gspca_dev->alt == 0) /* if bulk transfer */
+ usb_clear_halt(gspca_dev->dev,
+ usb_rcvintpipe(gspca_dev->dev,
+ gspca_dev->cam.epaddr));
+
/* start the cam */
ret = gspca_dev->sd_desc->start(gspca_dev);
if (ret < 0) {