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