Merge git://git.denx.de/u-boot-ubi
[oweals/u-boot.git] / drivers / usb / Kconfig
index 637ef3d567e88c348d8c362d6a145cf1d074c733..da3ec2fa7558eb7f722fb9638e6838e7a429d68e 100644 (file)
@@ -1,9 +1,5 @@
-config USB_ARCH_HAS_HCD
-       def_bool y
-
-config USB
-       bool "Support for Host-side USB"
-       depends on USB_ARCH_HAS_HCD
+menuconfig USB
+       bool "USB support"
        ---help---
          Universal Serial Bus (USB) is a specification for a serial bus
          subsystem which offers higher speeds and more features than the
        ---help---
          Universal Serial Bus (USB) is a specification for a serial bus
          subsystem which offers higher speeds and more features than the
@@ -17,8 +13,10 @@ config USB
          such as scanners, keyboards, mice, modems, cameras, disks,
          flash memory, network links, and printers to the PC.
 
          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
+         Say Y here if your device has an USB port, either host, peripheral or
+         dual-role.
+
+         For an USB host port, 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
          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
@@ -46,17 +44,54 @@ config DM_USB
 
          Much of the code is shared but with this option enabled the USB
          uclass takes care of device enumeration. USB devices can be
 
          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.
+         declared with the U_BOOT_USB_DEVICE() macro and will be
+         automatically probed when found on the bus.
 
 source "drivers/usb/host/Kconfig"
 
 
 source "drivers/usb/host/Kconfig"
 
+source "drivers/usb/dwc3/Kconfig"
+
+source "drivers/usb/musb-new/Kconfig"
+
 source "drivers/usb/emul/Kconfig"
 
 source "drivers/usb/emul/Kconfig"
 
+source "drivers/usb/ulpi/Kconfig"
+
+comment "USB peripherals"
+
 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.
 
 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.
 
+config USB_KEYBOARD
+       bool "USB Keyboard support"
+       ---help---
+         Say Y here if you want to use a USB keyboard for U-Boot command line
+         input.
+
+if USB_KEYBOARD
+
+choice
+       prompt "USB keyboard polling"
+       optional
+       ---help---
+         Enable a polling mechanism for USB keyboard.
+
+       config SYS_USB_EVENT_POLL
+               bool "Interrupt polling"
+
+       config SYS_USB_EVENT_POLL_VIA_INT_QUEUE
+               bool "Poll via interrupt queue"
+
+       config SYS_USB_EVENT_POLL_VIA_CONTROL_EP
+               bool "Poll via control EP"
+
+endchoice
+
+endif
+
+source "drivers/usb/gadget/Kconfig"
+
 endif
 endif