lantiq: add v3.10 patches
[openwrt.git] / target / linux / lantiq / patches-3.10 / 0032-USB-fix-roothub-for-IFXHCD.patch
diff --git a/target/linux/lantiq/patches-3.10/0032-USB-fix-roothub-for-IFXHCD.patch b/target/linux/lantiq/patches-3.10/0032-USB-fix-roothub-for-IFXHCD.patch
new file mode 100644 (file)
index 0000000..e182070
--- /dev/null
@@ -0,0 +1,38 @@
+From 4f861316af87a73fd8738df5436742f9425561b3 Mon Sep 17 00:00:00 2001
+From: John Crispin <blogic@openwrt.org>
+Date: Thu, 6 Dec 2012 19:59:53 +0100
+Subject: [PATCH 32/34] USB: fix roothub for IFXHCD
+
+---
+ arch/mips/lantiq/Kconfig |    1 +
+ drivers/usb/core/hub.c   |    2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/arch/mips/lantiq/Kconfig b/arch/mips/lantiq/Kconfig
+index 1621b1d..4c9a241 100644
+--- a/arch/mips/lantiq/Kconfig
++++ b/arch/mips/lantiq/Kconfig
+@@ -3,6 +3,7 @@ if LANTIQ
+ config SOC_TYPE_XWAY
+       bool
+       select PINCTRL_XWAY
++      select USB_ARCH_HAS_HCD
+       default n
+ choice
+diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
+index feef935..db4fb8e 100644
+--- a/drivers/usb/core/hub.c
++++ b/drivers/usb/core/hub.c
+@@ -4009,7 +4009,7 @@ hub_port_init (struct usb_hub *hub, struct usb_device *udev, int port1,
+               udev->ttport = hdev->ttport;
+       } else if (udev->speed != USB_SPEED_HIGH
+                       && hdev->speed == USB_SPEED_HIGH) {
+-              if (!hub->tt.hub) {
++              if (hdev->parent && !hub->tt.hub) {
+                       dev_err(&udev->dev, "parent hub has no TT\n");
+                       retval = -EINVAL;
+                       goto fail;
+-- 
+1.7.10.4
+