11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# USB Host Controller Drivers 31da177e4SLinus Torvalds# 41da177e4SLinus Torvaldscomment "USB Host Controller Drivers" 51da177e4SLinus Torvalds depends on USB 61da177e4SLinus Torvalds 7e9b29ffcSPeter Korsgaardconfig USB_C67X00_HCD 8e9b29ffcSPeter Korsgaard tristate "Cypress C67x00 HCD support" 9e9b29ffcSPeter Korsgaard depends on USB 10e9b29ffcSPeter Korsgaard help 11e9b29ffcSPeter Korsgaard The Cypress C67x00 (EZ-Host/EZ-OTG) chips are dual-role 12e9b29ffcSPeter Korsgaard host/peripheral/OTG USB controllers. 13e9b29ffcSPeter Korsgaard 14e9b29ffcSPeter Korsgaard Enable this option to support this chip in host controller mode. 15e9b29ffcSPeter Korsgaard If unsure, say N. 16e9b29ffcSPeter Korsgaard 17e9b29ffcSPeter Korsgaard To compile this driver as a module, choose M here: the 18e9b29ffcSPeter Korsgaard module will be called c67x00. 19e9b29ffcSPeter Korsgaard 20eb6bab13SSarah Sharpconfig USB_XHCI_HCD 21eb6bab13SSarah Sharp tristate "xHCI HCD (USB 3.0) support (EXPERIMENTAL)" 22*7b720009SFelipe Balbi depends on USB && USB_ARCH_HAS_XHCI && EXPERIMENTAL 23eb6bab13SSarah Sharp ---help--- 24eb6bab13SSarah Sharp The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0 25eb6bab13SSarah Sharp "SuperSpeed" host controller hardware. 26eb6bab13SSarah Sharp 27eb6bab13SSarah Sharp To compile this driver as a module, choose M here: the 28eb6bab13SSarah Sharp module will be called xhci-hcd. 29eb6bab13SSarah Sharp 30eb6bab13SSarah Sharpconfig USB_XHCI_HCD_DEBUGGING 31eb6bab13SSarah Sharp bool "Debugging for the xHCI host controller" 32eb6bab13SSarah Sharp depends on USB_XHCI_HCD 33eb6bab13SSarah Sharp ---help--- 34eb6bab13SSarah Sharp Say 'Y' to turn on debugging for the xHCI host controller driver. 35eb6bab13SSarah Sharp This will spew debugging output, even in interrupt context. 36eb6bab13SSarah Sharp This should only be used for debugging xHCI driver bugs. 37eb6bab13SSarah Sharp 38eb6bab13SSarah Sharp If unsure, say N. 39eb6bab13SSarah Sharp 401da177e4SLinus Torvaldsconfig USB_EHCI_HCD 411da177e4SLinus Torvalds tristate "EHCI HCD (USB 2.0) support" 4276fa9a24SJordan Crouse depends on USB && USB_ARCH_HAS_EHCI 431da177e4SLinus Torvalds ---help--- 441da177e4SLinus Torvalds The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 451da177e4SLinus Torvalds "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. 461da177e4SLinus Torvalds If your USB host controller supports USB 2.0, you will likely want to 47b967c88eSThierry Vignaud configure this Host Controller Driver. 481da177e4SLinus Torvalds 491da177e4SLinus Torvalds EHCI controllers are packaged with "companion" host controllers (OHCI 501da177e4SLinus Torvalds or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports 51b3c29d85SJesper Juhl will connect to EHCI if the device is high speed, otherwise they 521da177e4SLinus Torvalds connect to a companion controller. If you configure EHCI, you should 531da177e4SLinus Torvalds probably configure the OHCI (for NEC and some other vendors) USB Host 541da177e4SLinus Torvalds Controller Driver or UHCI (for Via motherboards) Host Controller 551da177e4SLinus Torvalds Driver too. 561da177e4SLinus Torvalds 571da177e4SLinus Torvalds You may want to read <file:Documentation/usb/ehci.txt>. 581da177e4SLinus Torvalds 591da177e4SLinus Torvalds To compile this driver as a module, choose M here: the 601da177e4SLinus Torvalds module will be called ehci-hcd. 611da177e4SLinus Torvalds 621da177e4SLinus Torvaldsconfig USB_EHCI_ROOT_HUB_TT 639ec249a6SRobert P. J. Day bool "Root Hub Transaction Translators" 649ec249a6SRobert P. J. Day depends on USB_EHCI_HCD 651da177e4SLinus Torvalds ---help--- 661da177e4SLinus Torvalds Some EHCI chips have vendor-specific extensions to integrate 671da177e4SLinus Torvalds transaction translators, so that no OHCI or UHCI companion 681da177e4SLinus Torvalds controller is needed. It's safe to say "y" even if your 691da177e4SLinus Torvalds controller doesn't support this feature. 701da177e4SLinus Torvalds 71ba47f66bSDan Streetman This supports the EHCI implementation that's originally 72ba47f66bSDan Streetman from ARC, and has since changed hands a few times. 73ba47f66bSDan Streetman 74ba47f66bSDan Streetmanconfig USB_EHCI_TT_NEWSCHED 7537cd681cSAlan Stern bool "Improved Transaction Translator scheduling" 7637cd681cSAlan Stern depends on USB_EHCI_HCD 7737cd681cSAlan Stern default y 78ba47f66bSDan Streetman ---help--- 79ba47f66bSDan Streetman This changes the periodic scheduling code to fill more of the low 80ba47f66bSDan Streetman and full speed bandwidth available from the Transaction Translator 81ba47f66bSDan Streetman (TT) in USB 2.0 hubs. Without this, only one transfer will be 82ba47f66bSDan Streetman issued in each microframe, significantly reducing the number of 83ba47f66bSDan Streetman periodic low/fullspeed transfers possible. 84ba47f66bSDan Streetman 85ba47f66bSDan Streetman If you have multiple periodic low/fullspeed devices connected to a 86ba47f66bSDan Streetman highspeed USB hub which is connected to a highspeed USB Host 87ba47f66bSDan Streetman Controller, and some of those devices will not work correctly 8837cd681cSAlan Stern (possibly due to "ENOSPC" or "-28" errors), say Y. Conversely, if 8937cd681cSAlan Stern you have only one such device and it doesn't work, you could try 9037cd681cSAlan Stern saying N. 91ba47f66bSDan Streetman 9237cd681cSAlan Stern If unsure, say Y. 931da177e4SLinus Torvalds 9422ced687SAnoopconfig USB_EHCI_HCD_PMC_MSP 9522ced687SAnoop tristate "EHCI support for on-chip PMC MSP71xx USB controller" 9622ced687SAnoop depends on USB_EHCI_HCD && MSP_HAS_USB 9722ced687SAnoop default n 9822ced687SAnoop select USB_EHCI_BIG_ENDIAN_DESC 9922ced687SAnoop select USB_EHCI_BIG_ENDIAN_MMIO 10022ced687SAnoop ---help--- 10122ced687SAnoop Enables support for the onchip USB controller on the PMC_MSP7100 Family SoC's. 10222ced687SAnoop If unsure, say N. 10322ced687SAnoop 104083522d7SBenjamin Herrenschmidtconfig USB_EHCI_BIG_ENDIAN_MMIO 105083522d7SBenjamin Herrenschmidt bool 1061643accdSDavid Daney depends on USB_EHCI_HCD && (PPC_CELLEB || PPC_PS3 || 440EPX || \ 1071643accdSDavid Daney ARCH_IXP4XX || XPS_USB_HCD_XILINX || \ 10822ced687SAnoop PPC_MPC512x || CPU_CAVIUM_OCTEON || \ 1099be03929SJan Andersson PMC_MSP || SPARC_LEON) 1104d68c0beSStefan Roese default y 111083522d7SBenjamin Herrenschmidt 1126dbd682bSStefan Roeseconfig USB_EHCI_BIG_ENDIAN_DESC 1136dbd682bSStefan Roese bool 114230f7edeSAnatolij Gustschin depends on USB_EHCI_HCD && (440EPX || ARCH_IXP4XX || XPS_USB_HCD_XILINX || \ 1159be03929SJan Andersson PPC_MPC512x || PMC_MSP || SPARC_LEON) 1164d68c0beSStefan Roese default y 1176dbd682bSStefan Roese 11808d3c18eSJulie Zhuconfig XPS_USB_HCD_XILINX 11908d3c18eSJulie Zhu bool "Use Xilinx usb host EHCI controller core" 12008d3c18eSJulie Zhu depends on USB_EHCI_HCD && (PPC32 || MICROBLAZE) 12108d3c18eSJulie Zhu select USB_EHCI_BIG_ENDIAN_DESC 12208d3c18eSJulie Zhu select USB_EHCI_BIG_ENDIAN_MMIO 12308d3c18eSJulie Zhu ---help--- 12408d3c18eSJulie Zhu Xilinx xps USB host controller core is EHCI compilant and has 12508d3c18eSJulie Zhu transaction translator built-in. It can be configured to either 12608d3c18eSJulie Zhu support both high speed and full speed devices, or high speed 12708d3c18eSJulie Zhu devices only. 12808d3c18eSJulie Zhu 129126512e3SAnatolij Gustschinconfig USB_FSL_MPH_DR_OF 130126512e3SAnatolij Gustschin tristate 131126512e3SAnatolij Gustschin 132ba02978aSLi Yangconfig USB_EHCI_FSL 133b5937a41SAnton Vorontsov bool "Support for Freescale on-chip EHCI USB controller" 134b5937a41SAnton Vorontsov depends on USB_EHCI_HCD && FSL_SOC 135ba02978aSLi Yang select USB_EHCI_ROOT_HUB_TT 136018b97d0SMarc Kleine-Budde select USB_FSL_MPH_DR_OF if OF 137ba02978aSLi Yang ---help--- 138ba02978aSLi Yang Variation of ARC USB block used in some Freescale chips. 139ba02978aSLi Yang 1407e8d5cd9SDaniel Mackconfig USB_EHCI_MXC 1417e8d5cd9SDaniel Mack bool "Support for Freescale on-chip EHCI USB controller" 1427e8d5cd9SDaniel Mack depends on USB_EHCI_HCD && ARCH_MXC 1437e8d5cd9SDaniel Mack select USB_EHCI_ROOT_HUB_TT 1447e8d5cd9SDaniel Mack ---help--- 1457e8d5cd9SDaniel Mack Variation of ARC USB block used in some Freescale chips. 1467e8d5cd9SDaniel Mack 1477f124f4bSKeshava Munegowdaconfig USB_EHCI_HCD_OMAP 1487f124f4bSKeshava Munegowda bool "EHCI support for OMAP3 and later chips" 1497f124f4bSKeshava Munegowda depends on USB_EHCI_HCD && ARCH_OMAP 1507f124f4bSKeshava Munegowda default y 1517f124f4bSKeshava Munegowda --- help --- 1527f124f4bSKeshava Munegowda Enables support for the on-chip EHCI controller on 1537f124f4bSKeshava Munegowda OMAP3 and later chips. 1547f124f4bSKeshava Munegowda 155b0848aeaSPavankumar Kondeticonfig USB_EHCI_MSM 156b0848aeaSPavankumar Kondeti bool "Support for MSM on-chip EHCI USB controller" 157b0848aeaSPavankumar Kondeti depends on USB_EHCI_HCD && ARCH_MSM 158b0848aeaSPavankumar Kondeti select USB_EHCI_ROOT_HUB_TT 159dfb2130cSPavankumar Kondeti select USB_MSM_OTG 160b0848aeaSPavankumar Kondeti ---help--- 161b0848aeaSPavankumar Kondeti Enables support for the USB Host controller present on the 162b0848aeaSPavankumar Kondeti Qualcomm chipsets. Root Hub has inbuilt TT. 163b0848aeaSPavankumar Kondeti This driver depends on OTG driver for PHY initialization, 1648bb6a164SPavankumar Kondeti clock management, powering up VBUS, and power management. 1658cf28f1fSPavankumar Kondeti This driver is not supported on boards like trout which 1668cf28f1fSPavankumar Kondeti has an external PHY. 167b0848aeaSPavankumar Kondeti 16879ad3b5aSBenoit Gobyconfig USB_EHCI_TEGRA 16979ad3b5aSBenoit Goby boolean "NVIDIA Tegra HCD support" 17079ad3b5aSBenoit Goby depends on USB_EHCI_HCD && ARCH_TEGRA 17179ad3b5aSBenoit Goby select USB_EHCI_ROOT_HUB_TT 17279ad3b5aSBenoit Goby help 17379ad3b5aSBenoit Goby This driver enables support for the internal USB Host Controllers 17479ad3b5aSBenoit Goby found in NVIDIA Tegra SoCs. The controllers are EHCI compliant. 17579ad3b5aSBenoit Goby 176da0e8fb0SValentine Barshakconfig USB_EHCI_HCD_PPC_OF 177da0e8fb0SValentine Barshak bool "EHCI support for PPC USB controller on OF platform bus" 178da0e8fb0SValentine Barshak depends on USB_EHCI_HCD && PPC_OF 179da0e8fb0SValentine Barshak default y 180da0e8fb0SValentine Barshak ---help--- 181da0e8fb0SValentine Barshak Enables support for the USB controller present on the PowerPC 182da0e8fb0SValentine Barshak OpenFirmware platform bus. 183da0e8fb0SValentine Barshak 18460b0bf0fSYoshihiro Shimodaconfig USB_EHCI_SH 18560b0bf0fSYoshihiro Shimoda bool "EHCI support for SuperH USB controller" 18660b0bf0fSYoshihiro Shimoda depends on USB_EHCI_HCD && SUPERH 18760b0bf0fSYoshihiro Shimoda ---help--- 18860b0bf0fSYoshihiro Shimoda Enables support for the on-chip EHCI controller on the SuperH. 18960b0bf0fSYoshihiro Shimoda If you use the PCI EHCI controller, this option is not necessary. 19060b0bf0fSYoshihiro Shimoda 1911bcc5aa8SJoonyoung Shimconfig USB_EHCI_S5P 1921bcc5aa8SJoonyoung Shim boolean "S5P EHCI support" 1931bcc5aa8SJoonyoung Shim depends on USB_EHCI_HCD && PLAT_S5P 1941bcc5aa8SJoonyoung Shim help 1951bcc5aa8SJoonyoung Shim Enable support for the S5P SOC's on-chip EHCI controller. 1961bcc5aa8SJoonyoung Shim 197586dfc8cSWan ZongShunconfig USB_W90X900_EHCI 198586dfc8cSWan ZongShun bool "W90X900(W90P910) EHCI support" 199586dfc8cSWan ZongShun depends on USB_EHCI_HCD && ARCH_W90X900 200586dfc8cSWan ZongShun ---help--- 201586dfc8cSWan ZongShun Enables support for the W90X900 USB controller 202586dfc8cSWan ZongShun 203760efe69SMac Linconfig USB_CNS3XXX_EHCI 204760efe69SMac Lin bool "Cavium CNS3XXX EHCI Module" 205760efe69SMac Lin depends on USB_EHCI_HCD && ARCH_CNS3XXX 206760efe69SMac Lin ---help--- 207760efe69SMac Lin Enable support for the CNS3XXX SOC's on-chip EHCI controller. 208760efe69SMac Lin It is needed for high-speed (480Mbit/sec) USB 2.0 device 209760efe69SMac Lin support. 210760efe69SMac Lin 211502fa841SGabor Juhosconfig USB_EHCI_ATH79 212502fa841SGabor Juhos bool "EHCI support for AR7XXX/AR9XXX SoCs" 213502fa841SGabor Juhos depends on USB_EHCI_HCD && (SOC_AR71XX || SOC_AR724X || SOC_AR913X) 214502fa841SGabor Juhos select USB_EHCI_ROOT_HUB_TT 215502fa841SGabor Juhos default y 216502fa841SGabor Juhos ---help--- 217502fa841SGabor Juhos Enables support for the built-in EHCI controller present 218502fa841SGabor Juhos on the Atheros AR7XXX/AR9XXX SoCs. 219502fa841SGabor Juhos 220b92a78e5SRodolfo Giometticonfig USB_OXU210HP_HCD 221b92a78e5SRodolfo Giometti tristate "OXU210HP HCD support" 222b92a78e5SRodolfo Giometti depends on USB 223b92a78e5SRodolfo Giometti ---help--- 224b92a78e5SRodolfo Giometti The OXU210HP is an USB host/OTG/device controller. Enable this 225b92a78e5SRodolfo Giometti option if your board has this chip. If unsure, say N. 226b92a78e5SRodolfo Giometti 227b92a78e5SRodolfo Giometti This driver does not support isochronous transfers and doesn't 228b92a78e5SRodolfo Giometti implement OTG nor USB device controllers. 229b92a78e5SRodolfo Giometti 230b92a78e5SRodolfo Giometti To compile this driver as a module, choose M here: the 231b92a78e5SRodolfo Giometti module will be called oxu210hp-hcd. 232b92a78e5SRodolfo Giometti 2334808a1c0SOlav Kongasconfig USB_ISP116X_HCD 2344808a1c0SOlav Kongas tristate "ISP116X HCD support" 2354808a1c0SOlav Kongas depends on USB 2364808a1c0SOlav Kongas ---help--- 2374808a1c0SOlav Kongas The ISP1160 and ISP1161 chips are USB host controllers. Enable this 2384808a1c0SOlav Kongas option if your board has this chip. If unsure, say N. 2394808a1c0SOlav Kongas 2404808a1c0SOlav Kongas This driver does not support isochronous transfers. 2414808a1c0SOlav Kongas 2424808a1c0SOlav Kongas To compile this driver as a module, choose M here: the 2434808a1c0SOlav Kongas module will be called isp116x-hcd. 2444808a1c0SOlav Kongas 245db11e47dSSebastian Siewiorconfig USB_ISP1760_HCD 246db11e47dSSebastian Siewior tristate "ISP 1760 HCD support" 247f7e7aa58SCatalin Marinas depends on USB && EXPERIMENTAL 248db11e47dSSebastian Siewior ---help--- 249db11e47dSSebastian Siewior The ISP1760 chip is a USB 2.0 host controller. 250db11e47dSSebastian Siewior 251db11e47dSSebastian Siewior This driver does not support isochronous transfers or OTG. 252ff30bf1cSSebastian Andrzej Siewior This USB controller is usually attached to a non-DMA-Master 253ff30bf1cSSebastian Andrzej Siewior capable bus. NXP's eval kit brings this chip on PCI card 254ff30bf1cSSebastian Andrzej Siewior where the chip itself is behind a PLB to simulate such 255ff30bf1cSSebastian Andrzej Siewior a bus. 256db11e47dSSebastian Siewior 257db11e47dSSebastian Siewior To compile this driver as a module, choose M here: the 258ff30bf1cSSebastian Andrzej Siewior module will be called isp1760. 259db11e47dSSebastian Siewior 260a9d43091SLothar Wassmannconfig USB_ISP1362_HCD 261a9d43091SLothar Wassmann tristate "ISP1362 HCD support" 262a9d43091SLothar Wassmann depends on USB 263a9d43091SLothar Wassmann default N 264a9d43091SLothar Wassmann ---help--- 265a9d43091SLothar Wassmann Supports the Philips ISP1362 chip as a host controller 266a9d43091SLothar Wassmann 267a9d43091SLothar Wassmann This driver does not support isochronous transfers. 268a9d43091SLothar Wassmann 269a9d43091SLothar Wassmann To compile this driver as a module, choose M here: the 270a9d43091SLothar Wassmann module will be called isp1362-hcd. 271a9d43091SLothar Wassmann 2721da177e4SLinus Torvaldsconfig USB_OHCI_HCD 2731da177e4SLinus Torvalds tristate "OHCI HCD support" 2741da177e4SLinus Torvalds depends on USB && USB_ARCH_HAS_OHCI 2751da177e4SLinus Torvalds select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 2762bf5fa13SDavid Brownell select USB_OTG_UTILS if ARCH_OMAP 2771da177e4SLinus Torvalds ---help--- 2781da177e4SLinus Torvalds The Open Host Controller Interface (OHCI) is a standard for accessing 2791da177e4SLinus Torvalds USB 1.1 host controller hardware. It does more in hardware than Intel's 2801da177e4SLinus Torvalds UHCI specification. If your USB host controller follows the OHCI spec, 2811da177e4SLinus Torvalds say Y. On most non-x86 systems, and on x86 hardware that's not using a 2821da177e4SLinus Torvalds USB controller from Intel or VIA, this is appropriate. If your host 2831da177e4SLinus Torvalds controller doesn't use PCI, this is probably appropriate. For a PCI 2841da177e4SLinus Torvalds based system where you're not sure, the "lspci -v" entry will list the 2851da177e4SLinus Torvalds right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI. 2861da177e4SLinus Torvalds 2871da177e4SLinus Torvalds To compile this driver as a module, choose M here: the 2881da177e4SLinus Torvalds module will be called ohci-hcd. 2891da177e4SLinus Torvalds 290968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP1 291968b448bSAnand Gadiyar bool "OHCI support for OMAP1/2 chips" 292968b448bSAnand Gadiyar depends on USB_OHCI_HCD && (ARCH_OMAP1 || ARCH_OMAP2) 293968b448bSAnand Gadiyar default y 294968b448bSAnand Gadiyar ---help--- 295968b448bSAnand Gadiyar Enables support for the OHCI controller on OMAP1/2 chips. 296968b448bSAnand Gadiyar 297968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP3 298968b448bSAnand Gadiyar bool "OHCI support for OMAP3 and later chips" 299968b448bSAnand Gadiyar depends on USB_OHCI_HCD && (ARCH_OMAP3 || ARCH_OMAP4) 300968b448bSAnand Gadiyar default y 301968b448bSAnand Gadiyar ---help--- 302968b448bSAnand Gadiyar Enables support for the on-chip OHCI controller on 303968b448bSAnand Gadiyar OMAP3 and later chips. 304968b448bSAnand Gadiyar 30590e6ca5cSGabor Juhosconfig USB_OHCI_ATH79 30690e6ca5cSGabor Juhos bool "USB OHCI support for the Atheros AR71XX/AR7240 SoCs" 30790e6ca5cSGabor Juhos depends on USB_OHCI_HCD && (SOC_AR71XX || SOC_AR724X) 30890e6ca5cSGabor Juhos default y 30990e6ca5cSGabor Juhos help 31090e6ca5cSGabor Juhos Enables support for the built-in OHCI controller present on the 31190e6ca5cSGabor Juhos Atheros AR71XX/AR7240 SoCs. 31290e6ca5cSGabor Juhos 3131da177e4SLinus Torvaldsconfig USB_OHCI_HCD_PPC_SOC 3141da177e4SLinus Torvalds bool "OHCI support for on-chip PPC USB controller" 3151da177e4SLinus Torvalds depends on USB_OHCI_HCD && (STB03xxx || PPC_MPC52xx) 3161da177e4SLinus Torvalds default y 31711d1a4aaSBenjamin Herrenschmidt select USB_OHCI_BIG_ENDIAN_DESC 31811d1a4aaSBenjamin Herrenschmidt select USB_OHCI_BIG_ENDIAN_MMIO 3191da177e4SLinus Torvalds ---help--- 3201da177e4SLinus Torvalds Enables support for the USB controller on the MPC52xx or 3211da177e4SLinus Torvalds STB03xxx processor chip. If unsure, say Y. 3221da177e4SLinus Torvalds 323495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_BE 32445e83889SArnd Bergmann bool "OHCI support for OF platform bus (big endian)" 32545e83889SArnd Bergmann depends on USB_OHCI_HCD && PPC_OF 326495a678fSSylvain Munaut select USB_OHCI_BIG_ENDIAN_DESC 327495a678fSSylvain Munaut select USB_OHCI_BIG_ENDIAN_MMIO 32845e83889SArnd Bergmann ---help--- 32945e83889SArnd Bergmann Enables support for big-endian USB controllers present on the 33045e83889SArnd Bergmann OpenFirmware platform bus. 331495a678fSSylvain Munaut 332495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_LE 33345e83889SArnd Bergmann bool "OHCI support for OF platform bus (little endian)" 33445e83889SArnd Bergmann depends on USB_OHCI_HCD && PPC_OF 335495a678fSSylvain Munaut select USB_OHCI_LITTLE_ENDIAN 33645e83889SArnd Bergmann ---help--- 33745e83889SArnd Bergmann Enables support for little-endian USB controllers present on the 33845e83889SArnd Bergmann OpenFirmware platform bus. 33945e83889SArnd Bergmann 34045e83889SArnd Bergmannconfig USB_OHCI_HCD_PPC_OF 34145e83889SArnd Bergmann bool 34245e83889SArnd Bergmann depends on USB_OHCI_HCD && PPC_OF 34345e83889SArnd Bergmann default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE 344495a678fSSylvain Munaut 3451da177e4SLinus Torvaldsconfig USB_OHCI_HCD_PCI 3461da177e4SLinus Torvalds bool "OHCI support for PCI-bus USB controllers" 347495a678fSSylvain Munaut depends on USB_OHCI_HCD && PCI && (STB03xxx || PPC_MPC52xx || USB_OHCI_HCD_PPC_OF) 3481da177e4SLinus Torvalds default y 3491da177e4SLinus Torvalds select USB_OHCI_LITTLE_ENDIAN 3501da177e4SLinus Torvalds ---help--- 3511da177e4SLinus Torvalds Enables support for PCI-bus plug-in USB controller cards. 3521da177e4SLinus Torvalds If unsure, say Y. 3531da177e4SLinus Torvalds 354c604e851SMichael Bueschconfig USB_OHCI_HCD_SSB 355c604e851SMichael Buesch bool "OHCI support for Broadcom SSB OHCI core" 3561011b326SAdrian Bunk depends on USB_OHCI_HCD && (SSB = y || SSB = USB_OHCI_HCD) && EXPERIMENTAL 357c604e851SMichael Buesch default n 358c604e851SMichael Buesch ---help--- 359c604e851SMichael Buesch Support for the Sonics Silicon Backplane (SSB) attached 360c604e851SMichael Buesch Broadcom USB OHCI core. 361c604e851SMichael Buesch 362c604e851SMichael Buesch This device is present in some embedded devices with 363c604e851SMichael Buesch Broadcom based SSB bus. 364c604e851SMichael Buesch 365c604e851SMichael Buesch If unsure, say N. 366c604e851SMichael Buesch 36760b0bf0fSYoshihiro Shimodaconfig USB_OHCI_SH 36860b0bf0fSYoshihiro Shimoda bool "OHCI support for SuperH USB controller" 36960b0bf0fSYoshihiro Shimoda depends on USB_OHCI_HCD && SUPERH 37060b0bf0fSYoshihiro Shimoda ---help--- 37160b0bf0fSYoshihiro Shimoda Enables support for the on-chip OHCI controller on the SuperH. 37260b0bf0fSYoshihiro Shimoda If you use the PCI OHCI controller, this option is not necessary. 37360b0bf0fSYoshihiro Shimoda 374760efe69SMac Linconfig USB_CNS3XXX_OHCI 375760efe69SMac Lin bool "Cavium CNS3XXX OHCI Module" 376760efe69SMac Lin depends on USB_OHCI_HCD && ARCH_CNS3XXX 377760efe69SMac Lin ---help--- 378760efe69SMac Lin Enable support for the CNS3XXX SOC's on-chip OHCI controller. 379760efe69SMac Lin It is needed for low-speed USB 1.0 device support. 380760efe69SMac Lin 38111d1a4aaSBenjamin Herrenschmidtconfig USB_OHCI_BIG_ENDIAN_DESC 38211d1a4aaSBenjamin Herrenschmidt bool 38311d1a4aaSBenjamin Herrenschmidt depends on USB_OHCI_HCD 38411d1a4aaSBenjamin Herrenschmidt default n 38511d1a4aaSBenjamin Herrenschmidt 38611d1a4aaSBenjamin Herrenschmidtconfig USB_OHCI_BIG_ENDIAN_MMIO 3871da177e4SLinus Torvalds bool 3881da177e4SLinus Torvalds depends on USB_OHCI_HCD 3891da177e4SLinus Torvalds default n 3901da177e4SLinus Torvalds 3911da177e4SLinus Torvaldsconfig USB_OHCI_LITTLE_ENDIAN 3921da177e4SLinus Torvalds bool 3931da177e4SLinus Torvalds depends on USB_OHCI_HCD 3941da177e4SLinus Torvalds default n if STB03xxx || PPC_MPC52xx 3951da177e4SLinus Torvalds default y 3961da177e4SLinus Torvalds 3971da177e4SLinus Torvaldsconfig USB_UHCI_HCD 3981da177e4SLinus Torvalds tristate "UHCI HCD (most Intel and VIA) support" 3993db7739cSJan Andersson depends on USB && (PCI || SPARC_LEON) 4001da177e4SLinus Torvalds ---help--- 4011da177e4SLinus Torvalds The Universal Host Controller Interface is a standard by Intel for 4021da177e4SLinus Torvalds accessing the USB hardware in the PC (which is also called the USB 4031da177e4SLinus Torvalds host controller). If your USB host controller conforms to this 4041da177e4SLinus Torvalds standard, you may want to say Y, but see below. All recent boards 4051da177e4SLinus Torvalds with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, 4061da177e4SLinus Torvalds i810, i820) conform to this standard. Also all VIA PCI chipsets 4071da177e4SLinus Torvalds (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 4083db7739cSJan Andersson 133) and LEON/GRLIB SoCs with the GRUSBHC controller. 4093db7739cSJan Andersson If unsure, say Y. 4101da177e4SLinus Torvalds 4111da177e4SLinus Torvalds To compile this driver as a module, choose M here: the 4121da177e4SLinus Torvalds module will be called uhci-hcd. 4131da177e4SLinus Torvalds 414d3219d1cSJan Anderssonconfig USB_UHCI_SUPPORT_NON_PCI_HC 415d3219d1cSJan Andersson bool 416d3219d1cSJan Andersson depends on USB_UHCI_HCD 4173db7739cSJan Andersson default y if SPARC_LEON 418d3219d1cSJan Andersson 4198452c674SJan Anderssonconfig USB_UHCI_BIG_ENDIAN_MMIO 4208452c674SJan Andersson bool 421fda928acSJan Andersson depends on USB_UHCI_SUPPORT_NON_PCI_HC && SPARC_LEON 422fda928acSJan Andersson default y 4238452c674SJan Andersson 42451e2f62fSJan Anderssonconfig USB_UHCI_BIG_ENDIAN_DESC 42551e2f62fSJan Andersson bool 426fda928acSJan Andersson depends on USB_UHCI_SUPPORT_NON_PCI_HC && SPARC_LEON 427fda928acSJan Andersson default y 42851e2f62fSJan Andersson 429236dd4d1SAnton Vorontsovconfig USB_FHCI_HCD 430236dd4d1SAnton Vorontsov tristate "Freescale QE USB Host Controller support" 431236dd4d1SAnton Vorontsov depends on USB && OF_GPIO && QE_GPIO && QUICC_ENGINE 432236dd4d1SAnton Vorontsov select FSL_GTM 433236dd4d1SAnton Vorontsov select QE_USB 434236dd4d1SAnton Vorontsov help 435236dd4d1SAnton Vorontsov This driver enables support for Freescale QE USB Host Controller 436236dd4d1SAnton Vorontsov (as found on MPC8360 and MPC8323 processors), the driver supports 437236dd4d1SAnton Vorontsov Full and Low Speed USB. 438236dd4d1SAnton Vorontsov 439236dd4d1SAnton Vorontsovconfig FHCI_DEBUG 440236dd4d1SAnton Vorontsov bool "Freescale QE USB Host Controller debug support" 441236dd4d1SAnton Vorontsov depends on USB_FHCI_HCD && DEBUG_FS 442236dd4d1SAnton Vorontsov help 443236dd4d1SAnton Vorontsov Say "y" to see some FHCI debug information and statistics 44425985edcSLucas De Marchi through debugfs. 445236dd4d1SAnton Vorontsov 446d774efeaSTony Olechconfig USB_U132_HCD 447d774efeaSTony Olech tristate "Elan U132 Adapter Host Controller" 448d774efeaSTony Olech depends on USB && USB_FTDI_ELAN 449d774efeaSTony Olech default M 450d774efeaSTony Olech help 451d774efeaSTony Olech The U132 adapter is a USB to CardBus adapter specifically designed 452d774efeaSTony Olech for PC cards that contain an OHCI host controller. Typical PC cards 453d774efeaSTony Olech are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132 454d774efeaSTony Olech adapter will *NOT* work with PC cards that do not contain an OHCI 455d774efeaSTony Olech controller. 456d774efeaSTony Olech 4573cb2fcccSMatt LaPlante For those PC cards that contain multiple OHCI controllers only the 458d774efeaSTony Olech first one is used. 459d774efeaSTony Olech 460d774efeaSTony Olech The driver consists of two modules, the "ftdi-elan" module is a 461d774efeaSTony Olech USB client driver that interfaces to the FTDI chip within ELAN's 462d774efeaSTony Olech USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host 463d774efeaSTony Olech controller driver that talks to the OHCI controller within the 464d774efeaSTony Olech CardBus cards that are inserted in the U132 adapter. 465d774efeaSTony Olech 466d774efeaSTony Olech This driver has been tested with a CardBus OHCI USB adapter, and 467d774efeaSTony Olech worked with a USB PEN Drive inserted into the first USB port of 468d774efeaSTony Olech the PCCARD. A rather pointless thing to do, but useful for testing. 469d774efeaSTony Olech 470d774efeaSTony Olech It is safe to say M here. 471d774efeaSTony Olech 472d774efeaSTony Olech See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php> 473d774efeaSTony Olech 4741da177e4SLinus Torvaldsconfig USB_SL811_HCD 4751da177e4SLinus Torvalds tristate "SL811HS HCD support" 4761da177e4SLinus Torvalds depends on USB 4771da177e4SLinus Torvalds help 4781da177e4SLinus Torvalds The SL811HS is a single-port USB controller that supports either 4791da177e4SLinus Torvalds host side or peripheral side roles. Enable this option if your 4801da177e4SLinus Torvalds board has this chip, and you want to use it as a host controller. 4811da177e4SLinus Torvalds If unsure, say N. 4821da177e4SLinus Torvalds 4831da177e4SLinus Torvalds To compile this driver as a module, choose M here: the 4841da177e4SLinus Torvalds module will be called sl811-hcd. 4851da177e4SLinus Torvalds 486ad7c56f0SMike Frysingerconfig USB_SL811_HCD_ISO 487ad7c56f0SMike Frysinger bool "partial ISO support" 488ad7c56f0SMike Frysinger depends on USB_SL811_HCD 489ad7c56f0SMike Frysinger help 490ad7c56f0SMike Frysinger The driver doesn't support iso_frame_desc (yet), but for some simple 491ad7c56f0SMike Frysinger devices that just queue one ISO frame per URB, then ISO transfers 492ad7c56f0SMike Frysinger "should" work using the normal urb status fields. 493ad7c56f0SMike Frysinger 494ad7c56f0SMike Frysinger If unsure, say N. 495ad7c56f0SMike Frysinger 496c6de2b64SDavid Brownellconfig USB_SL811_CS 497c6de2b64SDavid Brownell tristate "CF/PCMCIA support for SL811HS HCD" 498c6de2b64SDavid Brownell depends on USB_SL811_HCD && PCMCIA 499c6de2b64SDavid Brownell help 500c6de2b64SDavid Brownell Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC 501c6de2b64SDavid Brownell REX-CFU1U CF card (often used with PDAs). If unsure, say N. 502c6de2b64SDavid Brownell 503c6de2b64SDavid Brownell To compile this driver as a module, choose M here: the 504c6de2b64SDavid Brownell module will be called "sl811_cs". 505c6de2b64SDavid Brownell 5065d304358SYoshihiro Shimodaconfig USB_R8A66597_HCD 507fa0de2b6SM4rkusXXL tristate "R8A66597 HCD support" 5085d304358SYoshihiro Shimoda depends on USB 5095d304358SYoshihiro Shimoda help 5105d304358SYoshihiro Shimoda The R8A66597 is a USB 2.0 host and peripheral controller. 5115d304358SYoshihiro Shimoda 5125d304358SYoshihiro Shimoda Enable this option if your board has this chip, and you want 5135d304358SYoshihiro Shimoda to use it as a host controller. If unsure, say N. 5145d304358SYoshihiro Shimoda 5155d304358SYoshihiro Shimoda To compile this driver as a module, choose M here: the 5165d304358SYoshihiro Shimoda module will be called r8a66597-hcd. 5175d304358SYoshihiro Shimoda 5187e6133aaSDavid Vrabelconfig USB_WHCI_HCD 5196a7c3e46SDavid Vrabel tristate "Wireless USB Host Controller Interface (WHCI) driver (EXPERIMENTAL)" 5206a7c3e46SDavid Vrabel depends on EXPERIMENTAL 5217e6133aaSDavid Vrabel depends on PCI && USB 5227e6133aaSDavid Vrabel select USB_WUSB 5237e6133aaSDavid Vrabel select UWB_WHCI 5247e6133aaSDavid Vrabel help 5257e6133aaSDavid Vrabel A driver for PCI-based Wireless USB Host Controllers that are 5267e6133aaSDavid Vrabel compliant with the WHCI specification. 5277e6133aaSDavid Vrabel 5287e6133aaSDavid Vrabel To compile this driver a module, choose M here: the module 5297e6133aaSDavid Vrabel will be called "whci-hcd". 530d09318b8SInaky Perez-Gonzalez 531d09318b8SInaky Perez-Gonzalezconfig USB_HWA_HCD 5326a7c3e46SDavid Vrabel tristate "Host Wire Adapter (HWA) driver (EXPERIMENTAL)" 5336a7c3e46SDavid Vrabel depends on EXPERIMENTAL 534d09318b8SInaky Perez-Gonzalez depends on USB 535d09318b8SInaky Perez-Gonzalez select USB_WUSB 536d09318b8SInaky Perez-Gonzalez select UWB_HWA 537d09318b8SInaky Perez-Gonzalez help 538d09318b8SInaky Perez-Gonzalez This driver enables you to connect Wireless USB devices to 539d09318b8SInaky Perez-Gonzalez your system using a Host Wire Adaptor USB dongle. This is an 540d09318b8SInaky Perez-Gonzalez UWB Radio Controller and WUSB Host Controller connected to 541d09318b8SInaky Perez-Gonzalez your machine via USB (specified in WUSB1.0). 542d09318b8SInaky Perez-Gonzalez 543d09318b8SInaky Perez-Gonzalez To compile this driver a module, choose M here: the module 544d09318b8SInaky Perez-Gonzalez will be called "hwa-hc". 54523d3e7a6SMartin Fuzzey 54623d3e7a6SMartin Fuzzeyconfig USB_IMX21_HCD 5475de9ec4dSSascha Hauer tristate "i.MX21 HCD support" 5485de9ec4dSSascha Hauer depends on USB && ARM && ARCH_MXC 54923d3e7a6SMartin Fuzzey help 55023d3e7a6SMartin Fuzzey This driver enables support for the on-chip USB host in the 5515de9ec4dSSascha Hauer i.MX21 processor. 55223d3e7a6SMartin Fuzzey 55323d3e7a6SMartin Fuzzey To compile this driver as a module, choose M here: the 55423d3e7a6SMartin Fuzzey module will be called "imx21-hcd". 55523d3e7a6SMartin Fuzzey 5561643accdSDavid Daneyconfig USB_OCTEON_EHCI 5571643accdSDavid Daney bool "Octeon on-chip EHCI support" 5581643accdSDavid Daney depends on USB && USB_EHCI_HCD && CPU_CAVIUM_OCTEON 5591643accdSDavid Daney default n 5601643accdSDavid Daney select USB_EHCI_BIG_ENDIAN_MMIO 5611643accdSDavid Daney help 5621643accdSDavid Daney Enable support for the Octeon II SOC's on-chip EHCI 5631643accdSDavid Daney controller. It is needed for high-speed (480Mbit/sec) 5641643accdSDavid Daney USB 2.0 device support. All CN6XXX based chips with USB are 5651643accdSDavid Daney supported. 5661643accdSDavid Daney 5671643accdSDavid Daneyconfig USB_OCTEON_OHCI 5681643accdSDavid Daney bool "Octeon on-chip OHCI support" 5691643accdSDavid Daney depends on USB && USB_OHCI_HCD && CPU_CAVIUM_OCTEON 5701643accdSDavid Daney default USB_OCTEON_EHCI 5711643accdSDavid Daney select USB_OHCI_BIG_ENDIAN_MMIO 5721643accdSDavid Daney select USB_OHCI_LITTLE_ENDIAN 5731643accdSDavid Daney help 5741643accdSDavid Daney Enable support for the Octeon II SOC's on-chip OHCI 5751643accdSDavid Daney controller. It is needed for low-speed USB 1.0 device 5761643accdSDavid Daney support. All CN6XXX based chips with USB are supported. 5771643accdSDavid Daney 5781643accdSDavid Daneyconfig USB_OCTEON2_COMMON 5791643accdSDavid Daney bool 5801643accdSDavid Daney default y if USB_OCTEON_EHCI || USB_OCTEON_OHCI 5813abd7f68STanmay Upadhyay 5823abd7f68STanmay Upadhyayconfig USB_PXA168_EHCI 5833abd7f68STanmay Upadhyay bool "Marvell PXA168 on-chip EHCI HCD support" 5843abd7f68STanmay Upadhyay depends on USB_EHCI_HCD && ARCH_MMP 5853abd7f68STanmay Upadhyay help 5863abd7f68STanmay Upadhyay Enable support for Marvell PXA168 SoC's on-chip EHCI 5873abd7f68STanmay Upadhyay host controller 588