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 125source "drivers/usb/core/Kconfig" 126 127source "drivers/usb/dwc3/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/chipidea/Kconfig" 138 139source "drivers/usb/renesas_usbhs/Kconfig" 140 141source "drivers/usb/class/Kconfig" 142 143source "drivers/usb/storage/Kconfig" 144 145source "drivers/usb/image/Kconfig" 146 147comment "USB port drivers" 148 depends on USB 149 150config USB_USS720 151 tristate "USS720 parport driver" 152 depends on USB && PARPORT 153 select PARPORT_NOT_PC 154 ---help--- 155 This driver is for USB parallel port adapters that use the Lucent 156 Technologies USS-720 chip. These cables are plugged into your USB 157 port and provide USB compatibility to peripherals designed with 158 parallel port interfaces. 159 160 The chip has two modes: automatic mode and manual mode. In automatic 161 mode, it looks to the computer like a standard USB printer. Only 162 printers may be connected to the USS-720 in this mode. The generic 163 USB printer driver ("USB Printer support", above) may be used in 164 that mode, and you can say N here if you want to use the chip only 165 in this mode. 166 167 Manual mode is not limited to printers, any parallel port 168 device should work. This driver utilizes manual mode. 169 Note however that some operations are three orders of magnitude 170 slower than on a PCI/ISA Parallel Port, so timing critical 171 applications might not work. 172 173 Say Y here if you own an USS-720 USB->Parport cable and intend to 174 connect anything other than a printer to it. 175 176 To compile this driver as a module, choose M here: the 177 module will be called uss720. 178 179source "drivers/usb/serial/Kconfig" 180 181source "drivers/usb/misc/Kconfig" 182 183source "drivers/usb/phy/Kconfig" 184 185source "drivers/usb/atm/Kconfig" 186 187source "drivers/usb/gadget/Kconfig" 188 189source "drivers/usb/otg/Kconfig" 190 191endif # USB_SUPPORT 192