xref: /openbmc/linux/drivers/net/usb/Kconfig (revision b5266ea6)
1#
2# USB Network devices configuration
3#
4comment "Networking support is needed for USB Network Adapter support"
5	depends on USB && !NET
6
7menu "USB Network Adapters"
8	depends on USB && NET
9
10config 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
30config 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
69config 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
85config 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
98config 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
133config USB_NET_AX8817X
134	tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters"
135	depends on USB_USBNET
136	select CRC32
137	default y
138	help
139	  This option adds support for ASIX AX88xxx based USB 2.0
140	  10/100 Ethernet adapters.
141
142 	  This driver should work with at least the following devices:
143	    * Aten UC210T
144	    * ASIX AX88172
145	    * Billionton Systems, USB2AR
146	    * Buffalo LUA-U2-KTX
147	    * Corega FEther USB2-TX
148	    * D-Link DUB-E100
149	    * Hawking UF200
150	    * Linksys USB200M
151	    * Netgear FA120
152	    * Sitecom LN-029
153	    * Intellinet USB 2.0 Ethernet
154	    * ST Lab USB 2.0 Ethernet
155	    * TrendNet TU2-ET100
156
157	  This driver creates an interface named "ethX", where X depends on
158	  what other networking devices you have in use.
159
160config USB_NET_CDCETHER
161	tristate "CDC Ethernet support (smart devices such as cable modems)"
162	depends on USB_USBNET
163	default y
164	help
165	  This option supports devices conforming to the Communication Device
166	  Class (CDC) Ethernet Control Model, a specification that's easy to
167	  implement in device firmware.  The CDC specifications are available
168	  from <http://www.usb.org/>.
169
170	  CDC Ethernet is an implementation option for DOCSIS cable modems
171	  that support USB connectivity, used for non-Microsoft USB hosts.
172	  The Linux-USB CDC Ethernet Gadget driver is an open implementation.
173 	  This driver should work with at least the following devices:
174
175	    * Dell Wireless 5530 HSPA
176 	    * Ericsson PipeRider (all variants)
177	    * Ericsson Mobile Broadband Module (all variants)
178 	    * Motorola (DM100 and SB4100)
179 	    * Broadcom Cable Modem (reference design)
180	    * Toshiba (PCX1100U and F3507g/F3607gw)
181	    * ...
182
183	  This driver creates an interface named "ethX", where X depends on
184	  what other networking devices you have in use.  However, if the
185	  IEEE 802 "local assignment" bit is set in the address, a "usbX"
186	  name is used instead.
187
188config USB_NET_CDC_EEM
189	tristate "CDC EEM support"
190	depends on USB_USBNET && EXPERIMENTAL
191	help
192	  This option supports devices conforming to the Communication Device
193	  Class (CDC) Ethernet Emulation Model, a specification that's easy to
194	  implement in device firmware.  The CDC EEM specifications are available
195	  from <http://www.usb.org/>.
196
197	  This driver creates an interface named "ethX", where X depends on
198	  what other networking devices you have in use.  However, if the
199	  IEEE 802 "local assignment" bit is set in the address, a "usbX"
200	  name is used instead.
201
202config USB_NET_CDC_NCM
203	tristate "CDC NCM support"
204	depends on USB_USBNET
205	default y
206	help
207	  This driver provides support for CDC NCM (Network Control Model
208	  Device USB Class Specification). The CDC NCM specification is
209	  available from <http://www.usb.org/>.
210
211	  Say "y" to link the driver statically, or "m" to build a
212	  dynamically linked module.
213
214	  This driver should work with at least the following devices:
215	    * ST-Ericsson M700 LTE FDD/TDD Mobile Broadband Modem (ref. design)
216	    * ST-Ericsson M5730 HSPA+ Mobile Broadband Modem (reference design)
217	    * ST-Ericsson M570 HSPA+ Mobile Broadband Modem (reference design)
218	    * ST-Ericsson M343 HSPA Mobile Broadband Modem (reference design)
219	    * Ericsson F5521gw Mobile Broadband Module
220
221config USB_NET_DM9601
222	tristate "Davicom DM9601 based USB 1.1 10/100 ethernet devices"
223	depends on USB_USBNET
224	select CRC32
225	help
226	  This option adds support for Davicom DM9601 based USB 1.1
227	  10/100 Ethernet adapters.
228
229config USB_NET_SMSC75XX
230	tristate "SMSC LAN75XX based USB 2.0 gigabit ethernet devices"
231	depends on USB_USBNET
232	select CRC32
233	help
234	  This option adds support for SMSC LAN95XX based USB 2.0
235	  Gigabit Ethernet adapters.
236
237config USB_NET_SMSC95XX
238	tristate "SMSC LAN95XX based USB 2.0 10/100 ethernet devices"
239	depends on USB_USBNET
240	select CRC32
241	help
242	  This option adds support for SMSC LAN95XX based USB 2.0
243	  10/100 Ethernet adapters.
244
245config USB_NET_GL620A
246	tristate "GeneSys GL620USB-A based cables"
247	depends on USB_USBNET
248	help
249	  Choose this option if you're using a host-to-host cable,
250	  or PC2PC motherboard, with this chip.
251
252	  Note that the half-duplex "GL620USB" is not supported.
253
254config USB_NET_NET1080
255	tristate "NetChip 1080 based cables (Laplink, ...)"
256	default y
257	depends on USB_USBNET
258	help
259	  Choose this option if you're using a host-to-host cable based
260	  on this design:  one NetChip 1080 chip and supporting logic,
261	  optionally with LEDs that indicate traffic
262
263config USB_NET_PLUSB
264	tristate "Prolific PL-2301/2302/25A1 based cables"
265	# if the handshake/init/reset problems, from original 'plusb',
266	# are ever resolved ... then remove "experimental"
267	depends on USB_USBNET && EXPERIMENTAL
268	help
269	  Choose this option if you're using a host-to-host cable
270	  with one of these chips.
271
272config USB_NET_MCS7830
273	tristate "MosChip MCS7830 based Ethernet adapters"
274	depends on USB_USBNET
275	help
276	  Choose this option if you're using a 10/100 Ethernet USB2
277	  adapter based on the MosChip 7830 controller. This includes
278	  adapters marketed under the DeLOCK brand.
279
280config USB_NET_RNDIS_HOST
281	tristate "Host for RNDIS and ActiveSync devices (EXPERIMENTAL)"
282	depends on USB_USBNET && EXPERIMENTAL
283	select USB_NET_CDCETHER
284	help
285	  This option enables hosting "Remote NDIS" USB networking links,
286	  as encouraged by Microsoft (instead of CDC Ethernet!) for use in
287	  various devices that may only support this protocol.  A variant
288	  of this protocol (with even less public documentation) seems to
289	  be at the root of Microsoft's "ActiveSync" too.
290
291	  Avoid using this protocol unless you have no better options.
292	  The protocol specification is incomplete, and is controlled by
293	  (and for) Microsoft; it isn't an "Open" ecosystem or market.
294
295config USB_NET_CDC_SUBSET
296	tristate "Simple USB Network Links (CDC Ethernet subset)"
297	depends on USB_USBNET
298	default y
299	help
300	  This driver module supports USB network devices that can work
301	  without any device-specific information.  Select it if you have
302	  one of these drivers.
303
304	  Note that while many USB host-to-host cables can work in this mode,
305	  that may mean not being able to talk to Win32 systems or more
306	  commonly not being able to handle certain events (like replugging
307	  the host on the other end) very well.  Also, these devices will
308	  not generally have permanently assigned Ethernet addresses.
309
310config USB_ALI_M5632
311	boolean "ALi M5632 based 'USB 2.0 Data Link' cables"
312	depends on USB_NET_CDC_SUBSET
313	help
314	  Choose this option if you're using a host-to-host cable
315	  based on this design, which supports USB 2.0 high speed.
316
317config USB_AN2720
318	boolean "AnchorChips 2720 based cables (Xircom PGUNET, ...)"
319	depends on USB_NET_CDC_SUBSET
320	help
321	  Choose this option if you're using a host-to-host cable
322	  based on this design.  Note that AnchorChips is now a
323	  Cypress brand.
324
325config USB_BELKIN
326	boolean "eTEK based host-to-host cables (Advance, Belkin, ...)"
327	depends on USB_NET_CDC_SUBSET
328	default y
329	help
330	  Choose this option if you're using a host-to-host cable
331	  based on this design:  two NetChip 2890 chips and an Atmel
332	  microcontroller, with LEDs that indicate traffic.
333
334config USB_ARMLINUX
335	boolean "Embedded ARM Linux links (iPaq, ...)"
336	depends on USB_NET_CDC_SUBSET
337	default y
338	help
339	  Choose this option to support the "usb-eth" networking driver
340	  used by most of the ARM Linux community with device controllers
341	  such as the SA-11x0 and PXA-25x UDCs, or the tftp capabilities
342	  in some PXA versions of the "blob" boot loader.
343
344	  Linux-based "Gumstix" PXA-25x based systems use this protocol
345	  to talk with other Linux systems.
346
347	  Although the ROMs shipped with Sharp Zaurus products use a
348	  different link level framing protocol, you can have them use
349	  this simpler protocol by installing a different kernel.
350
351config USB_EPSON2888
352	boolean "Epson 2888 based firmware (DEVELOPMENT)"
353	depends on USB_NET_CDC_SUBSET
354	help
355	  Choose this option to support the usb networking links used
356	  by some sample firmware from Epson.
357
358config USB_KC2190
359	boolean "KT Technology KC2190 based cables (InstaNet)"
360	depends on USB_NET_CDC_SUBSET && EXPERIMENTAL
361	help
362	  Choose this option if you're using a host-to-host cable
363	  with one of these chips.
364
365config USB_NET_ZAURUS
366	tristate "Sharp Zaurus (stock ROMs) and compatible"
367	depends on USB_USBNET
368	select USB_NET_CDCETHER
369	select CRC32
370	default y
371	help
372	  Choose this option to support the usb networking links used by
373	  Zaurus models like the SL-5000D, SL-5500, SL-5600, A-300, B-500.
374	  This also supports some related device firmware, as used in some
375	  PDAs from Olympus and some cell phones from Motorola.
376
377	  If you install an alternate image, such as the Linux 2.6 based
378	  versions of OpenZaurus, you should no longer need to support this
379	  protocol.  Only the "eth-fd" or "net_fd" drivers in these devices
380	  really need this non-conformant variant of CDC Ethernet (or in
381	  some cases CDC MDLM) protocol, not "g_ether".
382
383config USB_NET_CX82310_ETH
384	tristate "Conexant CX82310 USB ethernet port"
385	depends on USB_USBNET
386	help
387	  Choose this option if you're using a Conexant CX82310-based ADSL
388	  router with USB ethernet port. This driver is for routers only,
389	  it will not work with ADSL modems (use cxacru driver instead).
390
391config USB_NET_KALMIA
392	tristate "Samsung Kalmia based LTE USB modem"
393	depends on USB_USBNET
394	help
395	  Choose this option if you have a Samsung Kalmia based USB modem
396	  as Samsung GT-B3730.
397
398	  To compile this driver as a module, choose M here: the
399	  module will be called kalmia.
400
401config USB_HSO
402	tristate "Option USB High Speed Mobile Devices"
403	depends on USB && RFKILL
404	default n
405	help
406	  Choose this option if you have an Option HSDPA/HSUPA card.
407	  These cards support downlink speeds of 7.2Mbps or greater.
408
409	  To compile this driver as a module, choose M here: the
410	  module will be called hso.
411
412config USB_NET_INT51X1
413	tristate "Intellon PLC based usb adapter"
414	depends on USB_USBNET
415	help
416	  Choose this option if you're using a 14Mb USB-based PLC
417	  (Powerline Communications) solution with an Intellon
418	  INT51x1/INT5200 chip, like the "devolo dLan duo".
419
420config USB_CDC_PHONET
421	tristate "CDC Phonet support"
422	depends on PHONET
423	help
424	  Choose this option to support the Phonet interface to a Nokia
425	  cellular modem, as found on most Nokia handsets with the
426	  "PC suite" USB profile.
427
428config USB_IPHETH
429	tristate "Apple iPhone USB Ethernet driver"
430	default n
431	---help---
432	  Module used to share Internet connection (tethering) from your
433	  iPhone (Original, 3G and 3GS) to your system.
434	  Note that you need userspace libraries and programs that are needed
435	  to pair your device with your system and that understand the iPhone
436	  protocol.
437
438	  For more information: http://giagio.com/wiki/moin.cgi/iPhoneEthernetDriver
439
440config USB_SIERRA_NET
441	tristate "USB-to-WWAN Driver for Sierra Wireless modems"
442	depends on USB_USBNET
443	help
444	  Choose this option if you have a Sierra Wireless USB-to-WWAN device.
445
446	  To compile this driver as a module, choose M here: the
447	  module will be called sierra_net.
448
449config USB_VL600
450	tristate "LG VL600 modem dongle"
451	depends on USB_NET_CDCETHER
452	select USB_ACM
453	help
454	  Select this if you want to use an LG Electronics 4G/LTE usb modem
455	  called VL600.  This driver only handles the ethernet
456	  interface exposed by the modem firmware.  To establish a connection
457	  you will first need a userspace program that sends the right
458	  command to the modem through its CDC ACM port, and most
459	  likely also a DHCP client.  See this thread about using the
460	  4G modem from Verizon:
461
462	  http://ubuntuforums.org/showpost.php?p=10589647&postcount=17
463
464endmenu
465