xref: /openbmc/u-boot/drivers/usb/Kconfig (revision abb59cff)
16e7e9294SMasahiro Yamadaconfig USB_ARCH_HAS_HCD
26e7e9294SMasahiro Yamada	def_bool y
36e7e9294SMasahiro Yamada
46e7e9294SMasahiro Yamadaconfig USB
56e7e9294SMasahiro Yamada	bool "Support for Host-side USB"
66e7e9294SMasahiro Yamada	depends on USB_ARCH_HAS_HCD
76e7e9294SMasahiro Yamada	---help---
86e7e9294SMasahiro Yamada	  Universal Serial Bus (USB) is a specification for a serial bus
96e7e9294SMasahiro Yamada	  subsystem which offers higher speeds and more features than the
106e7e9294SMasahiro Yamada	  traditional PC serial port.  The bus supplies power to peripherals
116e7e9294SMasahiro Yamada	  and allows for hot swapping.  Up to 127 USB peripherals can be
126e7e9294SMasahiro Yamada	  connected to a single USB host in a tree structure.
136e7e9294SMasahiro Yamada
146e7e9294SMasahiro Yamada	  The USB host is the root of the tree, the peripherals are the
156e7e9294SMasahiro Yamada	  leaves and the inner nodes are special USB devices called hubs.
166e7e9294SMasahiro Yamada	  Most PCs now have USB host ports, used to connect peripherals
176e7e9294SMasahiro Yamada	  such as scanners, keyboards, mice, modems, cameras, disks,
186e7e9294SMasahiro Yamada	  flash memory, network links, and printers to the PC.
196e7e9294SMasahiro Yamada
206e7e9294SMasahiro Yamada	  Say Y here if your computer has a host-side USB port and you want
216e7e9294SMasahiro Yamada	  to use USB devices.  You then need to say Y to at least one of the
226e7e9294SMasahiro Yamada	  Host Controller Driver (HCD) options below.  Choose a USB 1.1
236e7e9294SMasahiro Yamada	  controller, such as "UHCI HCD support" or "OHCI HCD support",
246e7e9294SMasahiro Yamada	  and "EHCI HCD (USB 2.0) support" except for older systems that
256e7e9294SMasahiro Yamada	  do not have USB 2.0 support.  It doesn't normally hurt to select
266e7e9294SMasahiro Yamada	  them all if you are not certain.
276e7e9294SMasahiro Yamada
286e7e9294SMasahiro Yamada	  If your system has a device-side USB port, used in the peripheral
296e7e9294SMasahiro Yamada	  side of the USB protocol, see the "USB Gadget" framework instead.
306e7e9294SMasahiro Yamada
316e7e9294SMasahiro Yamada	  After choosing your HCD, then select drivers for the USB peripherals
326e7e9294SMasahiro Yamada	  you'll be using.  You may want to check out the information provided
336e7e9294SMasahiro Yamada	  in <file:Documentation/usb/> and especially the links given in
346e7e9294SMasahiro Yamada	  <file:Documentation/usb/usb-help.txt>.
356e7e9294SMasahiro Yamada
366e7e9294SMasahiro Yamadaif USB
376e7e9294SMasahiro Yamada
38de31213fSSimon Glassconfig DM_USB
39de31213fSSimon Glass	bool "Enable driver model for USB"
40de31213fSSimon Glass	depends on USB && DM
41de31213fSSimon Glass	help
42de31213fSSimon Glass	  Enable driver model for USB. The USB interface is then implemented
43de31213fSSimon Glass	  by the USB uclass. Multiple USB controllers of different types
44de31213fSSimon Glass	  (XHCI, EHCI) can be attached and used. The 'usb' command works as
45de31213fSSimon Glass	  normal. OCHI is not supported at present.
46de31213fSSimon Glass
47de31213fSSimon Glass	  Much of the code is shared but with this option enabled the USB
48de31213fSSimon Glass	  uclass takes care of device enumeration. USB devices can be
49*abb59cffSSimon Glass	  declared with the U_BOOT_USB_DEVICE() macro and will be
50*abb59cffSSimon Glass	  automatically probed when found on the bus.
51de31213fSSimon Glass
526e7e9294SMasahiro Yamadasource "drivers/usb/host/Kconfig"
536e7e9294SMasahiro Yamada
54019808f9SSimon Glasssource "drivers/usb/emul/Kconfig"
55019808f9SSimon Glass
566e7e9294SMasahiro Yamadaconfig USB_STORAGE
576e7e9294SMasahiro Yamada	bool "USB Mass Storage support"
586e7e9294SMasahiro Yamada	---help---
596e7e9294SMasahiro Yamada	  Say Y here if you want to connect USB mass storage devices to your
606e7e9294SMasahiro Yamada	  board's USB port.
616e7e9294SMasahiro Yamada
626e7e9294SMasahiro Yamadaendif
63