aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/sl811-hcd.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/host/sl811-hcd.c')
-rw-r--r--drivers/usb/host/sl811-hcd.c16
1 files changed, 6 insertions, 10 deletions
diff --git a/drivers/usb/host/sl811-hcd.c b/drivers/usb/host/sl811-hcd.c
index 990f06b89eaa..1a996245ab98 100644
--- a/drivers/usb/host/sl811-hcd.c
+++ b/drivers/usb/host/sl811-hcd.c
@@ -47,6 +47,7 @@
47#include <linux/usb/sl811.h> 47#include <linux/usb/sl811.h>
48#include <linux/usb/hcd.h> 48#include <linux/usb/hcd.h>
49#include <linux/platform_device.h> 49#include <linux/platform_device.h>
50#include <linux/prefetch.h>
50 51
51#include <asm/io.h> 52#include <asm/io.h>
52#include <asm/irq.h> 53#include <asm/irq.h>
@@ -71,12 +72,6 @@ MODULE_ALIAS("platform:sl811-hcd");
71/* for now, use only one transfer register bank */ 72/* for now, use only one transfer register bank */
72#undef USE_B 73#undef USE_B
73 74
74/* this doesn't understand urb->iso_frame_desc[], but if you had a driver
75 * that just queued one ISO frame per URB then iso transfers "should" work
76 * using the normal urb status fields.
77 */
78#define DISABLE_ISO
79
80// #define QUIRK2 75// #define QUIRK2
81#define QUIRK3 76#define QUIRK3
82 77
@@ -807,7 +802,7 @@ static int sl811h_urb_enqueue(
807 int retval; 802 int retval;
808 struct usb_host_endpoint *hep = urb->ep; 803 struct usb_host_endpoint *hep = urb->ep;
809 804
810#ifdef DISABLE_ISO 805#ifndef CONFIG_USB_SL811_HCD_ISO
811 if (type == PIPE_ISOCHRONOUS) 806 if (type == PIPE_ISOCHRONOUS)
812 return -ENOSPC; 807 return -ENOSPC;
813#endif 808#endif
@@ -861,6 +856,7 @@ static int sl811h_urb_enqueue(
861 DBG("dev %d ep%d maxpacket %d\n", 856 DBG("dev %d ep%d maxpacket %d\n",
862 udev->devnum, epnum, ep->maxpacket); 857 udev->devnum, epnum, ep->maxpacket);
863 retval = -EINVAL; 858 retval = -EINVAL;
859 kfree(ep);
864 goto fail; 860 goto fail;
865 } 861 }
866 862
@@ -1110,9 +1106,9 @@ sl811h_hub_descriptor (
1110 1106
1111 desc->wHubCharacteristics = cpu_to_le16(temp); 1107 desc->wHubCharacteristics = cpu_to_le16(temp);
1112 1108
1113 /* two bitmaps: ports removable, and legacy PortPwrCtrlMask */ 1109 /* ports removable, and legacy PortPwrCtrlMask */
1114 desc->bitmap[0] = 0 << 1; 1110 desc->u.hs.DeviceRemovable[0] = 0 << 1;
1115 desc->bitmap[1] = ~0; 1111 desc->u.hs.DeviceRemovable[1] = ~0;
1116} 1112}
1117 1113
1118static void 1114static void