rk: restore file mode
[firefly-linux-kernel-4.4.55.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"
12         select CRC32
13         ---help---
14           Say Y if you want to use one of the following 10Mbps USB Ethernet
15           device based on the EL1210A chip. Supported devices are:
16           Belkin F5U011
17           Belkin F5U111
18           CATC NetMate
19           CATC NetMate II
20           smartBridges smartNIC
21
22           This driver makes the adapter appear as a normal Ethernet interface,
23           typically on eth0, if it is the only ethernet device, or perhaps on
24           eth1, if you have a PCI or ISA ethernet card installed.
25
26           To compile this driver as a module, choose M here: the
27           module will be called catc.
28
29 config USB_KAWETH
30         tristate "USB KLSI KL5USB101-based ethernet device support"
31         ---help---
32           Say Y here if you want to use one of the following 10Mbps only
33           USB Ethernet adapters based on the KLSI KL5KUSB101B chipset:
34           3Com 3C19250
35           ADS USB-10BT
36           ATEN USB Ethernet
37           ASANTE USB To Ethernet Adapter
38           AOX Endpoints USB Ethernet
39           Correga K.K.
40           D-Link DSB-650C and DU-E10
41           Entrega / Portgear E45
42           I-O DATA USB-ET/T
43           Jaton USB Ethernet Device Adapter
44           Kingston Technology USB Ethernet Adapter
45           Linksys USB10T
46           Mobility USB-Ethernet Adapter
47           NetGear EA-101
48           Peracom Enet and Enet2
49           Portsmith Express Ethernet Adapter
50           Shark Pocket Adapter
51           SMC 2202USB
52           Sony Vaio port extender
53
54           This driver is likely to work with most 10Mbps only USB Ethernet
55           adapters, including some "no brand" devices. It does NOT work on
56           SmartBridges smartNIC or on Belkin F5U111 devices - you should use
57           the CATC NetMate driver for those. If you are not sure which one
58           you need, select both, and the correct one should be selected for
59           you.
60
61           This driver makes the adapter appear as a normal Ethernet interface,
62           typically on eth0, if it is the only ethernet device, or perhaps on
63           eth1, if you have a PCI or ISA ethernet card installed.
64
65           To compile this driver as a module, choose M here: the
66           module will be called kaweth.
67
68 config USB_PEGASUS
69         tristate "USB Pegasus/Pegasus-II based ethernet device support"
70         select NET_CORE
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"
86         select NET_CORE
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_RTL8152
97         tristate "Realtek RTL8152 Based USB 2.0 Ethernet Adapters"
98         select NET_CORE
99         select MII
100         help
101           This option adds support for Realtek RTL8152 based USB 2.0
102           10/100 Ethernet adapters.
103
104           To compile this driver as a module, choose M here: the
105           module will be called r8152.
106
107 config USB_USBNET
108         tristate "Multi-purpose USB Networking Framework"
109         select NET_CORE
110         select MII
111         ---help---
112           This driver supports several kinds of network links over USB,
113           with "minidrivers" built around a common network driver core
114           that supports deep queues for efficient transfers.  (This gives
115           better performance with small packets and at high speeds).
116
117           The USB host runs "usbnet", and the other end of the link might be:
118
119           - Another USB host, when using USB "network" or "data transfer"
120             cables.  These are often used to network laptops to PCs, like
121             "Laplink" parallel cables or some motherboards.  These rely
122             on specialized chips from many suppliers.
123
124           - An intelligent USB gadget, perhaps embedding a Linux system.
125             These include PDAs running Linux (iPaq, Yopy, Zaurus, and
126             others), and devices that interoperate using the standard
127             CDC-Ethernet specification (including many cable modems).
128
129           - Network adapter hardware (like those for 10/100 Ethernet) which
130             uses this driver framework.
131
132           The link will appear with a name like "usb0", when the link is
133           a two-node link, or "eth0" for most CDC-Ethernet devices.  Those
134           two-node links are most easily managed with Ethernet Bridging
135           (CONFIG_BRIDGE) instead of routing.
136
137           For more information see <http://www.linux-usb.org/usbnet/>.
138
139           To compile this driver as a module, choose M here: the
140           module will be called usbnet.
141
142 config USB_NET_AX8817X
143         tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters"
144         depends on USB_USBNET
145         select CRC32
146         select PHYLIB
147         default y
148         help
149           This option adds support for ASIX AX88xxx based USB 2.0
150           10/100 Ethernet adapters.
151
152           This driver should work with at least the following devices:
153             * Aten UC210T
154             * ASIX AX88172
155             * Billionton Systems, USB2AR
156             * Buffalo LUA-U2-KTX
157             * Corega FEther USB2-TX
158             * D-Link DUB-E100
159             * Hawking UF200
160             * Linksys USB200M
161             * Netgear FA120
162             * Sitecom LN-029
163             * Intellinet USB 2.0 Ethernet
164             * ST Lab USB 2.0 Ethernet
165             * TrendNet TU2-ET100
166
167           This driver creates an interface named "ethX", where X depends on
168           what other networking devices you have in use.
169
170 config USB_NET_AX88179_178A
171         tristate "ASIX AX88179/178A USB 3.0/2.0 to Gigabit Ethernet"
172         depends on USB_USBNET
173         select CRC32
174         select PHYLIB
175         default y
176         help
177           This option adds support for ASIX AX88179 based USB 3.0/2.0
178           to Gigabit Ethernet adapters.
179
180           This driver should work with at least the following devices:
181             * ASIX AX88179
182             * ASIX AX88178A
183             * Sitcomm LN-032
184
185           This driver creates an interface named "ethX", where X depends on
186           what other networking devices you have in use.
187
188 config USB_NET_CDCETHER
189         tristate "CDC Ethernet support (smart devices such as cable modems)"
190         depends on USB_USBNET
191         default y
192         help
193           This option supports devices conforming to the Communication Device
194           Class (CDC) Ethernet Control Model, a specification that's easy to
195           implement in device firmware.  The CDC specifications are available
196           from <http://www.usb.org/>.
197
198           CDC Ethernet is an implementation option for DOCSIS cable modems
199           that support USB connectivity, used for non-Microsoft USB hosts.
200           The Linux-USB CDC Ethernet Gadget driver is an open implementation.
201           This driver should work with at least the following devices:
202
203             * Dell Wireless 5530 HSPA
204             * Ericsson PipeRider (all variants)
205             * Ericsson Mobile Broadband Module (all variants)
206             * Motorola (DM100 and SB4100)
207             * Broadcom Cable Modem (reference design)
208             * Toshiba (PCX1100U and F3507g/F3607gw)
209             * ...
210
211           This driver creates an interface named "ethX", where X depends on
212           what other networking devices you have in use.  However, if the
213           IEEE 802 "local assignment" bit is set in the address, a "usbX"
214           name is used instead.
215
216 config USB_NET_CDC_EEM
217         tristate "CDC EEM support"
218         depends on USB_USBNET
219         help
220           This option supports devices conforming to the Communication Device
221           Class (CDC) Ethernet Emulation Model, a specification that's easy to
222           implement in device firmware.  The CDC EEM specifications are available
223           from <http://www.usb.org/>.
224
225           This driver creates an interface named "ethX", where X depends on
226           what other networking devices you have in use.  However, if the
227           IEEE 802 "local assignment" bit is set in the address, a "usbX"
228           name is used instead.
229
230 config USB_NET_CDC_NCM
231         tristate "CDC NCM support"
232         depends on USB_USBNET
233         default y
234         help
235           This driver provides support for CDC NCM (Network Control Model
236           Device USB Class Specification). The CDC NCM specification is
237           available from <http://www.usb.org/>.
238
239           Say "y" to link the driver statically, or "m" to build a
240           dynamically linked module.
241
242           This driver should work with at least the following devices:
243             * ST-Ericsson M700 LTE FDD/TDD Mobile Broadband Modem (ref. design)
244             * ST-Ericsson M5730 HSPA+ Mobile Broadband Modem (reference design)
245             * ST-Ericsson M570 HSPA+ Mobile Broadband Modem (reference design)
246             * ST-Ericsson M343 HSPA Mobile Broadband Modem (reference design)
247             * Ericsson F5521gw Mobile Broadband Module
248
249 config USB_NET_CDC_MBIM
250         tristate "CDC MBIM support"
251         depends on USB_USBNET
252         select USB_WDM
253         select USB_NET_CDC_NCM
254         help
255           This driver provides support for CDC MBIM (Mobile Broadband
256           Interface Model) devices. The CDC MBIM specification is
257           available from <http://www.usb.org/>.
258
259           MBIM devices require configuration using the management
260           protocol defined by the MBIM specification.  This driver
261           provides unfiltered access to the MBIM control channel
262           through the associated /dev/cdc-wdmx character device.
263
264           To compile this driver as a module, choose M here: the
265           module will be called cdc_mbim.
266
267 config USB_NET_DM9601
268         tristate "Davicom DM9601 based USB 1.1 10/100 ethernet devices"
269         depends on USB_USBNET
270         select CRC32
271         help
272           This option adds support for Davicom DM9601 based USB 1.1
273           10/100 Ethernet adapters.
274
275 config USB_NET_DM9620
276         tristate "Davicom DM9620 based USB 2.0 10/100 ethernet devices"
277         depends on USB_USBNET
278         select CRC32
279         help
280           This option adds support for Davicom DM9620 based USB 2.0
281           10/100 Ethernet adapters.
282
283 config USB_NET_SMSC75XX
284         tristate "SMSC LAN75XX based USB 2.0 gigabit ethernet devices"
285         depends on USB_USBNET
286         select BITREVERSE
287         select CRC16
288         select CRC32
289         help
290           This option adds support for SMSC LAN75XX based USB 2.0
291           Gigabit Ethernet adapters.
292
293 config USB_NET_SMSC95XX
294         tristate "SMSC LAN95XX based USB 2.0 10/100 ethernet devices"
295         depends on USB_USBNET
296         select BITREVERSE
297         select CRC16
298         select CRC32
299         help
300           This option adds support for SMSC LAN95XX based USB 2.0
301           10/100 Ethernet adapters.
302
303 config USB_NET_GL620A
304         tristate "GeneSys GL620USB-A based cables"
305         depends on USB_USBNET
306         help
307           Choose this option if you're using a host-to-host cable,
308           or PC2PC motherboard, with this chip.
309
310           Note that the half-duplex "GL620USB" is not supported.
311
312 config USB_NET_NET1080
313         tristate "NetChip 1080 based cables (Laplink, ...)"
314         default y
315         depends on USB_USBNET
316         help
317           Choose this option if you're using a host-to-host cable based
318           on this design:  one NetChip 1080 chip and supporting logic,
319           optionally with LEDs that indicate traffic
320
321 config USB_NET_PLUSB
322         tristate "Prolific PL-2301/2302/25A1 based cables"
323         # if the handshake/init/reset problems, from original 'plusb',
324         # are ever resolved ... then remove "experimental"
325         depends on USB_USBNET
326         help
327           Choose this option if you're using a host-to-host cable
328           with one of these chips.
329
330 config USB_NET_MCS7830
331         tristate "MosChip MCS7830 based Ethernet adapters"
332         depends on USB_USBNET
333         help
334           Choose this option if you're using a 10/100 Ethernet USB2
335           adapter based on the MosChip 7830 controller. This includes
336           adapters marketed under the DeLOCK brand.
337
338 config USB_NET_RNDIS_HOST
339         tristate "Host for RNDIS and ActiveSync devices"
340         depends on USB_USBNET
341         select USB_NET_CDCETHER
342         help
343           This option enables hosting "Remote NDIS" USB networking links,
344           as encouraged by Microsoft (instead of CDC Ethernet!) for use in
345           various devices that may only support this protocol.  A variant
346           of this protocol (with even less public documentation) seems to
347           be at the root of Microsoft's "ActiveSync" too.
348
349           Avoid using this protocol unless you have no better options.
350           The protocol specification is incomplete, and is controlled by
351           (and for) Microsoft; it isn't an "Open" ecosystem or market.
352
353 config USB_NET_CDC_SUBSET
354         tristate "Simple USB Network Links (CDC Ethernet subset)"
355         depends on USB_USBNET
356         default y
357         help
358           This driver module supports USB network devices that can work
359           without any device-specific information.  Select it if you have
360           one of these drivers.
361
362           Note that while many USB host-to-host cables can work in this mode,
363           that may mean not being able to talk to Win32 systems or more
364           commonly not being able to handle certain events (like replugging
365           the host on the other end) very well.  Also, these devices will
366           not generally have permanently assigned Ethernet addresses.
367
368 config USB_ALI_M5632
369         boolean "ALi M5632 based 'USB 2.0 Data Link' cables"
370         depends on USB_NET_CDC_SUBSET
371         help
372           Choose this option if you're using a host-to-host cable
373           based on this design, which supports USB 2.0 high speed.
374
375 config USB_AN2720
376         boolean "AnchorChips 2720 based cables (Xircom PGUNET, ...)"
377         depends on USB_NET_CDC_SUBSET
378         help
379           Choose this option if you're using a host-to-host cable
380           based on this design.  Note that AnchorChips is now a
381           Cypress brand.
382
383 config USB_BELKIN
384         boolean "eTEK based host-to-host cables (Advance, Belkin, ...)"
385         depends on USB_NET_CDC_SUBSET
386         default y
387         help
388           Choose this option if you're using a host-to-host cable
389           based on this design:  two NetChip 2890 chips and an Atmel
390           microcontroller, with LEDs that indicate traffic.
391
392 config USB_ARMLINUX
393         boolean "Embedded ARM Linux links (iPaq, ...)"
394         depends on USB_NET_CDC_SUBSET
395         default y
396         help
397           Choose this option to support the "usb-eth" networking driver
398           used by most of the ARM Linux community with device controllers
399           such as the SA-11x0 and PXA-25x UDCs, or the tftp capabilities
400           in some PXA versions of the "blob" boot loader.
401
402           Linux-based "Gumstix" PXA-25x based systems use this protocol
403           to talk with other Linux systems.
404
405           Although the ROMs shipped with Sharp Zaurus products use a
406           different link level framing protocol, you can have them use
407           this simpler protocol by installing a different kernel.
408
409 config USB_EPSON2888
410         boolean "Epson 2888 based firmware (DEVELOPMENT)"
411         depends on USB_NET_CDC_SUBSET
412         help
413           Choose this option to support the usb networking links used
414           by some sample firmware from Epson.
415
416 config USB_KC2190
417         boolean "KT Technology KC2190 based cables (InstaNet)"
418         depends on USB_NET_CDC_SUBSET
419         help
420           Choose this option if you're using a host-to-host cable
421           with one of these chips.
422
423 config USB_NET_ZAURUS
424         tristate "Sharp Zaurus (stock ROMs) and compatible"
425         depends on USB_USBNET
426         select USB_NET_CDCETHER
427         select CRC32
428         default y
429         help
430           Choose this option to support the usb networking links used by
431           Zaurus models like the SL-5000D, SL-5500, SL-5600, A-300, B-500.
432           This also supports some related device firmware, as used in some
433           PDAs from Olympus and some cell phones from Motorola.
434
435           If you install an alternate image, such as the Linux 2.6 based
436           versions of OpenZaurus, you should no longer need to support this
437           protocol.  Only the "eth-fd" or "net_fd" drivers in these devices
438           really need this non-conformant variant of CDC Ethernet (or in
439           some cases CDC MDLM) protocol, not "g_ether".
440
441 config USB_NET_CX82310_ETH
442         tristate "Conexant CX82310 USB ethernet port"
443         depends on USB_USBNET
444         help
445           Choose this option if you're using a Conexant CX82310-based ADSL
446           router with USB ethernet port. This driver is for routers only,
447           it will not work with ADSL modems (use cxacru driver instead).
448
449 config USB_NET_KALMIA
450         tristate "Samsung Kalmia based LTE USB modem"
451         depends on USB_USBNET
452         help
453           Choose this option if you have a Samsung Kalmia based USB modem
454           as Samsung GT-B3730.
455
456           To compile this driver as a module, choose M here: the
457           module will be called kalmia.
458
459 config USB_NET_QMI_WWAN
460         tristate "QMI WWAN driver for Qualcomm MSM based 3G and LTE modems"
461         depends on USB_USBNET
462         select USB_WDM
463         help
464           Support WWAN LTE/3G devices based on Qualcomm Mobile Data Modem
465           (MDM) chipsets.  Examples of such devices are
466             * Huawei E392/E398
467
468           This driver will only drive the ethernet part of the chips.
469           The devices require additional configuration to be usable.
470           Multiple management interfaces with linux drivers are
471           available:
472
473             * option: AT commands on /dev/ttyUSBx
474             * cdc-wdm: Qualcomm MSM Interface (QMI) protocol on /dev/cdc-wdmx
475
476           A modem manager with support for QMI is recommended.
477
478           To compile this driver as a module, choose M here: the
479           module will be called qmi_wwan.
480
481 config USB_HSO
482         tristate "Option USB High Speed Mobile Devices"
483         depends on USB && RFKILL && TTY
484         default n
485         help
486           Choose this option if you have an Option HSDPA/HSUPA card.
487           These cards support downlink speeds of 7.2Mbps or greater.
488
489           To compile this driver as a module, choose M here: the
490           module will be called hso.
491
492 config USB_NET_INT51X1
493         tristate "Intellon PLC based usb adapter"
494         depends on USB_USBNET
495         help
496           Choose this option if you're using a 14Mb USB-based PLC
497           (Powerline Communications) solution with an Intellon
498           INT51x1/INT5200 chip, like the "devolo dLan duo".
499
500 config USB_CDC_PHONET
501         tristate "CDC Phonet support"
502         depends on PHONET
503         help
504           Choose this option to support the Phonet interface to a Nokia
505           cellular modem, as found on most Nokia handsets with the
506           "PC suite" USB profile.
507
508 config USB_IPHETH
509         tristate "Apple iPhone USB Ethernet driver"
510         default n
511         ---help---
512           Module used to share Internet connection (tethering) from your
513           iPhone (Original, 3G and 3GS) to your system.
514           Note that you need userspace libraries and programs that are needed
515           to pair your device with your system and that understand the iPhone
516           protocol.
517
518           For more information: http://giagio.com/wiki/moin.cgi/iPhoneEthernetDriver
519
520 config USB_SIERRA_NET
521         tristate "USB-to-WWAN Driver for Sierra Wireless modems"
522         depends on USB_USBNET
523         help
524           Choose this option if you have a Sierra Wireless USB-to-WWAN device.
525
526           To compile this driver as a module, choose M here: the
527           module will be called sierra_net.
528
529 config USB_VL600
530         tristate "LG VL600 modem dongle"
531         depends on USB_NET_CDCETHER && TTY
532         select USB_ACM
533         help
534           Select this if you want to use an LG Electronics 4G/LTE usb modem
535           called VL600.  This driver only handles the ethernet
536           interface exposed by the modem firmware.  To establish a connection
537           you will first need a userspace program that sends the right
538           command to the modem through its CDC ACM port, and most
539           likely also a DHCP client.  See this thread about using the
540           4G modem from Verizon:
541
542           http://ubuntuforums.org/showpost.php?p=10589647&postcount=17
543
544
545 endmenu