usb: add basic USB configs in Kconfig

Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
Acked-by: Marek Vasut <marex@denx.de>
This commit is contained in:
Masahiro Yamada 2014-11-07 18:48:31 +09:00
parent f440bf2507
commit 6e7e9294d3
2 changed files with 94 additions and 0 deletions

View File

@ -0,0 +1,46 @@
config USB_ARCH_HAS_HCD
def_bool y
config USB
bool "Support for Host-side USB"
depends on USB_ARCH_HAS_HCD
---help---
Universal Serial Bus (USB) is a specification for a serial bus
subsystem which offers higher speeds and more features than the
traditional PC serial port. The bus supplies power to peripherals
and allows for hot swapping. Up to 127 USB peripherals can be
connected to a single USB host in a tree structure.
The USB host is the root of the tree, the peripherals are the
leaves and the inner nodes are special USB devices called hubs.
Most PCs now have USB host ports, used to connect peripherals
such as scanners, keyboards, mice, modems, cameras, disks,
flash memory, network links, and printers to the PC.
Say Y here if your computer has a host-side USB port and you want
to use USB devices. You then need to say Y to at least one of the
Host Controller Driver (HCD) options below. Choose a USB 1.1
controller, such as "UHCI HCD support" or "OHCI HCD support",
and "EHCI HCD (USB 2.0) support" except for older systems that
do not have USB 2.0 support. It doesn't normally hurt to select
them all if you are not certain.
If your system has a device-side USB port, used in the peripheral
side of the USB protocol, see the "USB Gadget" framework instead.
After choosing your HCD, then select drivers for the USB peripherals
you'll be using. You may want to check out the information provided
in <file:Documentation/usb/> and especially the links given in
<file:Documentation/usb/usb-help.txt>.
if USB
source "drivers/usb/host/Kconfig"
config USB_STORAGE
bool "USB Mass Storage support"
---help---
Say Y here if you want to connect USB mass storage devices to your
board's USB port.
endif

48
drivers/usb/host/Kconfig Normal file
View File

@ -0,0 +1,48 @@
#
# USB Host Controller Drivers
#
comment "USB Host Controller Drivers"
config USB_XHCI_HCD
bool "xHCI HCD (USB 3.0) support"
---help---
The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
"SuperSpeed" host controller hardware.
config USB_XHCI
bool
default USB_XHCI_HCD
---help---
TODO: rename after most boards switch to Kconfig
if USB_XHCI_HCD
endif
config USB_EHCI_HCD
bool "EHCI HCD (USB 2.0) support"
---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.
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>.
config USB_EHCI
bool
default USB_EHCI_HCD
---help---
TODO: rename after most boards switch to Kconfig
if USB_EHCI_HCD
endif