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 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 39source "drivers/usb/common/Kconfig" 40 41config USB_ARCH_HAS_HCD 42 def_bool y 43 44config USB 45 tristate "Support for Host-side USB" 46 depends on USB_ARCH_HAS_HCD 47 select GENERIC_ALLOCATOR 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.rst>. 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/host/Kconfig" 101 102source "drivers/usb/renesas_usbhs/Kconfig" 103 104source "drivers/usb/class/Kconfig" 105 106source "drivers/usb/storage/Kconfig" 107 108source "drivers/usb/image/Kconfig" 109 110source "drivers/usb/usbip/Kconfig" 111 112endif 113 114comment "USB dual-mode controller drivers" 115 116source "drivers/usb/cdns3/Kconfig" 117 118source "drivers/usb/fotg210/Kconfig" 119 120source "drivers/usb/mtu3/Kconfig" 121 122source "drivers/usb/musb/Kconfig" 123 124source "drivers/usb/dwc3/Kconfig" 125 126source "drivers/usb/dwc2/Kconfig" 127 128source "drivers/usb/chipidea/Kconfig" 129 130source "drivers/usb/isp1760/Kconfig" 131 132comment "USB port drivers" 133 134if USB 135 136source "drivers/usb/serial/Kconfig" 137 138source "drivers/usb/misc/Kconfig" 139 140source "drivers/usb/atm/Kconfig" 141 142endif # USB 143 144source "drivers/usb/phy/Kconfig" 145 146source "drivers/usb/gadget/Kconfig" 147 148source "drivers/usb/typec/Kconfig" 149 150source "drivers/usb/roles/Kconfig" 151 152endif # USB_SUPPORT 153