Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy...
[linux-2.6] / drivers / net / usb / Kconfig
1 #
2 # USB Network devices configuration
3 #
4 comment "Networking support is needed for USB Network Adapter support"
5         depends on USB && !NET
6
7 menu "USB Network Adapters"
8         depends on USB && NET
9
10 config USB_CATC
11         tristate "USB CATC NetMate-based Ethernet device support (EXPERIMENTAL)"
12         depends on EXPERIMENTAL
13         select CRC32
14         ---help---
15           Say Y if you want to use one of the following 10Mbps USB Ethernet
16           device based on the EL1210A chip. Supported devices are:
17           Belkin F5U011
18           Belkin F5U111
19           CATC NetMate
20           CATC NetMate II
21           smartBridges smartNIC
22
23           This driver makes the adapter appear as a normal Ethernet interface,
24           typically on eth0, if it is the only ethernet device, or perhaps on
25           eth1, if you have a PCI or ISA ethernet card installed.
26
27           To compile this driver as a module, choose M here: the
28           module will be called catc.
29
30 config USB_KAWETH
31         tristate "USB KLSI KL5USB101-based ethernet device support"
32         ---help---
33           Say Y here if you want to use one of the following 10Mbps only
34           USB Ethernet adapters based on the KLSI KL5KUSB101B chipset:
35           3Com 3C19250
36           ADS USB-10BT
37           ATEN USB Ethernet
38           ASANTE USB To Ethernet Adapter
39           AOX Endpoints USB Ethernet
40           Correga K.K.
41           D-Link DSB-650C and DU-E10
42           Entrega / Portgear E45
43           I-O DATA USB-ET/T
44           Jaton USB Ethernet Device Adapter
45           Kingston Technology USB Ethernet Adapter
46           Linksys USB10T
47           Mobility USB-Ethernet Adapter
48           NetGear EA-101
49           Peracom Enet and Enet2
50           Portsmith Express Ethernet Adapter
51           Shark Pocket Adapter
52           SMC 2202USB
53           Sony Vaio port extender
54
55           This driver is likely to work with most 10Mbps only USB Ethernet
56           adapters, including some "no brand" devices. It does NOT work on
57           SmartBridges smartNIC or on Belkin F5U111 devices - you should use
58           the CATC NetMate driver for those. If you are not sure which one
59           you need, select both, and the correct one should be selected for
60           you.
61
62           This driver makes the adapter appear as a normal Ethernet interface,
63           typically on eth0, if it is the only ethernet device, or perhaps on
64           eth1, if you have a PCI or ISA ethernet card installed.
65
66           To compile this driver as a module, choose M here: the
67           module will be called kaweth.
68
69 config USB_PEGASUS
70         tristate "USB Pegasus/Pegasus-II based ethernet device support"
71         select MII
72         ---help---
73           Say Y here if you know you have Pegasus or Pegasus-II based adapter.
74           If in doubt then look at <file:drivers/usb/net/pegasus.h> for the
75           complete list of supported devices.
76
77           If your particular adapter is not in the list and you are _sure_ it
78           is Pegasus or Pegasus II based then send me
79           <petkan@users.sourceforge.net> vendor and device IDs.
80
81           To compile this driver as a module, choose M here: the
82           module will be called pegasus.
83
84 config USB_RTL8150
85         tristate "USB RTL8150 based ethernet device support (EXPERIMENTAL)"
86         depends on EXPERIMENTAL
87         select MII
88         help
89           Say Y here if you have RTL8150 based usb-ethernet adapter.
90           Send me <petkan@users.sourceforge.net> any comments you may have.
91           You can also check for updates at <http://pegasus2.sourceforge.net/>.
92
93           To compile this driver as a module, choose M here: the
94           module will be called rtl8150.
95
96 config USB_USBNET_MII
97         tristate
98         default n
99
100 config USB_USBNET
101         tristate "Multi-purpose USB Networking Framework"
102         select MII if USB_USBNET_MII != n
103         ---help---
104           This driver supports several kinds of network links over USB,
105           with "minidrivers" built around a common network driver core
106           that supports deep queues for efficient transfers.  (This gives
107           better performance with small packets and at high speeds).
108
109           The USB host runs "usbnet", and the other end of the link might be:
110
111           - Another USB host, when using USB "network" or "data transfer"
112             cables.  These are often used to network laptops to PCs, like
113             "Laplink" parallel cables or some motherboards.  These rely
114             on specialized chips from many suppliers.
115
116           - An intelligent USB gadget, perhaps embedding a Linux system.
117             These include PDAs running Linux (iPaq, Yopy, Zaurus, and
118             others), and devices that interoperate using the standard
119             CDC-Ethernet specification (including many cable modems).
120
121           - Network adapter hardware (like those for 10/100 Ethernet) which
122             uses this driver framework.
123
124           The link will appear with a name like "usb0", when the link is
125           a two-node link, or "eth0" for most CDC-Ethernet devices.  Those
126           two-node links are most easily managed with Ethernet Bridging
127           (CONFIG_BRIDGE) instead of routing.
128
129           For more information see <http://www.linux-usb.org/usbnet/>.
130
131           To compile this driver as a module, choose M here: the
132           module will be called usbnet.
133
134 config USB_NET_AX8817X
135         tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters"
136         depends on USB_USBNET && NET_ETHERNET
137         select CRC32
138         select USB_USBNET_MII
139         default y
140         help
141           This option adds support for ASIX AX88xxx based USB 2.0
142           10/100 Ethernet adapters.
143
144           This driver should work with at least the following devices:
145             * Aten UC210T
146             * ASIX AX88172
147             * Billionton Systems, USB2AR
148             * Buffalo LUA-U2-KTX
149             * Corega FEther USB2-TX
150             * D-Link DUB-E100
151             * Hawking UF200
152             * Linksys USB200M
153             * Netgear FA120
154             * Sitecom LN-029
155             * Intellinet USB 2.0 Ethernet
156             * ST Lab USB 2.0 Ethernet
157             * TrendNet TU2-ET100
158
159           This driver creates an interface named "ethX", where X depends on
160           what other networking devices you have in use.
161
162
163 config USB_NET_CDCETHER
164         tristate "CDC Ethernet support (smart devices such as cable modems)"
165         depends on USB_USBNET
166         default y
167         help
168           This option supports devices conforming to the Communication Device
169           Class (CDC) Ethernet Control Model, a specification that's easy to
170           implement in device firmware.  The CDC specifications are available
171           from <http://www.usb.org/>.
172
173           CDC Ethernet is an implementation option for DOCSIS cable modems
174           that support USB connectivity, used for non-Microsoft USB hosts.
175           The Linux-USB CDC Ethernet Gadget driver is an open implementation.
176           This driver should work with at least the following devices:
177
178             * Ericsson PipeRider (all variants)
179             * Motorola (DM100 and SB4100)
180             * Broadcom Cable Modem (reference design)
181             * Toshiba PCX1100U
182             * ...
183
184           This driver creates an interface named "ethX", where X depends on
185           what other networking devices you have in use.  However, if the
186           IEEE 802 "local assignment" bit is set in the address, a "usbX"
187           name is used instead.
188
189 config USB_NET_DM9601
190         tristate "Davicom DM9601 based USB 1.1 10/100 ethernet devices"
191         depends on USB_USBNET
192         select CRC32
193         select USB_USBNET_MII
194         help
195           This option adds support for Davicom DM9601 based USB 1.1
196           10/100 Ethernet adapters.
197
198 config USB_NET_GL620A
199         tristate "GeneSys GL620USB-A based cables"
200         depends on USB_USBNET
201         help
202           Choose this option if you're using a host-to-host cable,
203           or PC2PC motherboard, with this chip.
204
205           Note that the half-duplex "GL620USB" is not supported.
206
207 config USB_NET_NET1080
208         tristate "NetChip 1080 based cables (Laplink, ...)"
209         default y
210         depends on USB_USBNET
211         help
212           Choose this option if you're using a host-to-host cable based
213           on this design:  one NetChip 1080 chip and supporting logic,
214           optionally with LEDs that indicate traffic
215
216 config USB_NET_PLUSB
217         tristate "Prolific PL-2301/2302 based cables"
218         # if the handshake/init/reset problems, from original 'plusb',
219         # are ever resolved ... then remove "experimental"
220         depends on USB_USBNET && EXPERIMENTAL
221         help
222           Choose this option if you're using a host-to-host cable
223           with one of these chips.
224
225 config USB_NET_MCS7830
226         tristate "MosChip MCS7830 based Ethernet adapters"
227         depends on USB_USBNET
228         select USB_USBNET_MII
229         help
230           Choose this option if you're using a 10/100 Ethernet USB2
231           adapter based on the MosChip 7830 controller. This includes
232           adapters marketed under the DeLOCK brand.
233
234 config USB_NET_RNDIS_HOST
235         tristate "Host for RNDIS and ActiveSync devices (EXPERIMENTAL)"
236         depends on USB_USBNET && EXPERIMENTAL
237         select USB_NET_CDCETHER
238         help
239           This option enables hosting "Remote NDIS" USB networking links,
240           as encouraged by Microsoft (instead of CDC Ethernet!) for use in
241           various devices that may only support this protocol.  A variant
242           of this protocol (with even less public documentation) seems to
243           be at the root of Microsoft's "ActiveSync" too.
244
245           Avoid using this protocol unless you have no better options.
246           The protocol specification is incomplete, and is controlled by
247           (and for) Microsoft; it isn't an "Open" ecosystem or market.
248
249 config USB_NET_CDC_SUBSET
250         tristate "Simple USB Network Links (CDC Ethernet subset)"
251         depends on USB_USBNET
252         default y
253         help
254           This driver module supports USB network devices that can work
255           without any device-specific information.  Select it if you have
256           one of these drivers.
257
258           Note that while many USB host-to-host cables can work in this mode,
259           that may mean not being able to talk to Win32 systems or more
260           commonly not being able to handle certain events (like replugging
261           the host on the other end) very well.  Also, these devices will
262           not generally have permanently assigned Ethernet addresses.
263
264 config USB_ALI_M5632
265         boolean "ALi M5632 based 'USB 2.0 Data Link' cables"
266         depends on USB_NET_CDC_SUBSET
267         help
268           Choose this option if you're using a host-to-host cable
269           based on this design, which supports USB 2.0 high speed.
270
271 config USB_AN2720
272         boolean "AnchorChips 2720 based cables (Xircom PGUNET, ...)"
273         depends on USB_NET_CDC_SUBSET
274         help
275           Choose this option if you're using a host-to-host cable
276           based on this design.  Note that AnchorChips is now a
277           Cypress brand.
278
279 config USB_BELKIN
280         boolean "eTEK based host-to-host cables (Advance, Belkin, ...)"
281         depends on USB_NET_CDC_SUBSET
282         default y
283         help
284           Choose this option if you're using a host-to-host cable
285           based on this design:  two NetChip 2890 chips and an Atmel
286           microcontroller, with LEDs that indicate traffic.
287
288 config USB_ARMLINUX
289         boolean "Embedded ARM Linux links (iPaq, ...)"
290         depends on USB_NET_CDC_SUBSET
291         default y
292         help
293           Choose this option to support the "usb-eth" networking driver
294           used by most of the ARM Linux community with device controllers
295           such as the SA-11x0 and PXA-25x UDCs, or the tftp capabilities
296           in some PXA versions of the "blob" boot loader.
297
298           Linux-based "Gumstix" PXA-25x based systems use this protocol
299           to talk with other Linux systems.
300
301           Although the ROMs shipped with Sharp Zaurus products use a
302           different link level framing protocol, you can have them use
303           this simpler protocol by installing a different kernel.
304
305 config USB_EPSON2888
306         boolean "Epson 2888 based firmware (DEVELOPMENT)"
307         depends on USB_NET_CDC_SUBSET
308         help
309           Choose this option to support the usb networking links used
310           by some sample firmware from Epson.
311
312 config USB_KC2190
313         boolean "KT Technology KC2190 based cables (InstaNet)"
314         depends on USB_NET_CDC_SUBSET && EXPERIMENTAL
315         help
316           Choose this option if you're using a host-to-host cable
317           with one of these chips.
318
319 config USB_NET_ZAURUS
320         tristate "Sharp Zaurus (stock ROMs) and compatible"
321         depends on USB_USBNET
322         select USB_NET_CDCETHER
323         select CRC32
324         default y
325         help
326           Choose this option to support the usb networking links used by
327           Zaurus models like the SL-5000D, SL-5500, SL-5600, A-300, B-500.
328           This also supports some related device firmware, as used in some
329           PDAs from Olympus and some cell phones from Motorola.
330
331           If you install an alternate image, such as the Linux 2.6 based
332           versions of OpenZaurus, you should no longer need to support this
333           protocol.  Only the "eth-fd" or "net_fd" drivers in these devices
334           really need this non-conformant variant of CDC Ethernet (or in
335           some cases CDC MDLM) protocol, not "g_ether".
336
337
338 endmenu