]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - drivers/usb/Kconfig
gpio/hsdk: Depend on DM_GPIO instead of simple DM
[people/ms/u-boot.git] / drivers / usb / Kconfig
index b4a94427034c2cdb03aadeb6aa8dcac1894528f8..e7658b4d95c9c90efb51dc726498489bc06b4aa5 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
@@ -17,8 +13,10 @@ config USB
          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
@@ -35,12 +33,67 @@ config USB
 
 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 U_BOOT_USB_DEVICE() macro and will be
+         automatically probed when found on the bus.
+
 source "drivers/usb/host/Kconfig"
 
+source "drivers/usb/dwc3/Kconfig"
+
+source "drivers/usb/musb-new/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_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"
+       default SYS_USB_EVENT_POLL
+       ---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"
+
+source "drivers/usb/eth/Kconfig"
+
 endif