1# 2# USB device configuration 3# 4 5# many non-PCI SOC chips embed OHCI 6config USB_ARCH_HAS_OHCI 7 boolean 8 # ARM: 9 default y if SA1111 10 default y if ARCH_OMAP 11 default y if ARCH_S3C24XX 12 default y if PXA27x 13 default y if PXA3xx 14 default y if ARCH_EP93XX 15 default y if ARCH_AT91 16 default y if MFD_TC6393XB 17 default y if ARCH_W90X900 18 default y if ARCH_DAVINCI_DA8XX 19 default y if ARCH_CNS3XXX 20 default y if PLAT_SPEAR 21 default y if ARCH_EXYNOS 22 # PPC: 23 default y if STB03xxx 24 default y if PPC_MPC52xx 25 # MIPS: 26 default y if MIPS_ALCHEMY 27 default y if MACH_JZ4740 28 # more: 29 default PCI 30 31# some non-PCI hcds implement EHCI 32config USB_ARCH_HAS_EHCI 33 boolean 34 default y if FSL_SOC 35 default y if PPC_MPC512x 36 default y if ARCH_IXP4XX 37 default y if ARCH_W90X900 38 default y if ARCH_AT91 39 default y if ARCH_MXC 40 default y if ARCH_OMAP3 41 default y if ARCH_CNS3XXX 42 default y if ARCH_VT8500 43 default y if PLAT_SPEAR 44 default y if PLAT_S5P 45 default y if ARCH_MSM 46 default y if MICROBLAZE 47 default y if SPARC_LEON 48 default y if ARCH_MMP 49 default y if MACH_LOONGSON1 50 default y if PLAT_ORION 51 default PCI 52 53# some non-PCI HCDs implement xHCI 54config USB_ARCH_HAS_XHCI 55 boolean 56 default PCI 57 58menuconfig USB_SUPPORT 59 bool "USB support" 60 depends on HAS_IOMEM 61 default y 62 ---help--- 63 This option adds core support for Universal Serial Bus (USB). 64 You will also need drivers from the following menu to make use of it. 65 66if USB_SUPPORT 67 68config USB_COMMON 69 tristate 70 default y 71 depends on USB || USB_GADGET 72 73# Host-side USB depends on having a host controller 74# NOTE: dummy_hcd is always an option, but it's ignored here ... 75# NOTE: SL-811 option should be board-specific ... 76config USB_ARCH_HAS_HCD 77 boolean 78 default y if USB_ARCH_HAS_OHCI 79 default y if USB_ARCH_HAS_EHCI 80 default y if USB_ARCH_HAS_XHCI 81 default y if PCMCIA && !M32R # sl811_cs 82 default y if ARM # SL-811 83 default y if BLACKFIN # SL-811 84 default y if SUPERH # r8a66597-hcd 85 default PCI 86 87# ARM SA1111 chips have a non-PCI based "OHCI-compatible" USB host interface. 88config USB 89 tristate "Support for Host-side USB" 90 depends on USB_ARCH_HAS_HCD 91 select NLS # for UTF-8 strings 92 ---help--- 93 Universal Serial Bus (USB) is a specification for a serial bus 94 subsystem which offers higher speeds and more features than the 95 traditional PC serial port. The bus supplies power to peripherals 96 and allows for hot swapping. Up to 127 USB peripherals can be 97 connected to a single USB host in a tree structure. 98 99 The USB host is the root of the tree, the peripherals are the 100 leaves and the inner nodes are special USB devices called hubs. 101 Most PCs now have USB host ports, used to connect peripherals 102 such as scanners, keyboards, mice, modems, cameras, disks, 103 flash memory, network links, and printers to the PC. 104 105 Say Y here if your computer has a host-side USB port and you want 106 to use USB devices. You then need to say Y to at least one of the 107 Host Controller Driver (HCD) options below. Choose a USB 1.1 108 controller, such as "UHCI HCD support" or "OHCI HCD support", 109 and "EHCI HCD (USB 2.0) support" except for older systems that 110 do not have USB 2.0 support. It doesn't normally hurt to select 111 them all if you are not certain. 112 113 If your system has a device-side USB port, used in the peripheral 114 side of the USB protocol, see the "USB Gadget" framework instead. 115 116 After choosing your HCD, then select drivers for the USB peripherals 117 you'll be using. You may want to check out the information provided 118 in <file:Documentation/usb/> and especially the links given in 119 <file:Documentation/usb/usb-help.txt>. 120 121 To compile this driver as a module, choose M here: the 122 module will be called usbcore. 123 124source "drivers/usb/core/Kconfig" 125 126source "drivers/usb/dwc3/Kconfig" 127 128source "drivers/usb/mon/Kconfig" 129 130source "drivers/usb/wusbcore/Kconfig" 131 132source "drivers/usb/host/Kconfig" 133 134source "drivers/usb/musb/Kconfig" 135 136source "drivers/usb/chipidea/Kconfig" 137 138source "drivers/usb/renesas_usbhs/Kconfig" 139 140source "drivers/usb/class/Kconfig" 141 142source "drivers/usb/storage/Kconfig" 143 144source "drivers/usb/image/Kconfig" 145 146comment "USB port drivers" 147 depends on USB 148 149config USB_USS720 150 tristate "USS720 parport driver" 151 depends on USB && PARPORT 152 select PARPORT_NOT_PC 153 ---help--- 154 This driver is for USB parallel port adapters that use the Lucent 155 Technologies USS-720 chip. These cables are plugged into your USB 156 port and provide USB compatibility to peripherals designed with 157 parallel port interfaces. 158 159 The chip has two modes: automatic mode and manual mode. In automatic 160 mode, it looks to the computer like a standard USB printer. Only 161 printers may be connected to the USS-720 in this mode. The generic 162 USB printer driver ("USB Printer support", above) may be used in 163 that mode, and you can say N here if you want to use the chip only 164 in this mode. 165 166 Manual mode is not limited to printers, any parallel port 167 device should work. This driver utilizes manual mode. 168 Note however that some operations are three orders of magnitude 169 slower than on a PCI/ISA Parallel Port, so timing critical 170 applications might not work. 171 172 Say Y here if you own an USS-720 USB->Parport cable and intend to 173 connect anything other than a printer to it. 174 175 To compile this driver as a module, choose M here: the 176 module will be called uss720. 177 178source "drivers/usb/serial/Kconfig" 179 180source "drivers/usb/misc/Kconfig" 181 182source "drivers/usb/phy/Kconfig" 183 184source "drivers/usb/atm/Kconfig" 185 186source "drivers/usb/gadget/Kconfig" 187 188source "drivers/usb/otg/Kconfig" 189 190endif # USB_SUPPORT 191