Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
[pandora-kernel.git] / 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/net/usb/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
97         tristate "Multi-purpose USB Networking Framework"
98         select MII
99         ---help---
100           This driver supports several kinds of network links over USB,
101           with "minidrivers" built around a common network driver core
102           that supports deep queues for efficient transfers.  (This gives
103           better performance with small packets and at high speeds).
104
105           The USB host runs "usbnet", and the other end of the link might be:
106
107           - Another USB host, when using USB "network" or "data transfer"
108             cables.  These are often used to network laptops to PCs, like
109             "Laplink" parallel cables or some motherboards.  These rely
110             on specialized chips from many suppliers.
111
112           - An intelligent USB gadget, perhaps embedding a Linux system.
113             These include PDAs running Linux (iPaq, Yopy, Zaurus, and
114             others), and devices that interoperate using the standard
115             CDC-Ethernet specification (including many cable modems).
116
117           - Network adapter hardware (like those for 10/100 Ethernet) which
118             uses this driver framework.
119
120           The link will appear with a name like "usb0", when the link is
121           a two-node link, or "eth0" for most CDC-Ethernet devices.  Those
122           two-node links are most easily managed with Ethernet Bridging
123           (CONFIG_BRIDGE) instead of routing.
124
125           For more information see <http://www.linux-usb.org/usbnet/>.
126
127           To compile this driver as a module, choose M here: the
128           module will be called usbnet.
129
130 config USB_NET_AX8817X
131         tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters"
132         depends on USB_USBNET
133         select CRC32
134         default y
135         help
136           This option adds support for ASIX AX88xxx based USB 2.0
137           10/100 Ethernet adapters.
138
139           This driver should work with at least the following devices:
140             * Aten UC210T
141             * ASIX AX88172
142             * Billionton Systems, USB2AR
143             * Buffalo LUA-U2-KTX
144             * Corega FEther USB2-TX
145             * D-Link DUB-E100
146             * Hawking UF200
147             * Linksys USB200M
148             * Netgear FA120
149             * Sitecom LN-029
150             * Intellinet USB 2.0 Ethernet
151             * ST Lab USB 2.0 Ethernet
152             * TrendNet TU2-ET100
153
154           This driver creates an interface named "ethX", where X depends on
155           what other networking devices you have in use.
156
157 config USB_NET_CDCETHER
158         tristate "CDC Ethernet support (smart devices such as cable modems)"
159         depends on USB_USBNET
160         default y
161         help
162           This option supports devices conforming to the Communication Device
163           Class (CDC) Ethernet Control Model, a specification that's easy to
164           implement in device firmware.  The CDC specifications are available
165           from <http://www.usb.org/>.
166
167           CDC Ethernet is an implementation option for DOCSIS cable modems
168           that support USB connectivity, used for non-Microsoft USB hosts.
169           The Linux-USB CDC Ethernet Gadget driver is an open implementation.
170           This driver should work with at least the following devices:
171
172             * Dell Wireless 5530 HSPA
173             * Ericsson PipeRider (all variants)
174             * Ericsson Mobile Broadband Module (all variants)
175             * Motorola (DM100 and SB4100)
176             * Broadcom Cable Modem (reference design)
177             * Toshiba (PCX1100U and F3507g/F3607gw)
178             * ...
179
180           This driver creates an interface named "ethX", where X depends on
181           what other networking devices you have in use.  However, if the
182           IEEE 802 "local assignment" bit is set in the address, a "usbX"
183           name is used instead.
184
185 config USB_NET_CDC_EEM
186         tristate "CDC EEM support"
187         depends on USB_USBNET && EXPERIMENTAL
188         help
189           This option supports devices conforming to the Communication Device
190           Class (CDC) Ethernet Emulation Model, a specification that's easy to
191           implement in device firmware.  The CDC EEM specifications are available
192           from <http://www.usb.org/>.
193
194           This driver creates an interface named "ethX", where X depends on
195           what other networking devices you have in use.  However, if the
196           IEEE 802 "local assignment" bit is set in the address, a "usbX"
197           name is used instead.
198
199 config USB_NET_DM9601
200         tristate "Davicom DM9601 based USB 1.1 10/100 ethernet devices"
201         depends on USB_USBNET
202         select CRC32
203         help
204           This option adds support for Davicom DM9601 based USB 1.1
205           10/100 Ethernet adapters.
206
207 config USB_NET_SMSC75XX
208         tristate "SMSC LAN75XX based USB 2.0 gigabit ethernet devices"
209         depends on USB_USBNET
210         select CRC32
211         help
212           This option adds support for SMSC LAN95XX based USB 2.0
213           Gigabit Ethernet adapters.
214
215 config USB_NET_SMSC95XX
216         tristate "SMSC LAN95XX based USB 2.0 10/100 ethernet devices"
217         depends on USB_USBNET
218         select CRC32
219         help
220           This option adds support for SMSC LAN95XX based USB 2.0
221           10/100 Ethernet adapters.
222
223 config USB_NET_GL620A
224         tristate "GeneSys GL620USB-A based cables"
225         depends on USB_USBNET
226         help
227           Choose this option if you're using a host-to-host cable,
228           or PC2PC motherboard, with this chip.
229
230           Note that the half-duplex "GL620USB" is not supported.
231
232 config USB_NET_NET1080
233         tristate "NetChip 1080 based cables (Laplink, ...)"
234         default y
235         depends on USB_USBNET
236         help
237           Choose this option if you're using a host-to-host cable based
238           on this design:  one NetChip 1080 chip and supporting logic,
239           optionally with LEDs that indicate traffic
240
241 config USB_NET_PLUSB
242         tristate "Prolific PL-2301/2302 based cables"
243         # if the handshake/init/reset problems, from original 'plusb',
244         # are ever resolved ... then remove "experimental"
245         depends on USB_USBNET && EXPERIMENTAL
246         help
247           Choose this option if you're using a host-to-host cable
248           with one of these chips.
249
250 config USB_NET_MCS7830
251         tristate "MosChip MCS7830 based Ethernet adapters"
252         depends on USB_USBNET
253         help
254           Choose this option if you're using a 10/100 Ethernet USB2
255           adapter based on the MosChip 7830 controller. This includes
256           adapters marketed under the DeLOCK brand.
257
258 config USB_NET_RNDIS_HOST
259         tristate "Host for RNDIS and ActiveSync devices (EXPERIMENTAL)"
260         depends on USB_USBNET && EXPERIMENTAL
261         select USB_NET_CDCETHER
262         help
263           This option enables hosting "Remote NDIS" USB networking links,
264           as encouraged by Microsoft (instead of CDC Ethernet!) for use in
265           various devices that may only support this protocol.  A variant
266           of this protocol (with even less public documentation) seems to
267           be at the root of Microsoft's "ActiveSync" too.
268
269           Avoid using this protocol unless you have no better options.
270           The protocol specification is incomplete, and is controlled by
271           (and for) Microsoft; it isn't an "Open" ecosystem or market.
272
273 config USB_NET_CDC_SUBSET
274         tristate "Simple USB Network Links (CDC Ethernet subset)"
275         depends on USB_USBNET
276         default y
277         help
278           This driver module supports USB network devices that can work
279           without any device-specific information.  Select it if you have
280           one of these drivers.
281
282           Note that while many USB host-to-host cables can work in this mode,
283           that may mean not being able to talk to Win32 systems or more
284           commonly not being able to handle certain events (like replugging
285           the host on the other end) very well.  Also, these devices will
286           not generally have permanently assigned Ethernet addresses.
287
288 config USB_ALI_M5632
289         boolean "ALi M5632 based 'USB 2.0 Data Link' cables"
290         depends on USB_NET_CDC_SUBSET
291         help
292           Choose this option if you're using a host-to-host cable
293           based on this design, which supports USB 2.0 high speed.
294
295 config USB_AN2720
296         boolean "AnchorChips 2720 based cables (Xircom PGUNET, ...)"
297         depends on USB_NET_CDC_SUBSET
298         help
299           Choose this option if you're using a host-to-host cable
300           based on this design.  Note that AnchorChips is now a
301           Cypress brand.
302
303 config USB_BELKIN
304         boolean "eTEK based host-to-host cables (Advance, Belkin, ...)"
305         depends on USB_NET_CDC_SUBSET
306         default y
307         help
308           Choose this option if you're using a host-to-host cable
309           based on this design:  two NetChip 2890 chips and an Atmel
310           microcontroller, with LEDs that indicate traffic.
311
312 config USB_ARMLINUX
313         boolean "Embedded ARM Linux links (iPaq, ...)"
314         depends on USB_NET_CDC_SUBSET
315         default y
316         help
317           Choose this option to support the "usb-eth" networking driver
318           used by most of the ARM Linux community with device controllers
319           such as the SA-11x0 and PXA-25x UDCs, or the tftp capabilities
320           in some PXA versions of the "blob" boot loader.
321
322           Linux-based "Gumstix" PXA-25x based systems use this protocol
323           to talk with other Linux systems.
324
325           Although the ROMs shipped with Sharp Zaurus products use a
326           different link level framing protocol, you can have them use
327           this simpler protocol by installing a different kernel.
328
329 config USB_EPSON2888
330         boolean "Epson 2888 based firmware (DEVELOPMENT)"
331         depends on USB_NET_CDC_SUBSET
332         help
333           Choose this option to support the usb networking links used
334           by some sample firmware from Epson.
335
336 config USB_KC2190
337         boolean "KT Technology KC2190 based cables (InstaNet)"
338         depends on USB_NET_CDC_SUBSET && EXPERIMENTAL
339         help
340           Choose this option if you're using a host-to-host cable
341           with one of these chips.
342
343 config USB_NET_ZAURUS
344         tristate "Sharp Zaurus (stock ROMs) and compatible"
345         depends on USB_USBNET
346         select USB_NET_CDCETHER
347         select CRC32
348         default y
349         help
350           Choose this option to support the usb networking links used by
351           Zaurus models like the SL-5000D, SL-5500, SL-5600, A-300, B-500.
352           This also supports some related device firmware, as used in some
353           PDAs from Olympus and some cell phones from Motorola.
354
355           If you install an alternate image, such as the Linux 2.6 based
356           versions of OpenZaurus, you should no longer need to support this
357           protocol.  Only the "eth-fd" or "net_fd" drivers in these devices
358           really need this non-conformant variant of CDC Ethernet (or in
359           some cases CDC MDLM) protocol, not "g_ether".
360
361 config USB_HSO
362         tristate "Option USB High Speed Mobile Devices"
363         depends on USB && RFKILL
364         default n
365         help
366           Choose this option if you have an Option HSDPA/HSUPA card.
367           These cards support downlink speeds of 7.2Mbps or greater.
368
369           To compile this driver as a module, choose M here: the
370           module will be called hso.
371
372 config USB_NET_INT51X1
373         tristate "Intellon PLC based usb adapter"
374         depends on USB_USBNET
375         help
376           Choose this option if you're using a 14Mb USB-based PLC
377           (Powerline Communications) solution with an Intellon
378           INT51x1/INT5200 chip, like the "devolo dLan duo".
379
380 config USB_CDC_PHONET
381         tristate "CDC Phonet support"
382         depends on PHONET
383         help
384           Choose this option to support the Phonet interface to a Nokia
385           cellular modem, as found on most Nokia handsets with the
386           "PC suite" USB profile.
387
388 config USB_IPHETH
389         tristate "Apple iPhone USB Ethernet driver"
390         default n
391         ---help---
392           Module used to share Internet connection (tethering) from your
393           iPhone (Original, 3G and 3GS) to your system.
394           Note that you need userspace libraries and programs that are needed
395           to pair your device with your system and that understand the iPhone
396           protocol.
397
398           For more information: http://giagio.com/wiki/moin.cgi/iPhoneEthernetDriver
399
400 config USB_SIERRA_NET
401         tristate "USB-to-WWAN Driver for Sierra Wireless modems"
402         depends on USB_USBNET
403         help
404           Choose this option if you have a Sierra Wireless USB-to-WWAN device.
405
406           To compile this driver as a module, choose M here: the
407           module will be called sierra_net.
408
409 endmenu