Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | # |
| 2 | # USB device configuration |
| 3 | # |
| 4 | |
Jan Engelhardt | 04d06ad | 2007-05-10 23:04:13 -0700 | [diff] [blame] | 5 | menuconfig USB_SUPPORT |
| 6 | bool "USB support" |
Martin Schwidefsky | e25df12 | 2007-05-10 15:45:57 +0200 | [diff] [blame] | 7 | depends on HAS_IOMEM |
Linus Torvalds | 7732089 | 2007-07-12 17:06:50 -0700 | [diff] [blame] | 8 | default y |
Jan Engelhardt | 06bfb7e | 2007-08-18 12:56:21 +0200 | [diff] [blame] | 9 | ---help--- |
| 10 | This option adds core support for Universal Serial Bus (USB). |
| 11 | You will also need drivers from the following menu to make use of it. |
Jan Engelhardt | 04d06ad | 2007-05-10 23:04:13 -0700 | [diff] [blame] | 12 | |
| 13 | if USB_SUPPORT |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 14 | |
| 15 | # Host-side USB depends on having a host controller |
| 16 | # NOTE: dummy_hcd is always an option, but it's ignored here ... |
| 17 | # NOTE: SL-811 option should be board-specific ... |
| 18 | config USB_ARCH_HAS_HCD |
| 19 | boolean |
| 20 | default y if USB_ARCH_HAS_OHCI |
Jordan Crouse | 76fa9a2 | 2006-01-20 14:06:09 -0800 | [diff] [blame] | 21 | default y if USB_ARCH_HAS_EHCI |
Al Viro | 0ab7a25 | 2007-07-17 08:49:35 +0100 | [diff] [blame] | 22 | default y if PCMCIA && !M32R # sl811_cs |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 23 | default y if ARM # SL-811 |
Michael Hennerich | ca0e948 | 2009-12-21 11:16:00 -0500 | [diff] [blame] | 24 | default y if BLACKFIN # SL-811 |
Paul Mundt | a3b5351 | 2007-08-07 19:21:09 +0900 | [diff] [blame] | 25 | default y if SUPERH # r8a66597-hcd |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 26 | default PCI |
| 27 | |
| 28 | # many non-PCI SOC chips embed OHCI |
| 29 | config USB_ARCH_HAS_OHCI |
| 30 | boolean |
| 31 | # ARM: |
| 32 | default y if SA1111 |
| 33 | default y if ARCH_OMAP |
| 34 | default y if ARCH_LH7A404 |
Ben Dooks | 3eb0c5f | 2005-07-29 12:18:03 -0700 | [diff] [blame] | 35 | default y if ARCH_S3C2410 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 36 | default y if PXA27x |
eric miao | e77ec18 | 2007-12-12 09:07:47 +0800 | [diff] [blame] | 37 | default y if PXA3xx |
Lennert Buytenhek | a5b7474 | 2006-06-23 23:02:01 +0200 | [diff] [blame] | 38 | default y if ARCH_EP93XX |
Andrew Victor | 58a0cd7 | 2006-12-01 14:51:13 +0100 | [diff] [blame] | 39 | default y if ARCH_AT91 |
Dmitry Baryshkov | 78c7341 | 2008-10-08 16:14:23 +0400 | [diff] [blame] | 40 | default y if ARCH_PNX4008 && I2C |
| 41 | default y if MFD_TC6393XB |
Wan ZongShun | 586dfc8 | 2009-06-13 09:14:28 +0800 | [diff] [blame] | 42 | default y if ARCH_W90X900 |
Sergei Shtylyov | efe7daf | 2010-02-12 23:52:34 +0400 | [diff] [blame] | 43 | default y if ARCH_DAVINCI_DA8XX |
Deepak Sikri | c8c38de | 2010-11-10 14:33:18 +0530 | [diff] [blame] | 44 | default y if PLAT_SPEAR |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 45 | # PPC: |
| 46 | default y if STB03xxx |
| 47 | default y if PPC_MPC52xx |
| 48 | # MIPS: |
Manuel Lauss | 42a4f17 | 2010-07-15 21:45:04 +0200 | [diff] [blame] | 49 | default y if MIPS_ALCHEMY |
Lars-Peter Clausen | 2249071 | 2010-06-19 04:08:24 +0000 | [diff] [blame] | 50 | default y if MACH_JZ4740 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 51 | # more: |
| 52 | default PCI |
| 53 | |
Jordan Crouse | 76fa9a2 | 2006-01-20 14:06:09 -0800 | [diff] [blame] | 54 | # some non-PCI hcds implement EHCI |
| 55 | config USB_ARCH_HAS_EHCI |
| 56 | boolean |
| 57 | default y if PPC_83xx |
Anatolij Gustschin | 230f7ed | 2010-09-28 20:55:21 +0200 | [diff] [blame] | 58 | default y if PPC_MPC512x |
Jordan Crouse | 76fa9a2 | 2006-01-20 14:06:09 -0800 | [diff] [blame] | 59 | default y if SOC_AU1200 |
Vladimir Barinov | 91bc4d3 | 2007-12-30 15:21:11 -0800 | [diff] [blame] | 60 | default y if ARCH_IXP4XX |
Wan ZongShun | 586dfc8 | 2009-06-13 09:14:28 +0800 | [diff] [blame] | 61 | default y if ARCH_W90X900 |
Nicolas Ferre | 501c9c0 | 2009-07-27 14:47:40 -0700 | [diff] [blame] | 62 | default y if ARCH_AT91SAM9G45 |
Daniel Mack | 7e8d5cd | 2009-10-28 01:14:59 +0100 | [diff] [blame] | 63 | default y if ARCH_MXC |
Tony Lindgren | a8eb7ca | 2010-02-12 12:26:48 -0800 | [diff] [blame] | 64 | default y if ARCH_OMAP3 |
Alexey Charkov | ad78aca | 2010-11-07 19:28:55 +0300 | [diff] [blame] | 65 | default y if ARCH_VT8500 |
Deepak Sikri | c8c38de | 2010-11-10 14:33:18 +0530 | [diff] [blame] | 66 | default y if PLAT_SPEAR |
Jordan Crouse | 76fa9a2 | 2006-01-20 14:06:09 -0800 | [diff] [blame] | 67 | default PCI |
| 68 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 69 | # ARM SA1111 chips have a non-PCI based "OHCI-compatible" USB host interface. |
| 70 | config USB |
| 71 | tristate "Support for Host-side USB" |
| 72 | depends on USB_ARCH_HAS_HCD |
Clemens Ladisch | a853a3d | 2009-04-24 10:12:18 +0200 | [diff] [blame] | 73 | select NLS # for UTF-8 strings |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 74 | ---help--- |
| 75 | Universal Serial Bus (USB) is a specification for a serial bus |
| 76 | subsystem which offers higher speeds and more features than the |
| 77 | traditional PC serial port. The bus supplies power to peripherals |
| 78 | and allows for hot swapping. Up to 127 USB peripherals can be |
| 79 | connected to a single USB host in a tree structure. |
| 80 | |
| 81 | The USB host is the root of the tree, the peripherals are the |
| 82 | leaves and the inner nodes are special USB devices called hubs. |
| 83 | Most PCs now have USB host ports, used to connect peripherals |
| 84 | such as scanners, keyboards, mice, modems, cameras, disks, |
| 85 | flash memory, network links, and printers to the PC. |
| 86 | |
| 87 | Say Y here if your computer has a host-side USB port and you want |
| 88 | to use USB devices. You then need to say Y to at least one of the |
| 89 | Host Controller Driver (HCD) options below. Choose a USB 1.1 |
| 90 | controller, such as "UHCI HCD support" or "OHCI HCD support", |
| 91 | and "EHCI HCD (USB 2.0) support" except for older systems that |
| 92 | do not have USB 2.0 support. It doesn't normally hurt to select |
| 93 | them all if you are not certain. |
| 94 | |
| 95 | If your system has a device-side USB port, used in the peripheral |
| 96 | side of the USB protocol, see the "USB Gadget" framework instead. |
| 97 | |
| 98 | After choosing your HCD, then select drivers for the USB peripherals |
| 99 | you'll be using. You may want to check out the information provided |
| 100 | in <file:Documentation/usb/> and especially the links given in |
| 101 | <file:Documentation/usb/usb-help.txt>. |
| 102 | |
| 103 | To compile this driver as a module, choose M here: the |
| 104 | module will be called usbcore. |
| 105 | |
| 106 | source "drivers/usb/core/Kconfig" |
| 107 | |
Simon Arlott | 3bea302 | 2008-07-21 20:44:50 +0100 | [diff] [blame] | 108 | source "drivers/usb/mon/Kconfig" |
| 109 | |
Greg Kroah-Hartman | 470cc41 | 2008-09-17 16:34:26 +0100 | [diff] [blame] | 110 | source "drivers/usb/wusbcore/Kconfig" |
| 111 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 112 | source "drivers/usb/host/Kconfig" |
| 113 | |
Felipe Balbi | 550a737 | 2008-07-24 12:27:36 +0300 | [diff] [blame] | 114 | source "drivers/usb/musb/Kconfig" |
| 115 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 116 | source "drivers/usb/class/Kconfig" |
| 117 | |
| 118 | source "drivers/usb/storage/Kconfig" |
| 119 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 120 | source "drivers/usb/image/Kconfig" |
| 121 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 122 | comment "USB port drivers" |
| 123 | depends on USB |
| 124 | |
| 125 | config USB_USS720 |
| 126 | tristate "USS720 parport driver" |
| 127 | depends on USB && PARPORT |
| 128 | select PARPORT_NOT_PC |
| 129 | ---help--- |
| 130 | This driver is for USB parallel port adapters that use the Lucent |
| 131 | Technologies USS-720 chip. These cables are plugged into your USB |
| 132 | port and provide USB compatibility to peripherals designed with |
| 133 | parallel port interfaces. |
| 134 | |
| 135 | The chip has two modes: automatic mode and manual mode. In automatic |
| 136 | mode, it looks to the computer like a standard USB printer. Only |
| 137 | printers may be connected to the USS-720 in this mode. The generic |
| 138 | USB printer driver ("USB Printer support", above) may be used in |
| 139 | that mode, and you can say N here if you want to use the chip only |
| 140 | in this mode. |
| 141 | |
| 142 | Manual mode is not limited to printers, any parallel port |
| 143 | device should work. This driver utilizes manual mode. |
| 144 | Note however that some operations are three orders of magnitude |
| 145 | slower than on a PCI/ISA Parallel Port, so timing critical |
| 146 | applications might not work. |
| 147 | |
| 148 | Say Y here if you own an USS-720 USB->Parport cable and intend to |
| 149 | connect anything other than a printer to it. |
| 150 | |
| 151 | To compile this driver as a module, choose M here: the |
| 152 | module will be called uss720. |
| 153 | |
| 154 | source "drivers/usb/serial/Kconfig" |
| 155 | |
| 156 | source "drivers/usb/misc/Kconfig" |
| 157 | |
| 158 | source "drivers/usb/atm/Kconfig" |
| 159 | |
| 160 | source "drivers/usb/gadget/Kconfig" |
| 161 | |
David Brownell | b8da867 | 2008-11-24 11:53:35 -0800 | [diff] [blame] | 162 | source "drivers/usb/otg/Kconfig" |
| 163 | |
Jan Engelhardt | 04d06ad | 2007-05-10 23:04:13 -0700 | [diff] [blame] | 164 | endif # USB_SUPPORT |