Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | # |
| 2 | # USB device configuration |
| 3 | # |
| 4 | |
David Daney | 900e062 | 2013-08-09 18:17:48 -0700 | [diff] [blame] | 5 | config USB_OHCI_BIG_ENDIAN_DESC |
| 6 | bool |
| 7 | |
| 8 | config USB_OHCI_BIG_ENDIAN_MMIO |
| 9 | bool |
| 10 | |
| 11 | config USB_OHCI_LITTLE_ENDIAN |
| 12 | bool |
| 13 | default n if STB03xxx || PPC_MPC52xx |
| 14 | default y |
| 15 | |
David Daney | 900e062 | 2013-08-09 18:17:48 -0700 | [diff] [blame] | 16 | config USB_EHCI_BIG_ENDIAN_MMIO |
| 17 | bool |
| 18 | |
| 19 | config USB_EHCI_BIG_ENDIAN_DESC |
| 20 | bool |
| 21 | |
James Hogan | ec89756 | 2018-01-31 22:24:45 +0000 | [diff] [blame] | 22 | config USB_UHCI_BIG_ENDIAN_MMIO |
| 23 | bool |
James Hogan | ec89756 | 2018-01-31 22:24:45 +0000 | [diff] [blame] | 24 | |
| 25 | config USB_UHCI_BIG_ENDIAN_DESC |
| 26 | bool |
James Hogan | ec89756 | 2018-01-31 22:24:45 +0000 | [diff] [blame] | 27 | |
David Daney | a8edc42 | 2012-03-22 14:01:07 -0700 | [diff] [blame] | 28 | menuconfig USB_SUPPORT |
| 29 | bool "USB support" |
| 30 | depends on HAS_IOMEM |
| 31 | default y |
| 32 | ---help--- |
| 33 | This option adds core support for Universal Serial Bus (USB). |
| 34 | You will also need drivers from the following menu to make use of it. |
| 35 | |
David Daney | 53c6bc2 | 2012-03-13 15:58:05 -0700 | [diff] [blame] | 36 | if USB_SUPPORT |
| 37 | |
| 38 | config USB_COMMON |
| 39 | tristate |
David Daney | 53c6bc2 | 2012-03-13 15:58:05 -0700 | [diff] [blame] | 40 | |
David Daney | 53c6bc2 | 2012-03-13 15:58:05 -0700 | [diff] [blame] | 41 | config USB_ARCH_HAS_HCD |
Arnd Bergmann | d9ea21a | 2013-06-04 19:42:22 +0200 | [diff] [blame] | 42 | def_bool y |
David Daney | 53c6bc2 | 2012-03-13 15:58:05 -0700 | [diff] [blame] | 43 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 44 | config USB |
| 45 | tristate "Support for Host-side USB" |
| 46 | depends on USB_ARCH_HAS_HCD |
Arnd Bergmann | badf6d4 | 2016-03-23 17:45:08 +0100 | [diff] [blame] | 47 | select USB_COMMON |
Clemens Ladisch | a853a3d | 2009-04-24 10:12:18 +0200 | [diff] [blame] | 48 | select NLS # for UTF-8 strings |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 49 | ---help--- |
| 50 | Universal Serial Bus (USB) is a specification for a serial bus |
| 51 | subsystem which offers higher speeds and more features than the |
| 52 | traditional PC serial port. The bus supplies power to peripherals |
| 53 | and allows for hot swapping. Up to 127 USB peripherals can be |
| 54 | connected to a single USB host in a tree structure. |
| 55 | |
| 56 | The USB host is the root of the tree, the peripherals are the |
| 57 | leaves and the inner nodes are special USB devices called hubs. |
| 58 | Most PCs now have USB host ports, used to connect peripherals |
| 59 | such as scanners, keyboards, mice, modems, cameras, disks, |
| 60 | flash memory, network links, and printers to the PC. |
| 61 | |
| 62 | Say Y here if your computer has a host-side USB port and you want |
| 63 | to use USB devices. You then need to say Y to at least one of the |
| 64 | Host Controller Driver (HCD) options below. Choose a USB 1.1 |
| 65 | controller, such as "UHCI HCD support" or "OHCI HCD support", |
| 66 | and "EHCI HCD (USB 2.0) support" except for older systems that |
| 67 | do not have USB 2.0 support. It doesn't normally hurt to select |
| 68 | them all if you are not certain. |
| 69 | |
| 70 | If your system has a device-side USB port, used in the peripheral |
| 71 | side of the USB protocol, see the "USB Gadget" framework instead. |
| 72 | |
| 73 | After choosing your HCD, then select drivers for the USB peripherals |
| 74 | you'll be using. You may want to check out the information provided |
| 75 | in <file:Documentation/usb/> and especially the links given in |
| 76 | <file:Documentation/usb/usb-help.txt>. |
| 77 | |
| 78 | To compile this driver as a module, choose M here: the |
| 79 | module will be called usbcore. |
| 80 | |
yuan linyu | 2c93e79 | 2017-02-25 19:20:55 +0800 | [diff] [blame] | 81 | config USB_PCI |
| 82 | bool "PCI based USB host interface" |
| 83 | depends on PCI |
| 84 | default y |
| 85 | ---help--- |
Chris Mayo | 2bb80de | 2017-10-17 17:54:52 +0100 | [diff] [blame] | 86 | Many embedded system SOCs (e.g. freescale T2080) have both |
| 87 | PCI and USB modules with the USB module directly controlled by |
| 88 | registers and having no relationship to the PCI module. |
yuan linyu | 2c93e79 | 2017-02-25 19:20:55 +0800 | [diff] [blame] | 89 | |
Chris Mayo | 2bb80de | 2017-10-17 17:54:52 +0100 | [diff] [blame] | 90 | If you have such a device you may say N here and PCI related code |
| 91 | will not be built in the USB driver. |
yuan linyu | 2c93e79 | 2017-02-25 19:20:55 +0800 | [diff] [blame] | 92 | |
Florian Fainelli | 25e11ec | 2013-04-09 14:29:25 +0200 | [diff] [blame] | 93 | if USB |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 94 | |
Florian Fainelli | 25e11ec | 2013-04-09 14:29:25 +0200 | [diff] [blame] | 95 | source "drivers/usb/core/Kconfig" |
Felipe Balbi | 72246da | 2011-08-19 18:10:58 +0300 | [diff] [blame] | 96 | |
Simon Arlott | 3bea302 | 2008-07-21 20:44:50 +0100 | [diff] [blame] | 97 | source "drivers/usb/mon/Kconfig" |
| 98 | |
Greg Kroah-Hartman | 470cc41 | 2008-09-17 16:34:26 +0100 | [diff] [blame] | 99 | source "drivers/usb/wusbcore/Kconfig" |
| 100 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 101 | source "drivers/usb/host/Kconfig" |
| 102 | |
Kuninori Morimoto | f1407d5 | 2011-04-04 13:44:59 +0900 | [diff] [blame] | 103 | source "drivers/usb/renesas_usbhs/Kconfig" |
| 104 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 105 | source "drivers/usb/class/Kconfig" |
| 106 | |
| 107 | source "drivers/usb/storage/Kconfig" |
| 108 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 109 | source "drivers/usb/image/Kconfig" |
| 110 | |
Valentina Manea | 96c2737 | 2014-08-20 07:31:00 +0300 | [diff] [blame] | 111 | source "drivers/usb/usbip/Kconfig" |
| 112 | |
Florian Fainelli | 25e11ec | 2013-04-09 14:29:25 +0200 | [diff] [blame] | 113 | endif |
| 114 | |
Chunfeng Yun | df2069a | 2016-10-19 10:28:23 +0800 | [diff] [blame] | 115 | source "drivers/usb/mtu3/Kconfig" |
| 116 | |
Ezequiel Garcia | 845c071 | 2013-12-22 00:08:33 -0300 | [diff] [blame] | 117 | source "drivers/usb/musb/Kconfig" |
| 118 | |
Florian Fainelli | 25e11ec | 2013-04-09 14:29:25 +0200 | [diff] [blame] | 119 | source "drivers/usb/dwc3/Kconfig" |
| 120 | |
Paul Zimmerman | 197ba5f | 2014-01-13 13:50:09 -0800 | [diff] [blame] | 121 | source "drivers/usb/dwc2/Kconfig" |
| 122 | |
Florian Fainelli | 25e11ec | 2013-04-09 14:29:25 +0200 | [diff] [blame] | 123 | source "drivers/usb/chipidea/Kconfig" |
| 124 | |
Laurent Pinchart | 7ef077a | 2015-01-21 00:56:02 +0200 | [diff] [blame] | 125 | source "drivers/usb/isp1760/Kconfig" |
| 126 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 127 | comment "USB port drivers" |
Florian Fainelli | 25e11ec | 2013-04-09 14:29:25 +0200 | [diff] [blame] | 128 | |
| 129 | if USB |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 130 | |
| 131 | config USB_USS720 |
| 132 | tristate "USS720 parport driver" |
Florian Fainelli | 25e11ec | 2013-04-09 14:29:25 +0200 | [diff] [blame] | 133 | depends on PARPORT |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 134 | select PARPORT_NOT_PC |
| 135 | ---help--- |
| 136 | This driver is for USB parallel port adapters that use the Lucent |
| 137 | Technologies USS-720 chip. These cables are plugged into your USB |
| 138 | port and provide USB compatibility to peripherals designed with |
| 139 | parallel port interfaces. |
| 140 | |
| 141 | The chip has two modes: automatic mode and manual mode. In automatic |
| 142 | mode, it looks to the computer like a standard USB printer. Only |
| 143 | printers may be connected to the USS-720 in this mode. The generic |
| 144 | USB printer driver ("USB Printer support", above) may be used in |
| 145 | that mode, and you can say N here if you want to use the chip only |
| 146 | in this mode. |
| 147 | |
| 148 | Manual mode is not limited to printers, any parallel port |
| 149 | device should work. This driver utilizes manual mode. |
| 150 | Note however that some operations are three orders of magnitude |
| 151 | slower than on a PCI/ISA Parallel Port, so timing critical |
| 152 | applications might not work. |
| 153 | |
| 154 | Say Y here if you own an USS-720 USB->Parport cable and intend to |
| 155 | connect anything other than a printer to it. |
| 156 | |
| 157 | To compile this driver as a module, choose M here: the |
| 158 | module will be called uss720. |
| 159 | |
| 160 | source "drivers/usb/serial/Kconfig" |
| 161 | |
| 162 | source "drivers/usb/misc/Kconfig" |
| 163 | |
| 164 | source "drivers/usb/atm/Kconfig" |
| 165 | |
Florian Fainelli | 25e11ec | 2013-04-09 14:29:25 +0200 | [diff] [blame] | 166 | endif # USB |
| 167 | |
| 168 | source "drivers/usb/phy/Kconfig" |
| 169 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 170 | source "drivers/usb/gadget/Kconfig" |
| 171 | |
Heikki Krogerus | fab9288 | 2017-03-21 13:56:47 +0200 | [diff] [blame] | 172 | source "drivers/usb/typec/Kconfig" |
| 173 | |
Hans de Goede | f6fb9ec | 2018-03-20 15:57:10 +0300 | [diff] [blame] | 174 | source "drivers/usb/roles/Kconfig" |
| 175 | |
Michal Sojka | 0cfbd32 | 2014-09-24 22:43:21 +0200 | [diff] [blame] | 176 | config USB_LED_TRIG |
| 177 | bool "USB LED Triggers" |
Peter Chen | cb9c1cf | 2016-09-14 09:49:30 +0800 | [diff] [blame] | 178 | depends on LEDS_CLASS && LEDS_TRIGGERS |
| 179 | select USB_COMMON |
Michal Sojka | 0cfbd32 | 2014-09-24 22:43:21 +0200 | [diff] [blame] | 180 | help |
| 181 | This option adds LED triggers for USB host and/or gadget activity. |
| 182 | |
| 183 | Say Y here if you are working on a system with led-class supported |
| 184 | LEDs and you want to use them as activity indicators for USB host or |
| 185 | gadget. |
| 186 | |
Peter Chen | ad764c4 | 2016-08-16 17:33:25 +0800 | [diff] [blame] | 187 | config USB_ULPI_BUS |
| 188 | tristate "USB ULPI PHY interface support" |
Peter Chen | cb9c1cf | 2016-09-14 09:49:30 +0800 | [diff] [blame] | 189 | select USB_COMMON |
Peter Chen | ad764c4 | 2016-08-16 17:33:25 +0800 | [diff] [blame] | 190 | help |
| 191 | UTMI+ Low Pin Interface (ULPI) is specification for a commonly used |
| 192 | USB 2.0 PHY interface. The ULPI specification defines a standard set |
| 193 | of registers that can be used to detect the vendor and product which |
| 194 | allows ULPI to be handled as a bus. This module is the driver for that |
| 195 | bus. |
| 196 | |
| 197 | The ULPI interfaces (the buses) are registered by the drivers for USB |
| 198 | controllers which support ULPI register access and have ULPI PHY |
| 199 | attached to them. The ULPI PHY drivers themselves are normal PHY |
| 200 | drivers. |
| 201 | |
| 202 | ULPI PHYs provide often functions such as ADP sensing/probing (OTG |
| 203 | protocol) and USB charger detection. |
| 204 | |
| 205 | To compile this driver as a module, choose M here: the module will |
| 206 | be called ulpi. |
| 207 | |
Jan Engelhardt | 04d06ad | 2007-05-10 23:04:13 -0700 | [diff] [blame] | 208 | endif # USB_SUPPORT |