"Das U-Boot" Source Tree
at master 189 lines 5.5 kB view raw
1menuconfig USB 2 bool "USB support" 3 select BLK 4 ---help--- 5 Universal Serial Bus (USB) is a specification for a serial bus 6 subsystem which offers higher speeds and more features than the 7 traditional PC serial port. The bus supplies power to peripherals 8 and allows for hot swapping. Up to 127 USB peripherals can be 9 connected to a single USB host in a tree structure. 10 11 The USB host is the root of the tree, the peripherals are the 12 leaves and the inner nodes are special USB devices called hubs. 13 Most PCs now have USB host ports, used to connect peripherals 14 such as scanners, keyboards, mice, modems, cameras, disks, 15 flash memory, network links, and printers to the PC. 16 17 Say Y here if your device has an USB port, either host, peripheral or 18 dual-role. 19 20 For an USB host port, you then need to say Y to at least one of the 21 Host Controller Driver (HCD) options below. Choose a USB 1.1 22 controller, such as "UHCI HCD support" or "OHCI HCD support", 23 and "EHCI HCD (USB 2.0) support" except for older systems that 24 do not have USB 2.0 support. It doesn't normally hurt to select 25 them all if you are not certain. 26 27 If your system has a device-side USB port, used in the peripheral 28 side of the USB protocol, see the "USB Gadget" framework instead. 29 30 After choosing your HCD, then select drivers for the USB peripherals 31 you'll be using. You may want to check out the information provided 32 in <file:Documentation/usb/> and especially the links given in 33 <file:Documentation/usb/usb-help.txt>. 34 35if USB 36 37config DM_USB 38 bool 39 depends on DM && OF_CONTROL 40 help 41 Enable driver model for USB. The USB interface is then implemented 42 by the USB uclass. Multiple USB controllers of different types 43 (XHCI, EHCI, OHCI) can be attached and used. The 'usb' command works 44 as normal. 45 46 Much of the code is shared but with this option enabled the USB 47 uclass takes care of device enumeration. USB devices can be 48 declared with the U_BOOT_USB_DEVICE() macro and will be 49 automatically probed when found on the bus. 50 51config SPL_DM_USB 52 bool "Enable driver model for USB host mode in SPL" 53 depends on SPL_DM && DM_USB 54 default n if ARCH_MVEBU 55 default y 56 57config DM_USB_GADGET 58 bool "Enable driver model for USB Gadget" 59 depends on DM_USB 60 help 61 Enable driver model for USB Gadget (Peripheral 62 mode) 63 64config SPL_DM_USB_GADGET 65 bool "Enable driver model for USB Gadget in SPL" 66 depends on SPL_DM_USB 67 help 68 Enable driver model for USB Gadget in SPL 69 (Peripheral mode) 70 71source "drivers/usb/host/Kconfig" 72 73source "drivers/usb/isp1760/Kconfig" 74 75source "drivers/usb/cdns3/Kconfig" 76 77source "drivers/usb/dwc3/Kconfig" 78 79source "drivers/usb/mtu3/Kconfig" 80 81source "drivers/usb/musb/Kconfig" 82 83source "drivers/usb/musb-new/Kconfig" 84 85source "drivers/usb/emul/Kconfig" 86 87source "drivers/usb/phy/Kconfig" 88 89source "drivers/usb/tcpm/Kconfig" 90 91source "drivers/usb/ulpi/Kconfig" 92 93if USB_HOST 94 95comment "USB peripherals" 96 97config USB_STORAGE 98 bool "USB Mass Storage support" 99 ---help--- 100 Say Y here if you want to connect USB mass storage devices to your 101 board's USB port. 102 103config USB_KEYBOARD 104 bool "USB Keyboard support" 105 depends on DM_USB 106 select DM_KEYBOARD 107 select SYS_STDIO_DEREGISTER 108 ---help--- 109 Say Y here if you want to use a USB keyboard for U-Boot command line 110 input. 111 112config USB_ONBOARD_HUB 113 bool "Onboard USB hub support" 114 depends on DM_USB 115 ---help--- 116 Say Y here if you want to support discrete onboard USB hubs that 117 don't require an additional control bus for initialization, but 118 need some non-trivial form of initialization, such as enabling a 119 power regulator. An example for such a hub is the Microchip 120 USB2514B. 121 122config USB_HUB_DEBOUNCE_TIMEOUT 123 int "Timeout in milliseconds for USB HUB connection" 124 default 1000 125 help 126 Value in milliseconds of the USB connection timeout, the max delay to 127 wait the hub port status to be connected steadily after being powered 128 off and powered on in the usb hub driver. 129 This define allows to increase the HUB_DEBOUNCE_TIMEOUT default 130 value = 1s because some usb device needs around 1.5s to be initialized 131 and a 2s value should solve detection issue on problematic USB keys. 132 133if SPL_USB_HOST 134 135comment "USB peripherals in SPL" 136 137config SPL_USB_STORAGE 138 bool "Support loading from USB" 139 help 140 Enable support for USB devices in SPL. This allows use of USB 141 devices such as hard drives and flash drivers for loading U-Boot. 142 The actual drivers are enabled separately using the normal U-Boot 143 config options. This enables loading from USB using a configured 144 device. 145 146config SYS_USB_FAT_BOOT_PARTITION 147 int "Partition on USB to use to load U-Boot from" 148 depends on SPL_USB_STORAGE 149 default 1 150 help 151 Partition on the USB storage device to load U-Boot from. 152 153endif 154 155if USB_KEYBOARD 156 157config USB_KEYBOARD_FN_KEYS 158 bool "USB keyboard function key support" 159 help 160 Say Y here if you want support for keys F1 - F12, INS, HOME, DELETE, 161 END, PAGE UP, and PAGE DOWN. 162 163choice 164 prompt "USB keyboard polling" 165 default SYS_USB_EVENT_POLL_VIA_INT_QUEUE if ARCH_SUNXI 166 default SYS_USB_EVENT_POLL 167 ---help--- 168 Enable a polling mechanism for USB keyboard. 169 170config SYS_USB_EVENT_POLL 171 bool "Interrupt polling" 172 173config SYS_USB_EVENT_POLL_VIA_INT_QUEUE 174 bool "Poll via interrupt queue" 175 176config SYS_USB_EVENT_POLL_VIA_CONTROL_EP 177 bool "Poll via control EP" 178 179endchoice 180 181endif 182 183source "drivers/usb/eth/Kconfig" 184 185endif 186 187source "drivers/usb/gadget/Kconfig" 188 189endif