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 GENERIC_ALLOCATOR 49 select USB_COMMON 50 select NLS # for UTF-8 strings 51 ---help--- 52 Universal Serial Bus (USB) is a specification for a serial bus 53 subsystem which offers higher speeds and more features than the 54 traditional PC serial port. The bus supplies power to peripherals 55 and allows for hot swapping. Up to 127 USB peripherals can be 56 connected to a single USB host in a tree structure. 57 58 The USB host is the root of the tree, the peripherals are the 59 leaves and the inner nodes are special USB devices called hubs. 60 Most PCs now have USB host ports, used to connect peripherals 61 such as scanners, keyboards, mice, modems, cameras, disks, 62 flash memory, network links, and printers to the PC. 63 64 Say Y here if your computer has a host-side USB port and you want 65 to use USB devices. You then need to say Y to at least one of the 66 Host Controller Driver (HCD) options below. Choose a USB 1.1 67 controller, such as "UHCI HCD support" or "OHCI HCD support", 68 and "EHCI HCD (USB 2.0) support" except for older systems that 69 do not have USB 2.0 support. It doesn't normally hurt to select 70 them all if you are not certain. 71 72 If your system has a device-side USB port, used in the peripheral 73 side of the USB protocol, see the "USB Gadget" framework instead. 74 75 After choosing your HCD, then select drivers for the USB peripherals 76 you'll be using. You may want to check out the information provided 77 in <file:Documentation/usb/> and especially the links given in 78 <file:Documentation/usb/usb-help.rst>. 79 80 To compile this driver as a module, choose M here: the 81 module will be called usbcore. 82 83config USB_PCI 84 bool "PCI based USB host interface" 85 depends on PCI 86 default y 87 ---help--- 88 Many embedded system SOCs (e.g. freescale T2080) have both 89 PCI and USB modules with the USB module directly controlled by 90 registers and having no relationship to the PCI module. 91 92 If you have such a device you may say N here and PCI related code 93 will not be built in the USB driver. 94 95if USB 96 97source "drivers/usb/core/Kconfig" 98 99source "drivers/usb/mon/Kconfig" 100 101source "drivers/usb/host/Kconfig" 102 103source "drivers/usb/renesas_usbhs/Kconfig" 104 105source "drivers/usb/class/Kconfig" 106 107source "drivers/usb/storage/Kconfig" 108 109source "drivers/usb/image/Kconfig" 110 111source "drivers/usb/usbip/Kconfig" 112 113endif 114 115source "drivers/usb/mtu3/Kconfig" 116 117source "drivers/usb/musb/Kconfig" 118 119source "drivers/usb/dwc3/Kconfig" 120 121source "drivers/usb/dwc2/Kconfig" 122 123source "drivers/usb/chipidea/Kconfig" 124 125source "drivers/usb/isp1760/Kconfig" 126 127comment "USB port drivers" 128 129if USB 130 131config USB_USS720 132 tristate "USS720 parport driver" 133 depends on PARPORT 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 160source "drivers/usb/serial/Kconfig" 161 162source "drivers/usb/misc/Kconfig" 163 164source "drivers/usb/atm/Kconfig" 165 166endif # USB 167 168source "drivers/usb/phy/Kconfig" 169 170source "drivers/usb/gadget/Kconfig" 171 172source "drivers/usb/typec/Kconfig" 173 174source "drivers/usb/roles/Kconfig" 175 176config USB_LED_TRIG 177 bool "USB LED Triggers" 178 depends on LEDS_CLASS && LEDS_TRIGGERS 179 select USB_COMMON 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 187config USB_ULPI_BUS 188 tristate "USB ULPI PHY interface support" 189 select USB_COMMON 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 208endif # USB_SUPPORT 209