| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | # | 
					
						
							|  |  |  | # USB Host Controller Drivers | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | comment "USB Host Controller Drivers" | 
					
						
							|  |  |  | 	depends on USB | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_EHCI_HCD | 
					
						
							|  |  |  | 	tristate "EHCI HCD (USB 2.0) support" | 
					
						
							| 
									
										
										
										
											2006-01-20 14:06:09 -08:00
										 |  |  | 	depends on USB && USB_ARCH_HAS_EHCI | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 	---help--- | 
					
						
							|  |  |  | 	  The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 | 
					
						
							|  |  |  | 	  "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. | 
					
						
							|  |  |  | 	  If your USB host controller supports USB 2.0, you will likely want to | 
					
						
							| 
									
										
										
										
											2006-01-10 00:35:22 +01:00
										 |  |  | 	  configure this Host Controller Driver.  At the time of this writing,  | 
					
						
							|  |  |  | 	  the primary implementation of EHCI is a chip from NEC, widely available | 
					
						
							|  |  |  | 	  in add-on PCI cards, but implementations are in the works from other  | 
					
						
							|  |  |  | 	  vendors including Intel and Philips.  Motherboard support is appearing. | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	  EHCI controllers are packaged with "companion" host controllers (OHCI | 
					
						
							|  |  |  | 	  or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports | 
					
						
							| 
									
										
										
										
											2006-01-10 00:35:22 +01:00
										 |  |  | 	  will connect to EHCI if the device is high speed, otherwise they | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 	  connect to a companion controller.  If you configure EHCI, you should | 
					
						
							|  |  |  | 	  probably configure the OHCI (for NEC and some other vendors) USB Host | 
					
						
							|  |  |  | 	  Controller Driver or UHCI (for Via motherboards) Host Controller | 
					
						
							|  |  |  | 	  Driver too. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  You may want to read <file:Documentation/usb/ehci.txt>. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  To compile this driver as a module, choose M here: the | 
					
						
							|  |  |  | 	  module will be called ehci-hcd. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_EHCI_SPLIT_ISO | 
					
						
							|  |  |  | 	bool "Full speed ISO transactions (EXPERIMENTAL)" | 
					
						
							|  |  |  | 	depends on USB_EHCI_HCD && EXPERIMENTAL | 
					
						
							|  |  |  | 	default n | 
					
						
							|  |  |  | 	---help--- | 
					
						
							|  |  |  | 	  This code is new and hasn't been used with many different | 
					
						
							|  |  |  | 	  EHCI or USB 2.0 transaction translator implementations. | 
					
						
							|  |  |  | 	  It should work for ISO-OUT transfers, like audio. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_EHCI_ROOT_HUB_TT | 
					
						
							|  |  |  | 	bool "Root Hub Transaction Translators (EXPERIMENTAL)" | 
					
						
							|  |  |  | 	depends on USB_EHCI_HCD && EXPERIMENTAL | 
					
						
							|  |  |  | 	---help--- | 
					
						
							|  |  |  | 	  Some EHCI chips have vendor-specific extensions to integrate | 
					
						
							|  |  |  | 	  transaction translators, so that no OHCI or UHCI companion | 
					
						
							|  |  |  | 	  controller is needed.  It's safe to say "y" even if your | 
					
						
							|  |  |  | 	  controller doesn't support this feature. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-05-24 09:39:16 -07:00
										 |  |  | 	  This supports the EHCI implementation that's originally | 
					
						
							|  |  |  | 	  from ARC, and has since changed hands a few times. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_EHCI_TT_NEWSCHED | 
					
						
							|  |  |  | 	bool "Improved Transaction Translator scheduling (EXPERIMENTAL)" | 
					
						
							|  |  |  | 	depends on USB_EHCI_HCD && EXPERIMENTAL | 
					
						
							|  |  |  | 	---help--- | 
					
						
							|  |  |  | 	  This changes the periodic scheduling code to fill more of the low | 
					
						
							|  |  |  | 	  and full speed bandwidth available from the Transaction Translator | 
					
						
							|  |  |  | 	  (TT) in USB 2.0 hubs.  Without this, only one transfer will be | 
					
						
							|  |  |  | 	  issued in each microframe, significantly reducing the number of | 
					
						
							|  |  |  | 	  periodic low/fullspeed transfers possible. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  If you have multiple periodic low/fullspeed devices connected to a | 
					
						
							|  |  |  | 	  highspeed USB hub which is connected to a highspeed USB Host | 
					
						
							|  |  |  | 	  Controller, and some of those devices will not work correctly | 
					
						
							|  |  |  | 	  (possibly due to "ENOSPC" or "-28" errors), say Y. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  If unsure, say N. | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-12-15 06:54:08 +11:00
										 |  |  | config USB_EHCI_BIG_ENDIAN_MMIO | 
					
						
							|  |  |  | 	bool | 
					
						
							| 
									
										
										
										
											2007-05-04 11:39:37 -07:00
										 |  |  | 	depends on USB_EHCI_HCD && (PPC_CELLEB || PPC_PS3 || 440EPX) | 
					
						
							|  |  |  | 	default y | 
					
						
							| 
									
										
										
										
											2006-12-15 06:54:08 +11:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-05-01 09:29:37 -07:00
										 |  |  | config USB_EHCI_BIG_ENDIAN_DESC | 
					
						
							|  |  |  | 	bool | 
					
						
							| 
									
										
										
										
											2007-05-04 11:39:37 -07:00
										 |  |  | 	depends on USB_EHCI_HCD && 440EPX | 
					
						
							|  |  |  | 	default y | 
					
						
							| 
									
										
										
										
											2007-05-01 09:29:37 -07:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-05-11 17:09:55 +08:00
										 |  |  | config USB_EHCI_FSL | 
					
						
							|  |  |  | 	bool | 
					
						
							|  |  |  | 	select USB_EHCI_ROOT_HUB_TT | 
					
						
							|  |  |  | 	default y if MPC834x || PPC_MPC831x | 
					
						
							|  |  |  | 	---help--- | 
					
						
							|  |  |  | 	  Variation of ARC USB block used in some Freescale chips. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-09 22:57:39 +03:00
										 |  |  | config USB_ISP116X_HCD | 
					
						
							|  |  |  | 	tristate "ISP116X HCD support" | 
					
						
							|  |  |  | 	depends on USB | 
					
						
							|  |  |  | 	---help--- | 
					
						
							|  |  |  | 	  The ISP1160 and ISP1161 chips are USB host controllers. Enable this | 
					
						
							|  |  |  | 	  option if your board has this chip. If unsure, say N. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  This driver does not support isochronous transfers. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  To compile this driver as a module, choose M here: the | 
					
						
							|  |  |  | 	  module will be called isp116x-hcd. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | config USB_OHCI_HCD | 
					
						
							|  |  |  | 	tristate "OHCI HCD support" | 
					
						
							|  |  |  | 	depends on USB && USB_ARCH_HAS_OHCI | 
					
						
							|  |  |  | 	select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 | 
					
						
							| 
									
										
										
										
											2006-06-29 18:28:18 +04:00
										 |  |  | 	select I2C if ARCH_PNX4008 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 	---help--- | 
					
						
							|  |  |  | 	  The Open Host Controller Interface (OHCI) is a standard for accessing | 
					
						
							|  |  |  | 	  USB 1.1 host controller hardware.  It does more in hardware than Intel's | 
					
						
							|  |  |  | 	  UHCI specification.  If your USB host controller follows the OHCI spec, | 
					
						
							|  |  |  | 	  say Y.  On most non-x86 systems, and on x86 hardware that's not using a | 
					
						
							|  |  |  | 	  USB controller from Intel or VIA, this is appropriate.  If your host | 
					
						
							|  |  |  | 	  controller doesn't use PCI, this is probably appropriate.  For a PCI | 
					
						
							|  |  |  | 	  based system where you're not sure, the "lspci -v" entry will list the | 
					
						
							|  |  |  | 	  right "prog-if" for your USB controller(s):  EHCI, OHCI, or UHCI. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  To compile this driver as a module, choose M here: the | 
					
						
							|  |  |  | 	  module will be called ohci-hcd. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_OHCI_HCD_PPC_SOC | 
					
						
							|  |  |  | 	bool "OHCI support for on-chip PPC USB controller" | 
					
						
							|  |  |  | 	depends on USB_OHCI_HCD && (STB03xxx || PPC_MPC52xx) | 
					
						
							|  |  |  | 	default y | 
					
						
							| 
									
										
										
										
											2006-12-15 06:54:03 +11:00
										 |  |  | 	select USB_OHCI_BIG_ENDIAN_DESC | 
					
						
							|  |  |  | 	select USB_OHCI_BIG_ENDIAN_MMIO | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 	---help--- | 
					
						
							|  |  |  | 	  Enables support for the USB controller on the MPC52xx or | 
					
						
							|  |  |  | 	  STB03xxx processor chip.  If unsure, say Y. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-12-13 21:09:55 +01:00
										 |  |  | config USB_OHCI_HCD_PPC_OF | 
					
						
							|  |  |  | 	bool "OHCI support for PPC USB controller on OF platform bus" | 
					
						
							|  |  |  | 	depends on USB_OHCI_HCD && PPC_OF | 
					
						
							|  |  |  | 	default y | 
					
						
							|  |  |  | 	---help--- | 
					
						
							|  |  |  | 	  Enables support for the USB controller PowerPC present on the | 
					
						
							|  |  |  | 	  OpenFirmware platform bus. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_OHCI_HCD_PPC_OF_BE | 
					
						
							|  |  |  | 	bool "Support big endian HC" | 
					
						
							|  |  |  | 	depends on USB_OHCI_HCD_PPC_OF | 
					
						
							|  |  |  | 	default y | 
					
						
							|  |  |  | 	select USB_OHCI_BIG_ENDIAN_DESC | 
					
						
							|  |  |  | 	select USB_OHCI_BIG_ENDIAN_MMIO | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_OHCI_HCD_PPC_OF_LE | 
					
						
							|  |  |  | 	bool "Support little endian HC" | 
					
						
							|  |  |  | 	depends on USB_OHCI_HCD_PPC_OF | 
					
						
							|  |  |  | 	default n | 
					
						
							|  |  |  | 	select USB_OHCI_LITTLE_ENDIAN | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | config USB_OHCI_HCD_PCI | 
					
						
							|  |  |  | 	bool "OHCI support for PCI-bus USB controllers" | 
					
						
							| 
									
										
										
										
											2006-12-13 21:09:55 +01:00
										 |  |  | 	depends on USB_OHCI_HCD && PCI && (STB03xxx || PPC_MPC52xx || USB_OHCI_HCD_PPC_OF) | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 	default y | 
					
						
							|  |  |  | 	select USB_OHCI_LITTLE_ENDIAN | 
					
						
							|  |  |  | 	---help--- | 
					
						
							|  |  |  | 	  Enables support for PCI-bus plug-in USB controller cards. | 
					
						
							|  |  |  | 	  If unsure, say Y. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-10-09 23:47:17 -07:00
										 |  |  | config USB_OHCI_HCD_SSB | 
					
						
							|  |  |  | 	bool "OHCI support for Broadcom SSB OHCI core" | 
					
						
							|  |  |  | 	depends on USB_OHCI_HCD && SSB && EXPERIMENTAL | 
					
						
							|  |  |  | 	default n | 
					
						
							|  |  |  | 	---help--- | 
					
						
							|  |  |  | 	  Support for the Sonics Silicon Backplane (SSB) attached | 
					
						
							|  |  |  | 	  Broadcom USB OHCI core. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  This device is present in some embedded devices with | 
					
						
							|  |  |  | 	  Broadcom based SSB bus. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  If unsure, say N. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-12-15 06:54:03 +11:00
										 |  |  | config USB_OHCI_BIG_ENDIAN_DESC | 
					
						
							|  |  |  | 	bool | 
					
						
							|  |  |  | 	depends on USB_OHCI_HCD | 
					
						
							|  |  |  | 	default n | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_OHCI_BIG_ENDIAN_MMIO | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | 	bool | 
					
						
							|  |  |  | 	depends on USB_OHCI_HCD | 
					
						
							|  |  |  | 	default n | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_OHCI_LITTLE_ENDIAN | 
					
						
							|  |  |  | 	bool | 
					
						
							|  |  |  | 	depends on USB_OHCI_HCD | 
					
						
							|  |  |  | 	default n if STB03xxx || PPC_MPC52xx | 
					
						
							|  |  |  | 	default y | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | config USB_UHCI_HCD | 
					
						
							|  |  |  | 	tristate "UHCI HCD (most Intel and VIA) support" | 
					
						
							|  |  |  | 	depends on USB && PCI | 
					
						
							|  |  |  | 	---help--- | 
					
						
							|  |  |  | 	  The Universal Host Controller Interface is a standard by Intel for | 
					
						
							|  |  |  | 	  accessing the USB hardware in the PC (which is also called the USB | 
					
						
							|  |  |  | 	  host controller). If your USB host controller conforms to this | 
					
						
							|  |  |  | 	  standard, you may want to say Y, but see below. All recent boards | 
					
						
							|  |  |  | 	  with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, | 
					
						
							|  |  |  | 	  i810, i820) conform to this standard. Also all VIA PCI chipsets | 
					
						
							|  |  |  | 	  (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro | 
					
						
							|  |  |  | 	  133). If unsure, say Y. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  To compile this driver as a module, choose M here: the | 
					
						
							|  |  |  | 	  module will be called uhci-hcd. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-09-13 11:27:35 +01:00
										 |  |  | config USB_U132_HCD | 
					
						
							|  |  |  | 	tristate "Elan U132 Adapter Host Controller" | 
					
						
							|  |  |  | 	depends on USB && USB_FTDI_ELAN | 
					
						
							|  |  |  | 	default M | 
					
						
							|  |  |  | 	help | 
					
						
							|  |  |  | 	  The U132 adapter is a USB to CardBus adapter specifically designed | 
					
						
							|  |  |  | 	  for PC cards that contain an OHCI host controller. Typical PC cards | 
					
						
							|  |  |  | 	  are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132 | 
					
						
							|  |  |  | 	  adapter will *NOT* work with PC cards that do not contain an OHCI | 
					
						
							|  |  |  | 	  controller. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-11-30 05:22:59 +01:00
										 |  |  | 	  For those PC cards that contain multiple OHCI controllers only the | 
					
						
							| 
									
										
										
										
											2006-09-13 11:27:35 +01:00
										 |  |  | 	  first one is used. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  The driver consists of two modules, the "ftdi-elan" module is a | 
					
						
							|  |  |  | 	  USB client driver that interfaces to the FTDI chip within ELAN's | 
					
						
							|  |  |  | 	  USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host | 
					
						
							|  |  |  | 	  controller driver that talks to the OHCI controller within the | 
					
						
							|  |  |  | 	  CardBus cards that are inserted in the U132 adapter. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  This driver has been tested with a CardBus OHCI USB adapter, and | 
					
						
							|  |  |  | 	  worked with a USB PEN Drive inserted into the first USB port of | 
					
						
							|  |  |  | 	  the PCCARD. A rather pointless thing to do, but useful for testing. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  It is safe to say M here. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-04-16 15:20:36 -07:00
										 |  |  | config USB_SL811_HCD | 
					
						
							|  |  |  | 	tristate "SL811HS HCD support" | 
					
						
							|  |  |  | 	depends on USB | 
					
						
							|  |  |  | 	help | 
					
						
							|  |  |  | 	  The SL811HS is a single-port USB controller that supports either | 
					
						
							|  |  |  | 	  host side or peripheral side roles.  Enable this option if your | 
					
						
							|  |  |  | 	  board has this chip, and you want to use it as a host controller.  | 
					
						
							|  |  |  | 	  If unsure, say N. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  To compile this driver as a module, choose M here: the | 
					
						
							|  |  |  | 	  module will be called sl811-hcd. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2005-05-26 05:55:55 -07:00
										 |  |  | config USB_SL811_CS | 
					
						
							|  |  |  | 	tristate "CF/PCMCIA support for SL811HS HCD" | 
					
						
							|  |  |  | 	depends on USB_SL811_HCD && PCMCIA | 
					
						
							|  |  |  | 	help | 
					
						
							|  |  |  | 	  Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC | 
					
						
							|  |  |  | 	  REX-CFU1U CF card (often used with PDAs).  If unsure, say N. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  To compile this driver as a module, choose M here: the | 
					
						
							|  |  |  | 	  module will be called "sl811_cs". | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-05-10 13:18:19 +09:00
										 |  |  | config USB_R8A66597_HCD | 
					
						
							| 
									
										
										
										
											2007-08-10 14:53:32 -07:00
										 |  |  | 	tristate "R8A66597 HCD support" | 
					
						
							| 
									
										
										
										
											2007-05-10 13:18:19 +09:00
										 |  |  | 	depends on USB | 
					
						
							|  |  |  | 	help | 
					
						
							|  |  |  | 	  The R8A66597 is a USB 2.0 host and peripheral controller. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  Enable this option if your board has this chip, and you want | 
					
						
							|  |  |  | 	  to use it as a host controller.  If unsure, say N. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	  To compile this driver as a module, choose M here: the | 
					
						
							|  |  |  | 	  module will be called r8a66597-hcd. | 
					
						
							|  |  |  | 
 |