 fa0de2b614
			
		
	
	
	fa0de2b614
	
	
	
		
			
			Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
		
			
				
	
	
		
			250 lines
		
	
	
	
		
			8.6 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			250 lines
		
	
	
	
		
			8.6 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
| #
 | |
| # USB Host Controller Drivers
 | |
| #
 | |
| comment "USB Host Controller Drivers"
 | |
| 	depends on USB
 | |
| 
 | |
| config USB_EHCI_HCD
 | |
| 	tristate "EHCI HCD (USB 2.0) support"
 | |
| 	depends on USB && USB_ARCH_HAS_EHCI
 | |
| 	---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
 | |
| 	  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.
 | |
| 
 | |
| 	  EHCI controllers are packaged with "companion" host controllers (OHCI
 | |
| 	  or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports
 | |
| 	  will connect to EHCI if the device is high speed, otherwise they
 | |
| 	  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.
 | |
| 
 | |
| 	  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.
 | |
| 
 | |
| config USB_EHCI_BIG_ENDIAN_MMIO
 | |
| 	bool
 | |
| 	depends on USB_EHCI_HCD && (PPC_CELLEB || PPC_PS3 || 440EPX)
 | |
| 	default y
 | |
| 
 | |
| config USB_EHCI_BIG_ENDIAN_DESC
 | |
| 	bool
 | |
| 	depends on USB_EHCI_HCD && 440EPX
 | |
| 	default y
 | |
| 
 | |
| 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.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| 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
 | |
| 	select I2C if ARCH_PNX4008
 | |
| 	---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
 | |
| 	select USB_OHCI_BIG_ENDIAN_DESC
 | |
| 	select USB_OHCI_BIG_ENDIAN_MMIO
 | |
| 	---help---
 | |
| 	  Enables support for the USB controller on the MPC52xx or
 | |
| 	  STB03xxx processor chip.  If unsure, say Y.
 | |
| 
 | |
| 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
 | |
| 
 | |
| config USB_OHCI_HCD_PCI
 | |
| 	bool "OHCI support for PCI-bus USB controllers"
 | |
| 	depends on USB_OHCI_HCD && PCI && (STB03xxx || PPC_MPC52xx || USB_OHCI_HCD_PPC_OF)
 | |
| 	default y
 | |
| 	select USB_OHCI_LITTLE_ENDIAN
 | |
| 	---help---
 | |
| 	  Enables support for PCI-bus plug-in USB controller cards.
 | |
| 	  If unsure, say Y.
 | |
| 
 | |
| config USB_OHCI_BIG_ENDIAN_DESC
 | |
| 	bool
 | |
| 	depends on USB_OHCI_HCD
 | |
| 	default n
 | |
| 
 | |
| config USB_OHCI_BIG_ENDIAN_MMIO
 | |
| 	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.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| 	  For those PC cards that contain multiple OHCI controllers only the
 | |
| 	  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>
 | |
| 
 | |
| 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.
 | |
| 
 | |
| 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".
 | |
| 
 | |
| config USB_R8A66597_HCD
 | |
| 	tristate "R8A66597 HCD support"
 | |
| 	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.
 | |
| 
 |