diff options
Diffstat (limited to 'drivers/usb/host/ehci-hcd.c')
-rw-r--r-- | drivers/usb/host/ehci-hcd.c | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c index d0c8f7c03e05..6fee3cd58efe 100644 --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c | |||
@@ -114,6 +114,9 @@ MODULE_PARM_DESC(hird, "host initiated resume duration, +1 for each 75us\n"); | |||
114 | 114 | ||
115 | #define INTR_MASK (STS_IAA | STS_FATAL | STS_PCD | STS_ERR | STS_INT) | 115 | #define INTR_MASK (STS_IAA | STS_FATAL | STS_PCD | STS_ERR | STS_INT) |
116 | 116 | ||
117 | /* for ASPM quirk of ISOC on AMD SB800 */ | ||
118 | static struct pci_dev *amd_nb_dev; | ||
119 | |||
117 | /*-------------------------------------------------------------------------*/ | 120 | /*-------------------------------------------------------------------------*/ |
118 | 121 | ||
119 | #include "ehci.h" | 122 | #include "ehci.h" |
@@ -529,6 +532,11 @@ static void ehci_stop (struct usb_hcd *hcd) | |||
529 | spin_unlock_irq (&ehci->lock); | 532 | spin_unlock_irq (&ehci->lock); |
530 | ehci_mem_cleanup (ehci); | 533 | ehci_mem_cleanup (ehci); |
531 | 534 | ||
535 | if (amd_nb_dev) { | ||
536 | pci_dev_put(amd_nb_dev); | ||
537 | amd_nb_dev = NULL; | ||
538 | } | ||
539 | |||
532 | #ifdef EHCI_STATS | 540 | #ifdef EHCI_STATS |
533 | ehci_dbg (ehci, "irq normal %ld err %ld reclaim %ld (lost %ld)\n", | 541 | ehci_dbg (ehci, "irq normal %ld err %ld reclaim %ld (lost %ld)\n", |
534 | ehci->stats.normal, ehci->stats.error, ehci->stats.reclaim, | 542 | ehci->stats.normal, ehci->stats.error, ehci->stats.reclaim, |
@@ -1166,12 +1174,17 @@ MODULE_LICENSE ("GPL"); | |||
1166 | #define PLATFORM_DRIVER ehci_mxc_driver | 1174 | #define PLATFORM_DRIVER ehci_mxc_driver |
1167 | #endif | 1175 | #endif |
1168 | 1176 | ||
1177 | #ifdef CONFIG_CPU_SUBTYPE_SH7786 | ||
1178 | #include "ehci-sh.c" | ||
1179 | #define PLATFORM_DRIVER ehci_hcd_sh_driver | ||
1180 | #endif | ||
1181 | |||
1169 | #ifdef CONFIG_SOC_AU1200 | 1182 | #ifdef CONFIG_SOC_AU1200 |
1170 | #include "ehci-au1xxx.c" | 1183 | #include "ehci-au1xxx.c" |
1171 | #define PLATFORM_DRIVER ehci_hcd_au1xxx_driver | 1184 | #define PLATFORM_DRIVER ehci_hcd_au1xxx_driver |
1172 | #endif | 1185 | #endif |
1173 | 1186 | ||
1174 | #ifdef CONFIG_ARCH_OMAP3 | 1187 | #ifdef CONFIG_USB_EHCI_HCD_OMAP |
1175 | #include "ehci-omap.c" | 1188 | #include "ehci-omap.c" |
1176 | #define PLATFORM_DRIVER ehci_hcd_omap_driver | 1189 | #define PLATFORM_DRIVER ehci_hcd_omap_driver |
1177 | #endif | 1190 | #endif |
@@ -1221,6 +1234,21 @@ MODULE_LICENSE ("GPL"); | |||
1221 | #define PLATFORM_DRIVER cns3xxx_ehci_driver | 1234 | #define PLATFORM_DRIVER cns3xxx_ehci_driver |
1222 | #endif | 1235 | #endif |
1223 | 1236 | ||
1237 | #ifdef CONFIG_ARCH_VT8500 | ||
1238 | #include "ehci-vt8500.c" | ||
1239 | #define PLATFORM_DRIVER vt8500_ehci_driver | ||
1240 | #endif | ||
1241 | |||
1242 | #ifdef CONFIG_PLAT_SPEAR | ||
1243 | #include "ehci-spear.c" | ||
1244 | #define PLATFORM_DRIVER spear_ehci_hcd_driver | ||
1245 | #endif | ||
1246 | |||
1247 | #ifdef CONFIG_USB_EHCI_MSM | ||
1248 | #include "ehci-msm.c" | ||
1249 | #define PLATFORM_DRIVER ehci_msm_driver | ||
1250 | #endif | ||
1251 | |||
1224 | #if !defined(PCI_DRIVER) && !defined(PLATFORM_DRIVER) && \ | 1252 | #if !defined(PCI_DRIVER) && !defined(PLATFORM_DRIVER) && \ |
1225 | !defined(PS3_SYSTEM_BUS_DRIVER) && !defined(OF_PLATFORM_DRIVER) && \ | 1253 | !defined(PS3_SYSTEM_BUS_DRIVER) && !defined(OF_PLATFORM_DRIVER) && \ |
1226 | !defined(XILINX_OF_PLATFORM_DRIVER) | 1254 | !defined(XILINX_OF_PLATFORM_DRIVER) |