net: rtl8139: Register macro cleanup
[oweals/u-boot.git] / drivers / usb / Kconfig
index 637ef3d567e88c348d8c362d6a145cf1d074c733..928a89133cf89dd4f6ee31f22e8b31a6d9d567dd 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
@@ -46,17 +44,90 @@ 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
-         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.
+
+config SPL_DM_USB
+       bool "Enable driver model for USB in SPL"
+       depends on SPL_DM && DM_USB
+       default y
+
+config DM_USB_GADGET
+       bool "Enable driver model for USB Gadget"
+       depends on DM_USB
+       help
+         Enable driver model for USB Gadget (Peripheral
+         mode)
+
+config SPL_DM_USB_GADGET
+       bool "Enable driver model for USB Gadget in sPL"
+       depends on SPL_DM_USB
+       help
+         Enable driver model for USB Gadget in SPL
+         (Peripheral mode)
 
 source "drivers/usb/host/Kconfig"
 
+source "drivers/usb/cdns3/Kconfig"
+
+source "drivers/usb/dwc3/Kconfig"
+
+source "drivers/usb/musb/Kconfig"
+
+source "drivers/usb/musb-new/Kconfig"
+
 source "drivers/usb/emul/Kconfig"
 
+source "drivers/usb/phy/Kconfig"
+
+source "drivers/usb/ulpi/Kconfig"
+
+comment "USB peripherals"
+
 config USB_STORAGE
        bool "USB Mass Storage support"
+       depends on !(BLK && !DM_USB)
        ---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"
+       select SYS_STDIO_DEREGISTER
+       ---help---
+         Say Y here if you want to use a USB keyboard for U-Boot command line
+         input.
+
+if USB_KEYBOARD
+
+config USB_KEYBOARD_FN_KEYS
+       bool "USB keyboard function key support"
+       help
+         Say Y here if you want support for keys F1 - F12, INS, HOME, DELETE,
+         END, PAGE UP, and PAGE DOWN.
+
+choice
+       prompt "USB keyboard polling"
+       default SYS_USB_EVENT_POLL_VIA_INT_QUEUE if ARCH_SUNXI
+       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