| 1 | # |
| 2 | # USB device configuration |
| 3 | # |
| 4 | |
| 5 | menuconfig USB_SUPPORT |
| 6 | bool "USB support" |
| 7 | depends on HAS_IOMEM |
| 8 | default y |
| 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. |
| 12 | |
| 13 | if USB_SUPPORT |
| 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 |
| 21 | default y if USB_ARCH_HAS_EHCI |
| 22 | default y if PCMCIA && !M32R # sl811_cs |
| 23 | default y if ARM # SL-811 |
| 24 | default y if SUPERH # r8a66597-hcd |
| 25 | default PCI |
| 26 | |
| 27 | # many non-PCI SOC chips embed OHCI |
| 28 | config USB_ARCH_HAS_OHCI |
| 29 | boolean |
| 30 | # ARM: |
| 31 | default y if SA1111 |
| 32 | default y if ARCH_OMAP |
| 33 | default y if ARCH_LH7A404 |
| 34 | default y if ARCH_S3C2410 |
| 35 | default y if PXA27x |
| 36 | default y if ARCH_EP93XX |
| 37 | default y if ARCH_AT91 |
| 38 | default y if ARCH_PNX4008 |
| 39 | # PPC: |
| 40 | default y if STB03xxx |
| 41 | default y if PPC_MPC52xx |
| 42 | # MIPS: |
| 43 | default y if SOC_AU1X00 |
| 44 | # more: |
| 45 | default PCI |
| 46 | |
| 47 | # some non-PCI hcds implement EHCI |
| 48 | config USB_ARCH_HAS_EHCI |
| 49 | boolean |
| 50 | default y if PPC_83xx |
| 51 | default y if SOC_AU1200 |
| 52 | default PCI |
| 53 | |
| 54 | # ARM SA1111 chips have a non-PCI based "OHCI-compatible" USB host interface. |
| 55 | config USB |
| 56 | tristate "Support for Host-side USB" |
| 57 | depends on USB_ARCH_HAS_HCD |
| 58 | ---help--- |
| 59 | Universal Serial Bus (USB) is a specification for a serial bus |
| 60 | subsystem which offers higher speeds and more features than the |
| 61 | traditional PC serial port. The bus supplies power to peripherals |
| 62 | and allows for hot swapping. Up to 127 USB peripherals can be |
| 63 | connected to a single USB host in a tree structure. |
| 64 | |
| 65 | The USB host is the root of the tree, the peripherals are the |
| 66 | leaves and the inner nodes are special USB devices called hubs. |
| 67 | Most PCs now have USB host ports, used to connect peripherals |
| 68 | such as scanners, keyboards, mice, modems, cameras, disks, |
| 69 | flash memory, network links, and printers to the PC. |
| 70 | |
| 71 | Say Y here if your computer has a host-side USB port and you want |
| 72 | to use USB devices. You then need to say Y to at least one of the |
| 73 | Host Controller Driver (HCD) options below. Choose a USB 1.1 |
| 74 | controller, such as "UHCI HCD support" or "OHCI HCD support", |
| 75 | and "EHCI HCD (USB 2.0) support" except for older systems that |
| 76 | do not have USB 2.0 support. It doesn't normally hurt to select |
| 77 | them all if you are not certain. |
| 78 | |
| 79 | If your system has a device-side USB port, used in the peripheral |
| 80 | side of the USB protocol, see the "USB Gadget" framework instead. |
| 81 | |
| 82 | After choosing your HCD, then select drivers for the USB peripherals |
| 83 | you'll be using. You may want to check out the information provided |
| 84 | in <file:Documentation/usb/> and especially the links given in |
| 85 | <file:Documentation/usb/usb-help.txt>. |
| 86 | |
| 87 | To compile this driver as a module, choose M here: the |
| 88 | module will be called usbcore. |
| 89 | |
| 90 | source "drivers/usb/core/Kconfig" |
| 91 | |
| 92 | source "drivers/usb/host/Kconfig" |
| 93 | |
| 94 | source "drivers/usb/class/Kconfig" |
| 95 | |
| 96 | source "drivers/usb/storage/Kconfig" |
| 97 | |
| 98 | source "drivers/usb/image/Kconfig" |
| 99 | |
| 100 | source "drivers/usb/mon/Kconfig" |
| 101 | |
| 102 | comment "USB port drivers" |
| 103 | depends on USB |
| 104 | |
| 105 | config USB_USS720 |
| 106 | tristate "USS720 parport driver" |
| 107 | depends on USB && PARPORT |
| 108 | select PARPORT_NOT_PC |
| 109 | ---help--- |
| 110 | This driver is for USB parallel port adapters that use the Lucent |
| 111 | Technologies USS-720 chip. These cables are plugged into your USB |
| 112 | port and provide USB compatibility to peripherals designed with |
| 113 | parallel port interfaces. |
| 114 | |
| 115 | The chip has two modes: automatic mode and manual mode. In automatic |
| 116 | mode, it looks to the computer like a standard USB printer. Only |
| 117 | printers may be connected to the USS-720 in this mode. The generic |
| 118 | USB printer driver ("USB Printer support", above) may be used in |
| 119 | that mode, and you can say N here if you want to use the chip only |
| 120 | in this mode. |
| 121 | |
| 122 | Manual mode is not limited to printers, any parallel port |
| 123 | device should work. This driver utilizes manual mode. |
| 124 | Note however that some operations are three orders of magnitude |
| 125 | slower than on a PCI/ISA Parallel Port, so timing critical |
| 126 | applications might not work. |
| 127 | |
| 128 | Say Y here if you own an USS-720 USB->Parport cable and intend to |
| 129 | connect anything other than a printer to it. |
| 130 | |
| 131 | To compile this driver as a module, choose M here: the |
| 132 | module will be called uss720. |
| 133 | |
| 134 | source "drivers/usb/serial/Kconfig" |
| 135 | |
| 136 | source "drivers/usb/misc/Kconfig" |
| 137 | |
| 138 | source "drivers/usb/atm/Kconfig" |
| 139 | |
| 140 | source "drivers/usb/gadget/Kconfig" |
| 141 | |
| 142 | endif # USB_SUPPORT |