summaryrefslogtreecommitdiffstats
path: root/drivers/usb/usb.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/usb.c')
-rw-r--r--drivers/usb/usb.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/usb/usb.c b/drivers/usb/usb.c
index b291c04c6..bbce88b64 100644
--- a/drivers/usb/usb.c
+++ b/drivers/usb/usb.c
@@ -36,7 +36,6 @@
* 6 wLength 2 Count Bytes for data
*/
-#include <linux/config.h>
#include <linux/string.h>
#include <linux/bitops.h>
#include <linux/malloc.h>
@@ -773,7 +772,7 @@ int usb_clear_halt(struct usb_device *dev, int endp)
/* toggle is reset on clear */
- usb_settoggle(dev, endp & 0x0f, 0);
+ usb_settoggle(dev, endp & 0x0f, ((endp >> 7) & 1) ^ 1, 0);
return 0;
}
@@ -823,7 +822,8 @@ int usb_set_configuration(struct usb_device *dev, int configuration)
return -1;
dev->actconfig = cp;
- dev->toggle = 0;
+ dev->toggle[0] = 0;
+ dev->toggle[1] = 0;
usb_set_maxpacket(dev);
return 0;
}