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