mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-26 22:52:18 +00:00
019808f97c
With sandbox we want to be able to emulate USB devices so that we can test the USB stack. Add a uclass to support this. It implements the same operations as a normal USB device driver, but in this case passes them on to an emulation driver. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Marek Vasut <marex@denx.de>
62 lines
2.3 KiB
Text
62 lines
2.3 KiB
Text
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
|
|
|
|
config DM_USB
|
|
bool "Enable driver model for USB"
|
|
depends on USB && DM
|
|
help
|
|
Enable driver model for USB. The USB interface is then implemented
|
|
by the USB uclass. Multiple USB controllers of different types
|
|
(XHCI, EHCI) can be attached and used. The 'usb' command works as
|
|
normal. OCHI is not supported at present.
|
|
|
|
Much of the code is shared but with this option enabled the USB
|
|
uclass takes care of device enumeration. USB devices can be
|
|
declared with the USB_DEVICE() macro and will be automatically
|
|
probed when found on the bus.
|
|
|
|
source "drivers/usb/host/Kconfig"
|
|
|
|
source "drivers/usb/emul/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
|