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