asix: AX88172A driver depends on phylib
[linux-3.10.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 NET_CORE
72         select MII
73         ---help---
74           Say Y here if you know you have Pegasus or Pegasus-II based adapter.
75           If in doubt then look at <file:drivers/net/usb/pegasus.h> for the
76           complete list of supported devices.
77
78           If your particular adapter is not in the list and you are _sure_ it
79           is Pegasus or Pegasus II based then send me
80           <petkan@users.sourceforge.net> vendor and device IDs.
81
82           To compile this driver as a module, choose M here: the
83           module will be called pegasus.
84
85 config USB_RTL8150
86         tristate "USB RTL8150 based ethernet device support (EXPERIMENTAL)"
87         depends on EXPERIMENTAL
88         select NET_CORE
89         select MII
90         help
91           Say Y here if you have RTL8150 based usb-ethernet adapter.
92           Send me <petkan@users.sourceforge.net> any comments you may have.
93           You can also check for updates at <http://pegasus2.sourceforge.net/>.
94
95           To compile this driver as a module, choose M here: the
96           module will be called rtl8150.
97
98 config USB_USBNET
99         tristate "Multi-purpose USB Networking Framework"
100         select NET_CORE
101         select MII
102         ---help---
103           This driver supports several kinds of network links over USB,
104           with "minidrivers" built around a common network driver core
105           that supports deep queues for efficient transfers.  (This gives
106           better performance with small packets and at high speeds).
107
108           The USB host runs "usbnet", and the other end of the link might be:
109
110           - Another USB host, when using USB "network" or "data transfer"
111             cables.  These are often used to network laptops to PCs, like
112             "Laplink" parallel cables or some motherboards.  These rely
113             on specialized chips from many suppliers.
114
115           - An intelligent USB gadget, perhaps embedding a Linux system.
116             These include PDAs running Linux (iPaq, Yopy, Zaurus, and
117             others), and devices that interoperate using the standard
118             CDC-Ethernet specification (including many cable modems).
119
120           - Network adapter hardware (like those for 10/100 Ethernet) which
121             uses this driver framework.
122
123           The link will appear with a name like "usb0", when the link is
124           a two-node link, or "eth0" for most CDC-Ethernet devices.  Those
125           two-node links are most easily managed with Ethernet Bridging
126           (CONFIG_BRIDGE) instead of routing.
127
128           For more information see <http://www.linux-usb.org/usbnet/>.
129
130           To compile this driver as a module, choose M here: the
131           module will be called usbnet.
132
133 config USB_NET_AX8817X
134         tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters"
135         depends on USB_USBNET
136         select CRC32
137         select PHYLIB
138         default y
139         help
140           This option adds support for ASIX AX88xxx based USB 2.0
141           10/100 Ethernet adapters.
142
143           This driver should work with at least the following devices:
144             * Aten UC210T
145             * ASIX AX88172
146             * Billionton Systems, USB2AR
147             * Buffalo LUA-U2-KTX
148             * Corega FEther USB2-TX
149             * D-Link DUB-E100
150             * Hawking UF200
151             * Linksys USB200M
152             * Netgear FA120
153             * Sitecom LN-029
154             * Intellinet USB 2.0 Ethernet
155             * ST Lab USB 2.0 Ethernet
156             * TrendNet TU2-ET100
157
158           This driver creates an interface named "ethX", where X depends on
159           what other networking devices you have in use.
160
161 config USB_NET_CDCETHER
162         tristate "CDC Ethernet support (smart devices such as cable modems)"
163         depends on USB_USBNET
164         default y
165         help
166           This option supports devices conforming to the Communication Device
167           Class (CDC) Ethernet Control Model, a specification that's easy to
168           implement in device firmware.  The CDC specifications are available
169           from <http://www.usb.org/>.
170
171           CDC Ethernet is an implementation option for DOCSIS cable modems
172           that support USB connectivity, used for non-Microsoft USB hosts.
173           The Linux-USB CDC Ethernet Gadget driver is an open implementation.
174           This driver should work with at least the following devices:
175
176             * Dell Wireless 5530 HSPA
177             * Ericsson PipeRider (all variants)
178             * Ericsson Mobile Broadband Module (all variants)
179             * Motorola (DM100 and SB4100)
180             * Broadcom Cable Modem (reference design)
181             * Toshiba (PCX1100U and F3507g/F3607gw)
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_CDC_EEM
190         tristate "CDC EEM support"
191         depends on USB_USBNET && EXPERIMENTAL
192         help
193           This option supports devices conforming to the Communication Device
194           Class (CDC) Ethernet Emulation Model, a specification that's easy to
195           implement in device firmware.  The CDC EEM specifications are available
196           from <http://www.usb.org/>.
197
198           This driver creates an interface named "ethX", where X depends on
199           what other networking devices you have in use.  However, if the
200           IEEE 802 "local assignment" bit is set in the address, a "usbX"
201           name is used instead.
202
203 config USB_NET_CDC_NCM
204         tristate "CDC NCM support"
205         depends on USB_USBNET
206         default y
207         help
208           This driver provides support for CDC NCM (Network Control Model
209           Device USB Class Specification). The CDC NCM specification is
210           available from <http://www.usb.org/>.
211
212           Say "y" to link the driver statically, or "m" to build a
213           dynamically linked module.
214
215           This driver should work with at least the following devices:
216             * ST-Ericsson M700 LTE FDD/TDD Mobile Broadband Modem (ref. design)
217             * ST-Ericsson M5730 HSPA+ Mobile Broadband Modem (reference design)
218             * ST-Ericsson M570 HSPA+ Mobile Broadband Modem (reference design)
219             * ST-Ericsson M343 HSPA Mobile Broadband Modem (reference design)
220             * Ericsson F5521gw Mobile Broadband Module
221
222 config USB_NET_DM9601
223         tristate "Davicom DM9601 based USB 1.1 10/100 ethernet devices"
224         depends on USB_USBNET
225         select CRC32
226         help
227           This option adds support for Davicom DM9601 based USB 1.1
228           10/100 Ethernet adapters.
229
230 config USB_NET_SMSC75XX
231         tristate "SMSC LAN75XX based USB 2.0 gigabit ethernet devices"
232         depends on USB_USBNET
233         select CRC32
234         help
235           This option adds support for SMSC LAN95XX based USB 2.0
236           Gigabit Ethernet adapters.
237
238 config USB_NET_SMSC95XX
239         tristate "SMSC LAN95XX based USB 2.0 10/100 ethernet devices"
240         depends on USB_USBNET
241         select CRC32
242         help
243           This option adds support for SMSC LAN95XX based USB 2.0
244           10/100 Ethernet adapters.
245
246 config USB_NET_GL620A
247         tristate "GeneSys GL620USB-A based cables"
248         depends on USB_USBNET
249         help
250           Choose this option if you're using a host-to-host cable,
251           or PC2PC motherboard, with this chip.
252
253           Note that the half-duplex "GL620USB" is not supported.
254
255 config USB_NET_NET1080
256         tristate "NetChip 1080 based cables (Laplink, ...)"
257         default y
258         depends on USB_USBNET
259         help
260           Choose this option if you're using a host-to-host cable based
261           on this design:  one NetChip 1080 chip and supporting logic,
262           optionally with LEDs that indicate traffic
263
264 config USB_NET_PLUSB
265         tristate "Prolific PL-2301/2302/25A1 based cables"
266         # if the handshake/init/reset problems, from original 'plusb',
267         # are ever resolved ... then remove "experimental"
268         depends on USB_USBNET && EXPERIMENTAL
269         help
270           Choose this option if you're using a host-to-host cable
271           with one of these chips.
272
273 config USB_NET_MCS7830
274         tristate "MosChip MCS7830 based Ethernet adapters"
275         depends on USB_USBNET
276         help
277           Choose this option if you're using a 10/100 Ethernet USB2
278           adapter based on the MosChip 7830 controller. This includes
279           adapters marketed under the DeLOCK brand.
280
281 config USB_NET_RNDIS_HOST
282         tristate "Host for RNDIS and ActiveSync devices (EXPERIMENTAL)"
283         depends on USB_USBNET && EXPERIMENTAL
284         select USB_NET_CDCETHER
285         help
286           This option enables hosting "Remote NDIS" USB networking links,
287           as encouraged by Microsoft (instead of CDC Ethernet!) for use in
288           various devices that may only support this protocol.  A variant
289           of this protocol (with even less public documentation) seems to
290           be at the root of Microsoft's "ActiveSync" too.
291
292           Avoid using this protocol unless you have no better options.
293           The protocol specification is incomplete, and is controlled by
294           (and for) Microsoft; it isn't an "Open" ecosystem or market.
295
296 config USB_NET_CDC_SUBSET
297         tristate "Simple USB Network Links (CDC Ethernet subset)"
298         depends on USB_USBNET
299         default y
300         help
301           This driver module supports USB network devices that can work
302           without any device-specific information.  Select it if you have
303           one of these drivers.
304
305           Note that while many USB host-to-host cables can work in this mode,
306           that may mean not being able to talk to Win32 systems or more
307           commonly not being able to handle certain events (like replugging
308           the host on the other end) very well.  Also, these devices will
309           not generally have permanently assigned Ethernet addresses.
310
311 config USB_ALI_M5632
312         boolean "ALi M5632 based 'USB 2.0 Data Link' cables"
313         depends on USB_NET_CDC_SUBSET
314         help
315           Choose this option if you're using a host-to-host cable
316           based on this design, which supports USB 2.0 high speed.
317
318 config USB_AN2720
319         boolean "AnchorChips 2720 based cables (Xircom PGUNET, ...)"
320         depends on USB_NET_CDC_SUBSET
321         help
322           Choose this option if you're using a host-to-host cable
323           based on this design.  Note that AnchorChips is now a
324           Cypress brand.
325
326 config USB_BELKIN
327         boolean "eTEK based host-to-host cables (Advance, Belkin, ...)"
328         depends on USB_NET_CDC_SUBSET
329         default y
330         help
331           Choose this option if you're using a host-to-host cable
332           based on this design:  two NetChip 2890 chips and an Atmel
333           microcontroller, with LEDs that indicate traffic.
334
335 config USB_ARMLINUX
336         boolean "Embedded ARM Linux links (iPaq, ...)"
337         depends on USB_NET_CDC_SUBSET
338         default y
339         help
340           Choose this option to support the "usb-eth" networking driver
341           used by most of the ARM Linux community with device controllers
342           such as the SA-11x0 and PXA-25x UDCs, or the tftp capabilities
343           in some PXA versions of the "blob" boot loader.
344
345           Linux-based "Gumstix" PXA-25x based systems use this protocol
346           to talk with other Linux systems.
347
348           Although the ROMs shipped with Sharp Zaurus products use a
349           different link level framing protocol, you can have them use
350           this simpler protocol by installing a different kernel.
351
352 config USB_EPSON2888
353         boolean "Epson 2888 based firmware (DEVELOPMENT)"
354         depends on USB_NET_CDC_SUBSET
355         help
356           Choose this option to support the usb networking links used
357           by some sample firmware from Epson.
358
359 config USB_KC2190
360         boolean "KT Technology KC2190 based cables (InstaNet)"
361         depends on USB_NET_CDC_SUBSET && EXPERIMENTAL
362         help
363           Choose this option if you're using a host-to-host cable
364           with one of these chips.
365
366 config USB_NET_ZAURUS
367         tristate "Sharp Zaurus (stock ROMs) and compatible"
368         depends on USB_USBNET
369         select USB_NET_CDCETHER
370         select CRC32
371         default y
372         help
373           Choose this option to support the usb networking links used by
374           Zaurus models like the SL-5000D, SL-5500, SL-5600, A-300, B-500.
375           This also supports some related device firmware, as used in some
376           PDAs from Olympus and some cell phones from Motorola.
377
378           If you install an alternate image, such as the Linux 2.6 based
379           versions of OpenZaurus, you should no longer need to support this
380           protocol.  Only the "eth-fd" or "net_fd" drivers in these devices
381           really need this non-conformant variant of CDC Ethernet (or in
382           some cases CDC MDLM) protocol, not "g_ether".
383
384 config USB_NET_CX82310_ETH
385         tristate "Conexant CX82310 USB ethernet port"
386         depends on USB_USBNET
387         help
388           Choose this option if you're using a Conexant CX82310-based ADSL
389           router with USB ethernet port. This driver is for routers only,
390           it will not work with ADSL modems (use cxacru driver instead).
391
392 config USB_NET_KALMIA
393         tristate "Samsung Kalmia based LTE USB modem"
394         depends on USB_USBNET
395         help
396           Choose this option if you have a Samsung Kalmia based USB modem
397           as Samsung GT-B3730.
398
399           To compile this driver as a module, choose M here: the
400           module will be called kalmia.
401
402 config USB_NET_QMI_WWAN
403         tristate "QMI WWAN driver for Qualcomm MSM based 3G and LTE modems"
404         depends on USB_USBNET
405         select USB_WDM
406         help
407           Support WWAN LTE/3G devices based on Qualcomm Mobile Data Modem
408           (MDM) chipsets.  Examples of such devices are
409             * Huawei E392/E398
410
411           This driver will only drive the ethernet part of the chips.
412           The devices require additional configuration to be usable.
413           Multiple management interfaces with linux drivers are
414           available:
415
416             * option: AT commands on /dev/ttyUSBx
417             * cdc-wdm: Qualcomm MSM Interface (QMI) protocol on /dev/cdc-wdmx
418
419           A modem manager with support for QMI is recommended.
420
421           To compile this driver as a module, choose M here: the
422           module will be called qmi_wwan.
423
424 config USB_HSO
425         tristate "Option USB High Speed Mobile Devices"
426         depends on USB && RFKILL
427         default n
428         help
429           Choose this option if you have an Option HSDPA/HSUPA card.
430           These cards support downlink speeds of 7.2Mbps or greater.
431
432           To compile this driver as a module, choose M here: the
433           module will be called hso.
434
435 config USB_NET_INT51X1
436         tristate "Intellon PLC based usb adapter"
437         depends on USB_USBNET
438         help
439           Choose this option if you're using a 14Mb USB-based PLC
440           (Powerline Communications) solution with an Intellon
441           INT51x1/INT5200 chip, like the "devolo dLan duo".
442
443 config USB_CDC_PHONET
444         tristate "CDC Phonet support"
445         depends on PHONET
446         help
447           Choose this option to support the Phonet interface to a Nokia
448           cellular modem, as found on most Nokia handsets with the
449           "PC suite" USB profile.
450
451 config USB_IPHETH
452         tristate "Apple iPhone USB Ethernet driver"
453         default n
454         ---help---
455           Module used to share Internet connection (tethering) from your
456           iPhone (Original, 3G and 3GS) to your system.
457           Note that you need userspace libraries and programs that are needed
458           to pair your device with your system and that understand the iPhone
459           protocol.
460
461           For more information: http://giagio.com/wiki/moin.cgi/iPhoneEthernetDriver
462
463 config USB_SIERRA_NET
464         tristate "USB-to-WWAN Driver for Sierra Wireless modems"
465         depends on USB_USBNET
466         help
467           Choose this option if you have a Sierra Wireless USB-to-WWAN device.
468
469           To compile this driver as a module, choose M here: the
470           module will be called sierra_net.
471
472 config USB_VL600
473         tristate "LG VL600 modem dongle"
474         depends on USB_NET_CDCETHER
475         select USB_ACM
476         help
477           Select this if you want to use an LG Electronics 4G/LTE usb modem
478           called VL600.  This driver only handles the ethernet
479           interface exposed by the modem firmware.  To establish a connection
480           you will first need a userspace program that sends the right
481           command to the modem through its CDC ACM port, and most
482           likely also a DHCP client.  See this thread about using the
483           4G modem from Verizon:
484
485           http://ubuntuforums.org/showpost.php?p=10589647&postcount=17
486
487
488 endmenu