--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
-@@ -1039,6 +1039,11 @@ MODULE_LICENSE ("GPL");
+@@ -1041,6 +1041,11 @@ MODULE_LICENSE ("GPL");
#define PLATFORM_DRIVER ixp4xx_ehci_driver
#endif
#error "missing bus glue for ehci-hcd"
--- a/drivers/usb/host/ehci.h
+++ b/drivers/usb/host/ehci.h
-@@ -755,6 +755,11 @@ ehci_port_speed(struct ehci_hcd *ehci, u
+@@ -764,6 +764,11 @@ ehci_port_speed(struct ehci_hcd *ehci, u
#define writel_be(val, addr) __raw_writel(val, (__force unsigned *)addr)
#endif
static inline unsigned int ehci_readl(const struct ehci_hcd *ehci,
__u32 __iomem * regs)
{
+--- a/drivers/usb/host/Kconfig 2009-07-03 01:33:19.000000000 +0200
++++ b/drivers/usb/host/Kconfig 2009-07-17 17:53:11.000000000 +0200
+@@ -44,7 +44,7 @@
+
+ config USB_EHCI_ROOT_HUB_TT
+ bool "Root Hub Transaction Translators"
+- depends on USB_EHCI_HCD
++ depends on USB_EHCI_HCD && !BCM63XX
+ ---help---
+ Some EHCI chips have vendor-specific extensions to integrate
+ transaction translators, so that no OHCI or UHCI companion