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