xref: /linux/drivers/net/usb/Kconfig (revision 657bc1d10bfc23ac06d5d687ce45826c760744f9)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
25b2fc499SJeff Garzik#
35b2fc499SJeff Garzik# USB Network devices configuration
45b2fc499SJeff Garzik#
51bb5a356SFrancois Romieucomment "Host-side USB support is needed for USB Network Adapter support"
61bb5a356SFrancois Romieu	depends on !USB && NET
75b2fc499SJeff Garzik
81bb5a356SFrancois Romieumenuconfig USB_NET_DRIVERS
9269f8cb2SFrancois Romieu	tristate "USB Network Adapters"
10269f8cb2SFrancois Romieu	default USB if USB
115b2fc499SJeff Garzik	depends on USB && NET
125b2fc499SJeff Garzik
131bb5a356SFrancois Romieuif USB_NET_DRIVERS
141bb5a356SFrancois Romieu
155b2fc499SJeff Garzikconfig USB_CATC
167d6bce7aSKees Cook	tristate "USB CATC NetMate-based Ethernet device support"
175b2fc499SJeff Garzik	select CRC32
18a7f7f624SMasahiro Yamada	help
195b2fc499SJeff Garzik	  Say Y if you want to use one of the following 10Mbps USB Ethernet
205b2fc499SJeff Garzik	  device based on the EL1210A chip. Supported devices are:
215b2fc499SJeff Garzik	  Belkin F5U011
225b2fc499SJeff Garzik	  Belkin F5U111
235b2fc499SJeff Garzik	  CATC NetMate
245b2fc499SJeff Garzik	  CATC NetMate II
255b2fc499SJeff Garzik	  smartBridges smartNIC
265b2fc499SJeff Garzik
275b2fc499SJeff Garzik	  This driver makes the adapter appear as a normal Ethernet interface,
285b2fc499SJeff Garzik	  typically on eth0, if it is the only ethernet device, or perhaps on
295b2fc499SJeff Garzik	  eth1, if you have a PCI or ISA ethernet card installed.
305b2fc499SJeff Garzik
315b2fc499SJeff Garzik	  To compile this driver as a module, choose M here: the
325b2fc499SJeff Garzik	  module will be called catc.
335b2fc499SJeff Garzik
345b2fc499SJeff Garzikconfig USB_KAWETH
355b2fc499SJeff Garzik	tristate "USB KLSI KL5USB101-based ethernet device support"
36a7f7f624SMasahiro Yamada	help
375b2fc499SJeff Garzik	  Say Y here if you want to use one of the following 10Mbps only
385b2fc499SJeff Garzik	  USB Ethernet adapters based on the KLSI KL5KUSB101B chipset:
395b2fc499SJeff Garzik	  3Com 3C19250
405b2fc499SJeff Garzik	  ADS USB-10BT
415b2fc499SJeff Garzik	  ATEN USB Ethernet
425b2fc499SJeff Garzik	  ASANTE USB To Ethernet Adapter
435b2fc499SJeff Garzik	  AOX Endpoints USB Ethernet
445b2fc499SJeff Garzik	  Correga K.K.
455b2fc499SJeff Garzik	  D-Link DSB-650C and DU-E10
465b2fc499SJeff Garzik	  Entrega / Portgear E45
475b2fc499SJeff Garzik	  I-O DATA USB-ET/T
485b2fc499SJeff Garzik	  Jaton USB Ethernet Device Adapter
495b2fc499SJeff Garzik	  Kingston Technology USB Ethernet Adapter
505b2fc499SJeff Garzik	  Linksys USB10T
515b2fc499SJeff Garzik	  Mobility USB-Ethernet Adapter
525b2fc499SJeff Garzik	  NetGear EA-101
535b2fc499SJeff Garzik	  Peracom Enet and Enet2
545b2fc499SJeff Garzik	  Portsmith Express Ethernet Adapter
555b2fc499SJeff Garzik	  Shark Pocket Adapter
565b2fc499SJeff Garzik	  SMC 2202USB
575b2fc499SJeff Garzik	  Sony Vaio port extender
585b2fc499SJeff Garzik
595b2fc499SJeff Garzik	  This driver is likely to work with most 10Mbps only USB Ethernet
605b2fc499SJeff Garzik	  adapters, including some "no brand" devices. It does NOT work on
615b2fc499SJeff Garzik	  SmartBridges smartNIC or on Belkin F5U111 devices - you should use
625b2fc499SJeff Garzik	  the CATC NetMate driver for those. If you are not sure which one
635b2fc499SJeff Garzik	  you need, select both, and the correct one should be selected for
645b2fc499SJeff Garzik	  you.
655b2fc499SJeff Garzik
665b2fc499SJeff Garzik	  This driver makes the adapter appear as a normal Ethernet interface,
675b2fc499SJeff Garzik	  typically on eth0, if it is the only ethernet device, or perhaps on
685b2fc499SJeff Garzik	  eth1, if you have a PCI or ISA ethernet card installed.
695b2fc499SJeff Garzik
705b2fc499SJeff Garzik	  To compile this driver as a module, choose M here: the
715b2fc499SJeff Garzik	  module will be called kaweth.
725b2fc499SJeff Garzik
735b2fc499SJeff Garzikconfig USB_PEGASUS
745b2fc499SJeff Garzik	tristate "USB Pegasus/Pegasus-II based ethernet device support"
755b2fc499SJeff Garzik	select MII
76a7f7f624SMasahiro Yamada	help
775b2fc499SJeff Garzik	  Say Y here if you know you have Pegasus or Pegasus-II based adapter.
78582fe6fbSCal Peake	  If in doubt then look at <file:drivers/net/usb/pegasus.h> for the
795b2fc499SJeff Garzik	  complete list of supported devices.
805b2fc499SJeff Garzik
815b2fc499SJeff Garzik	  If your particular adapter is not in the list and you are _sure_ it
825b2fc499SJeff Garzik	  is Pegasus or Pegasus II based then send me
835b2fc499SJeff Garzik	  <petkan@users.sourceforge.net> vendor and device IDs.
845b2fc499SJeff Garzik
855b2fc499SJeff Garzik	  To compile this driver as a module, choose M here: the
865b2fc499SJeff Garzik	  module will be called pegasus.
875b2fc499SJeff Garzik
885b2fc499SJeff Garzikconfig USB_RTL8150
897d6bce7aSKees Cook	tristate "USB RTL8150 based ethernet device support"
905b2fc499SJeff Garzik	select MII
915b2fc499SJeff Garzik	help
925b2fc499SJeff Garzik	  Say Y here if you have RTL8150 based usb-ethernet adapter.
935b2fc499SJeff Garzik	  Send me <petkan@users.sourceforge.net> any comments you may have.
945b2fc499SJeff Garzik	  You can also check for updates at <http://pegasus2.sourceforge.net/>.
955b2fc499SJeff Garzik
965b2fc499SJeff Garzik	  To compile this driver as a module, choose M here: the
975b2fc499SJeff Garzik	  module will be called rtl8150.
985b2fc499SJeff Garzik
99ac718b69Shayeswangconfig USB_RTL8152
10044d942a9Shayeswang	tristate "Realtek RTL8152/RTL8153 Based USB Ethernet Adapters"
101ac718b69Shayeswang	select MII
102ac718b69Shayeswang	help
103ac718b69Shayeswang	  This option adds support for Realtek RTL8152 based USB 2.0
10444d942a9Shayeswang	  10/100 Ethernet adapters and RTL8153 based USB 3.0 10/100/1000
10544d942a9Shayeswang	  Ethernet adapters.
106ac718b69Shayeswang
107ac718b69Shayeswang	  To compile this driver as a module, choose M here: the
108ac718b69Shayeswang	  module will be called r8152.
109ac718b69Shayeswang
11055d7de9dSWoojung.Huh@microchip.comconfig USB_LAN78XX
11155d7de9dSWoojung.Huh@microchip.com	tristate "Microchip LAN78XX Based USB Ethernet Adapters"
11255d7de9dSWoojung.Huh@microchip.com	select MII
11305fe68c0SWoojung.Huh@microchip.com	select PHYLIB
11405fe68c0SWoojung.Huh@microchip.com	select MICROCHIP_PHY
11589b36fb5SRaghuram Chary J	select FIXED_PHY
11655d7de9dSWoojung.Huh@microchip.com	help
11755d7de9dSWoojung.Huh@microchip.com	  This option adds support for Microchip LAN78XX based USB 2
11855d7de9dSWoojung.Huh@microchip.com	  & USB 3 10/100/1000 Ethernet adapters.
11902dc1f3dSWoojung Huh	  LAN7800 : USB 3 to 10/100/1000 Ethernet adapter
12002dc1f3dSWoojung Huh	  LAN7850 : USB 2 to 10/100/1000 Ethernet adapter
12102dc1f3dSWoojung Huh	  LAN7801 : USB 3 to 10/100/1000 Ethernet adapter (MAC only)
12202dc1f3dSWoojung Huh
12302dc1f3dSWoojung Huh	  Proper PHY driver is required for LAN7801.
12455d7de9dSWoojung.Huh@microchip.com
12555d7de9dSWoojung.Huh@microchip.com	  To compile this driver as a module, choose M here: the
12655d7de9dSWoojung.Huh@microchip.com	  module will be called lan78xx.
12755d7de9dSWoojung.Huh@microchip.com
1285b2fc499SJeff Garzikconfig USB_USBNET
1295b2fc499SJeff Garzik	tristate "Multi-purpose USB Networking Framework"
1304aa92cd9SAdrian Bunk	select MII
131a7f7f624SMasahiro Yamada	help
1325b2fc499SJeff Garzik	  This driver supports several kinds of network links over USB,
1335b2fc499SJeff Garzik	  with "minidrivers" built around a common network driver core
1345b2fc499SJeff Garzik	  that supports deep queues for efficient transfers.  (This gives
1355b2fc499SJeff Garzik	  better performance with small packets and at high speeds).
1365b2fc499SJeff Garzik
1375b2fc499SJeff Garzik	  The USB host runs "usbnet", and the other end of the link might be:
1385b2fc499SJeff Garzik
1395b2fc499SJeff Garzik	  - Another USB host, when using USB "network" or "data transfer"
1405b2fc499SJeff Garzik	    cables.  These are often used to network laptops to PCs, like
1415b2fc499SJeff Garzik	    "Laplink" parallel cables or some motherboards.  These rely
1425b2fc499SJeff Garzik	    on specialized chips from many suppliers.
1435b2fc499SJeff Garzik
1445b2fc499SJeff Garzik	  - An intelligent USB gadget, perhaps embedding a Linux system.
1455b2fc499SJeff Garzik	    These include PDAs running Linux (iPaq, Yopy, Zaurus, and
1465b2fc499SJeff Garzik	    others), and devices that interoperate using the standard
1475b2fc499SJeff Garzik	    CDC-Ethernet specification (including many cable modems).
1485b2fc499SJeff Garzik
1495b2fc499SJeff Garzik	  - Network adapter hardware (like those for 10/100 Ethernet) which
1505b2fc499SJeff Garzik	    uses this driver framework.
1515b2fc499SJeff Garzik
1525b2fc499SJeff Garzik	  The link will appear with a name like "usb0", when the link is
1535b2fc499SJeff Garzik	  a two-node link, or "eth0" for most CDC-Ethernet devices.  Those
1545b2fc499SJeff Garzik	  two-node links are most easily managed with Ethernet Bridging
1555b2fc499SJeff Garzik	  (CONFIG_BRIDGE) instead of routing.
1565b2fc499SJeff Garzik
1575b2fc499SJeff Garzik	  For more information see <http://www.linux-usb.org/usbnet/>.
1585b2fc499SJeff Garzik
1595b2fc499SJeff Garzik	  To compile this driver as a module, choose M here: the
1605b2fc499SJeff Garzik	  module will be called usbnet.
1615b2fc499SJeff Garzik
1625b2fc499SJeff Garzikconfig USB_NET_AX8817X
1635b2fc499SJeff Garzik	tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters"
164c6cbcad1SMike Frysinger	depends on USB_USBNET
1655b2fc499SJeff Garzik	select CRC32
16621502937SChristian Riesch	select PHYLIB
1675b2fc499SJeff Garzik	default y
1685b2fc499SJeff Garzik	help
1695b2fc499SJeff Garzik	  This option adds support for ASIX AX88xxx based USB 2.0
1705b2fc499SJeff Garzik	  10/100 Ethernet adapters.
1715b2fc499SJeff Garzik
1725b2fc499SJeff Garzik 	  This driver should work with at least the following devices:
1735b2fc499SJeff Garzik	    * Aten UC210T
1745b2fc499SJeff Garzik	    * ASIX AX88172
1755b2fc499SJeff Garzik	    * Billionton Systems, USB2AR
17680083a3cSChia-Sheng Chang	    * Billionton Systems, GUSB2AM-1G-B
1775b2fc499SJeff Garzik	    * Buffalo LUA-U2-KTX
1785b2fc499SJeff Garzik	    * Corega FEther USB2-TX
1795b2fc499SJeff Garzik	    * D-Link DUB-E100
1805b2fc499SJeff Garzik	    * Hawking UF200
1815b2fc499SJeff Garzik	    * Linksys USB200M
1825b2fc499SJeff Garzik	    * Netgear FA120
1835b2fc499SJeff Garzik	    * Sitecom LN-029
1847488c3e3SLuca Ceresoli	    * Sitecom LN-028
1855b2fc499SJeff Garzik	    * Intellinet USB 2.0 Ethernet
1865b2fc499SJeff Garzik	    * ST Lab USB 2.0 Ethernet
1875b2fc499SJeff Garzik	    * TrendNet TU2-ET100
1885b2fc499SJeff Garzik
1895b2fc499SJeff Garzik	  This driver creates an interface named "ethX", where X depends on
1905b2fc499SJeff Garzik	  what other networking devices you have in use.
1915b2fc499SJeff Garzik
192e2ca90c2SFreddy Xinconfig USB_NET_AX88179_178A
193e2ca90c2SFreddy Xin	tristate "ASIX AX88179/178A USB 3.0/2.0 to Gigabit Ethernet"
194e2ca90c2SFreddy Xin	depends on USB_USBNET
195e2ca90c2SFreddy Xin	select CRC32
196e2ca90c2SFreddy Xin	select PHYLIB
197e2ca90c2SFreddy Xin	default y
198e2ca90c2SFreddy Xin	help
199e2ca90c2SFreddy Xin	  This option adds support for ASIX AX88179 based USB 3.0/2.0
200e2ca90c2SFreddy Xin	  to Gigabit Ethernet adapters.
201e2ca90c2SFreddy Xin
202e2ca90c2SFreddy Xin	  This driver should work with at least the following devices:
203e2ca90c2SFreddy Xin	    * ASIX AX88179
204e2ca90c2SFreddy Xin	    * ASIX AX88178A
205e2ca90c2SFreddy Xin	    * Sitcomm LN-032
206e2ca90c2SFreddy Xin
207e2ca90c2SFreddy Xin	  This driver creates an interface named "ethX", where X depends on
208e2ca90c2SFreddy Xin	  what other networking devices you have in use.
209e2ca90c2SFreddy Xin
2105b2fc499SJeff Garzikconfig USB_NET_CDCETHER
2115b2fc499SJeff Garzik	tristate "CDC Ethernet support (smart devices such as cable modems)"
2125b2fc499SJeff Garzik	depends on USB_USBNET
2135b2fc499SJeff Garzik	default y
2145b2fc499SJeff Garzik	help
2155b2fc499SJeff Garzik	  This option supports devices conforming to the Communication Device
2165b2fc499SJeff Garzik	  Class (CDC) Ethernet Control Model, a specification that's easy to
2175b2fc499SJeff Garzik	  implement in device firmware.  The CDC specifications are available
2185b2fc499SJeff Garzik	  from <http://www.usb.org/>.
2195b2fc499SJeff Garzik
2205b2fc499SJeff Garzik	  CDC Ethernet is an implementation option for DOCSIS cable modems
2215b2fc499SJeff Garzik	  that support USB connectivity, used for non-Microsoft USB hosts.
2225b2fc499SJeff Garzik	  The Linux-USB CDC Ethernet Gadget driver is an open implementation.
2235b2fc499SJeff Garzik 	  This driver should work with at least the following devices:
2245b2fc499SJeff Garzik
22568924920SJonas Sjöquist	    * Dell Wireless 5530 HSPA
2265b2fc499SJeff Garzik 	    * Ericsson PipeRider (all variants)
22768924920SJonas Sjöquist	    * Ericsson Mobile Broadband Module (all variants)
2285b2fc499SJeff Garzik 	    * Motorola (DM100 and SB4100)
2295b2fc499SJeff Garzik 	    * Broadcom Cable Modem (reference design)
2303a19d56cSTorgny Johansson	    * Toshiba (PCX1100U and F3507g/F3607gw)
2315b2fc499SJeff Garzik	    * ...
2325b2fc499SJeff Garzik
2335b2fc499SJeff Garzik	  This driver creates an interface named "ethX", where X depends on
2345b2fc499SJeff Garzik	  what other networking devices you have in use.  However, if the
2355b2fc499SJeff Garzik	  IEEE 802 "local assignment" bit is set in the address, a "usbX"
2365b2fc499SJeff Garzik	  name is used instead.
2375b2fc499SJeff Garzik
2389f722c09SOmar Laazimaniconfig USB_NET_CDC_EEM
2399f722c09SOmar Laazimani	tristate "CDC EEM support"
2407d6bce7aSKees Cook	depends on USB_USBNET
2419f722c09SOmar Laazimani	help
2429f722c09SOmar Laazimani	  This option supports devices conforming to the Communication Device
2439f722c09SOmar Laazimani	  Class (CDC) Ethernet Emulation Model, a specification that's easy to
2449f722c09SOmar Laazimani	  implement in device firmware.  The CDC EEM specifications are available
2459f722c09SOmar Laazimani	  from <http://www.usb.org/>.
2469f722c09SOmar Laazimani
2479f722c09SOmar Laazimani	  This driver creates an interface named "ethX", where X depends on
2489f722c09SOmar Laazimani	  what other networking devices you have in use.  However, if the
2499f722c09SOmar Laazimani	  IEEE 802 "local assignment" bit is set in the address, a "usbX"
2509f722c09SOmar Laazimani	  name is used instead.
2519f722c09SOmar Laazimani
252900d495aSAlexey Orishkoconfig USB_NET_CDC_NCM
253900d495aSAlexey Orishko	tristate "CDC NCM support"
254900d495aSAlexey Orishko	depends on USB_USBNET
2555fd99b5dSYueHaibing	select USB_NET_CDCETHER
256900d495aSAlexey Orishko	default y
257900d495aSAlexey Orishko	help
258900d495aSAlexey Orishko	  This driver provides support for CDC NCM (Network Control Model
259900d495aSAlexey Orishko	  Device USB Class Specification). The CDC NCM specification is
260900d495aSAlexey Orishko	  available from <http://www.usb.org/>.
261900d495aSAlexey Orishko
262900d495aSAlexey Orishko	  Say "y" to link the driver statically, or "m" to build a
263900d495aSAlexey Orishko	  dynamically linked module.
264900d495aSAlexey Orishko
265900d495aSAlexey Orishko	  This driver should work with at least the following devices:
266900d495aSAlexey Orishko	    * ST-Ericsson M700 LTE FDD/TDD Mobile Broadband Modem (ref. design)
267900d495aSAlexey Orishko	    * ST-Ericsson M5730 HSPA+ Mobile Broadband Modem (reference design)
268900d495aSAlexey Orishko	    * ST-Ericsson M570 HSPA+ Mobile Broadband Modem (reference design)
269900d495aSAlexey Orishko	    * ST-Ericsson M343 HSPA Mobile Broadband Modem (reference design)
270900d495aSAlexey Orishko	    * Ericsson F5521gw Mobile Broadband Module
271900d495aSAlexey Orishko
27241c47d8cSEnrico Miosoconfig USB_NET_HUAWEI_CDC_NCM
27341c47d8cSEnrico Mioso	tristate "Huawei NCM embedded AT channel support"
27441c47d8cSEnrico Mioso	depends on USB_USBNET
27541c47d8cSEnrico Mioso	select USB_WDM
27641c47d8cSEnrico Mioso	select USB_NET_CDC_NCM
27741c47d8cSEnrico Mioso	help
27841c47d8cSEnrico Mioso		This driver supports huawei-style NCM devices, that use NCM as a
27941c47d8cSEnrico Mioso		transport for other protocols, usually an embedded AT channel.
28041c47d8cSEnrico Mioso		Good examples are:
28141c47d8cSEnrico Mioso		* Huawei E3131
28241c47d8cSEnrico Mioso		* Huawei E3251
28341c47d8cSEnrico Mioso
28441c47d8cSEnrico Mioso		To compile this driver as a module, choose M here: the module will be
28541c47d8cSEnrico Mioso		called huawei_cdc_ncm.ko.
28641c47d8cSEnrico Mioso
2879084ccf9SBjørn Morkconfig USB_NET_CDC_MBIM
2889084ccf9SBjørn Mork	tristate "CDC MBIM support"
2899084ccf9SBjørn Mork	depends on USB_USBNET
2909084ccf9SBjørn Mork	select USB_WDM
2919084ccf9SBjørn Mork	select USB_NET_CDC_NCM
2929084ccf9SBjørn Mork	help
2939084ccf9SBjørn Mork	  This driver provides support for CDC MBIM (Mobile Broadband
2949084ccf9SBjørn Mork	  Interface Model) devices. The CDC MBIM specification is
2959084ccf9SBjørn Mork	  available from <http://www.usb.org/>.
2969084ccf9SBjørn Mork
2979084ccf9SBjørn Mork	  MBIM devices require configuration using the management
2989084ccf9SBjørn Mork	  protocol defined by the MBIM specification.  This driver
2999084ccf9SBjørn Mork	  provides unfiltered access to the MBIM control channel
3009084ccf9SBjørn Mork	  through the associated /dev/cdc-wdmx character device.
3019084ccf9SBjørn Mork
3029084ccf9SBjørn Mork	  To compile this driver as a module, choose M here: the
3039084ccf9SBjørn Mork	  module will be called cdc_mbim.
3049084ccf9SBjørn Mork
3055b2fc499SJeff Garzikconfig USB_NET_DM9601
306cabd0e3aSPeter Korsgaard	tristate "Davicom DM96xx based USB 10/100 ethernet devices"
3075b2fc499SJeff Garzik	depends on USB_USBNET
3085b2fc499SJeff Garzik	select CRC32
3095b2fc499SJeff Garzik	help
310cabd0e3aSPeter Korsgaard	  This option adds support for Davicom DM9601/DM9620/DM9621A
311cabd0e3aSPeter Korsgaard	  based USB 10/100 Ethernet adapters.
3125b2fc499SJeff Garzik
313c9b37458SLiu Junliangconfig USB_NET_SR9700
314c9b37458SLiu Junliang	tristate "CoreChip-sz SR9700 based USB 1.1 10/100 ethernet devices"
315c9b37458SLiu Junliang	depends on USB_USBNET
316c9b37458SLiu Junliang	select CRC32
317c9b37458SLiu Junliang	help
318c9b37458SLiu Junliang	  This option adds support for CoreChip-sz SR9700 based USB 1.1
319c9b37458SLiu Junliang	  10/100 Ethernet adapters.
320c9b37458SLiu Junliang
32119a38d8eSLiu Junliangconfig USB_NET_SR9800
32219a38d8eSLiu Junliang	tristate "CoreChip-sz SR9800 based USB 2.0 10/100 ethernet devices"
32319a38d8eSLiu Junliang	depends on USB_USBNET
32419a38d8eSLiu Junliang	select CRC32
325a7f7f624SMasahiro Yamada	help
32619a38d8eSLiu Junliang	  Say Y if you want to use one of the following 100Mbps USB Ethernet
32719a38d8eSLiu Junliang	  device based on the CoreChip-sz SR9800 chip.
32819a38d8eSLiu Junliang
32919a38d8eSLiu Junliang	  This driver makes the adapter appear as a normal Ethernet interface,
33019a38d8eSLiu Junliang	  typically on eth0, if it is the only ethernet device, or perhaps on
33119a38d8eSLiu Junliang	  eth1, if you have a PCI or ISA ethernet card installed.
33219a38d8eSLiu Junliang
33319a38d8eSLiu Junliang	  To compile this driver as a module, choose M here: the
33419a38d8eSLiu Junliang	  module will be called sr9800.
33519a38d8eSLiu Junliang
336d0cad871SSteve Glendinningconfig USB_NET_SMSC75XX
337d0cad871SSteve Glendinning	tristate "SMSC LAN75XX based USB 2.0 gigabit ethernet devices"
338d0cad871SSteve Glendinning	depends on USB_USBNET
339899a391bSSteve Glendinning	select BITREVERSE
340899a391bSSteve Glendinning	select CRC16
341d0cad871SSteve Glendinning	select CRC32
342d0cad871SSteve Glendinning	help
3431e731cb9SRobert de Vries	  This option adds support for SMSC LAN75XX based USB 2.0
344d0cad871SSteve Glendinning	  Gigabit Ethernet adapters.
345d0cad871SSteve Glendinning
3462f7ca802SSteve Glendinningconfig USB_NET_SMSC95XX
3472f7ca802SSteve Glendinning	tristate "SMSC LAN95XX based USB 2.0 10/100 ethernet devices"
3482f7ca802SSteve Glendinning	depends on USB_USBNET
34905b35e7eSAndre Edich	select PHYLIB
35005b35e7eSAndre Edich	select SMSC_PHY
351bbd9f9eeSSteve Glendinning	select BITREVERSE
352bbd9f9eeSSteve Glendinning	select CRC16
3532f7ca802SSteve Glendinning	select CRC32
3542f7ca802SSteve Glendinning	help
3552f7ca802SSteve Glendinning	  This option adds support for SMSC LAN95XX based USB 2.0
3562f7ca802SSteve Glendinning	  10/100 Ethernet adapters.
3572f7ca802SSteve Glendinning
3585b2fc499SJeff Garzikconfig USB_NET_GL620A
3595b2fc499SJeff Garzik	tristate "GeneSys GL620USB-A based cables"
3605b2fc499SJeff Garzik	depends on USB_USBNET
3615b2fc499SJeff Garzik	help
3625b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable,
3635b2fc499SJeff Garzik	  or PC2PC motherboard, with this chip.
3645b2fc499SJeff Garzik
3655b2fc499SJeff Garzik	  Note that the half-duplex "GL620USB" is not supported.
3665b2fc499SJeff Garzik
3675b2fc499SJeff Garzikconfig USB_NET_NET1080
3685b2fc499SJeff Garzik	tristate "NetChip 1080 based cables (Laplink, ...)"
3695b2fc499SJeff Garzik	default y
3705b2fc499SJeff Garzik	depends on USB_USBNET
3715b2fc499SJeff Garzik	help
3725b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable based
3735b2fc499SJeff Garzik	  on this design:  one NetChip 1080 chip and supporting logic,
3745b2fc499SJeff Garzik	  optionally with LEDs that indicate traffic
3755b2fc499SJeff Garzik
3765b2fc499SJeff Garzikconfig USB_NET_PLUSB
3776f2aee0cSRoman Spychała	tristate "Prolific PL-2301/2302/25A1/27A1 based cables"
3785b2fc499SJeff Garzik	# if the handshake/init/reset problems, from original 'plusb',
3795b2fc499SJeff Garzik	# are ever resolved ... then remove "experimental"
3807d6bce7aSKees Cook	depends on USB_USBNET
3815b2fc499SJeff Garzik	help
3825b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable
3835b2fc499SJeff Garzik	  with one of these chips.
3845b2fc499SJeff Garzik
3855b2fc499SJeff Garzikconfig USB_NET_MCS7830
3865b2fc499SJeff Garzik	tristate "MosChip MCS7830 based Ethernet adapters"
3875b2fc499SJeff Garzik	depends on USB_USBNET
3885b2fc499SJeff Garzik	help
3895b2fc499SJeff Garzik	  Choose this option if you're using a 10/100 Ethernet USB2
3905b2fc499SJeff Garzik	  adapter based on the MosChip 7830 controller. This includes
3915b2fc499SJeff Garzik	  adapters marketed under the DeLOCK brand.
3925b2fc499SJeff Garzik
3935b2fc499SJeff Garzikconfig USB_NET_RNDIS_HOST
3947d6bce7aSKees Cook	tristate "Host for RNDIS and ActiveSync devices"
3957d6bce7aSKees Cook	depends on USB_USBNET
3965b2fc499SJeff Garzik	select USB_NET_CDCETHER
3975b2fc499SJeff Garzik	help
3985b2fc499SJeff Garzik	  This option enables hosting "Remote NDIS" USB networking links,
3995b2fc499SJeff Garzik	  as encouraged by Microsoft (instead of CDC Ethernet!) for use in
4005b2fc499SJeff Garzik	  various devices that may only support this protocol.  A variant
4015b2fc499SJeff Garzik	  of this protocol (with even less public documentation) seems to
4025b2fc499SJeff Garzik	  be at the root of Microsoft's "ActiveSync" too.
4035b2fc499SJeff Garzik
4045b2fc499SJeff Garzik	  Avoid using this protocol unless you have no better options.
4055b2fc499SJeff Garzik	  The protocol specification is incomplete, and is controlled by
4065b2fc499SJeff Garzik	  (and for) Microsoft; it isn't an "Open" ecosystem or market.
4075b2fc499SJeff Garzik
408f3bb2376SArnd Bergmannconfig USB_NET_CDC_SUBSET_ENABLE
409f3bb2376SArnd Bergmann	tristate
410f3bb2376SArnd Bergmann	depends on USB_NET_CDC_SUBSET
411f3bb2376SArnd Bergmann
4125b2fc499SJeff Garzikconfig USB_NET_CDC_SUBSET
4135b2fc499SJeff Garzik	tristate "Simple USB Network Links (CDC Ethernet subset)"
4145b2fc499SJeff Garzik	depends on USB_USBNET
4155b2fc499SJeff Garzik	default y
4165b2fc499SJeff Garzik	help
4175b2fc499SJeff Garzik	  This driver module supports USB network devices that can work
4185b2fc499SJeff Garzik	  without any device-specific information.  Select it if you have
4195b2fc499SJeff Garzik	  one of these drivers.
4205b2fc499SJeff Garzik
4215b2fc499SJeff Garzik	  Note that while many USB host-to-host cables can work in this mode,
4225b2fc499SJeff Garzik	  that may mean not being able to talk to Win32 systems or more
4235b2fc499SJeff Garzik	  commonly not being able to handle certain events (like replugging
4245b2fc499SJeff Garzik	  the host on the other end) very well.  Also, these devices will
4255b2fc499SJeff Garzik	  not generally have permanently assigned Ethernet addresses.
4265b2fc499SJeff Garzik
4275b2fc499SJeff Garzikconfig USB_ALI_M5632
4286341e62bSChristoph Jaeger	bool "ALi M5632 based 'USB 2.0 Data Link' cables"
4295b2fc499SJeff Garzik	depends on USB_NET_CDC_SUBSET
430f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4315b2fc499SJeff Garzik	help
4325b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable
4335b2fc499SJeff Garzik	  based on this design, which supports USB 2.0 high speed.
4345b2fc499SJeff Garzik
4355b2fc499SJeff Garzikconfig USB_AN2720
4366341e62bSChristoph Jaeger	bool "AnchorChips 2720 based cables (Xircom PGUNET, ...)"
4375b2fc499SJeff Garzik	depends on USB_NET_CDC_SUBSET
438f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4395b2fc499SJeff Garzik	help
4405b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable
4415b2fc499SJeff Garzik	  based on this design.  Note that AnchorChips is now a
4425b2fc499SJeff Garzik	  Cypress brand.
4435b2fc499SJeff Garzik
4445b2fc499SJeff Garzikconfig USB_BELKIN
4456341e62bSChristoph Jaeger	bool "eTEK based host-to-host cables (Advance, Belkin, ...)"
4465b2fc499SJeff Garzik	depends on USB_NET_CDC_SUBSET
447f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4485b2fc499SJeff Garzik	default y
4495b2fc499SJeff Garzik	help
4505b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable
4515b2fc499SJeff Garzik	  based on this design:  two NetChip 2890 chips and an Atmel
4525b2fc499SJeff Garzik	  microcontroller, with LEDs that indicate traffic.
4535b2fc499SJeff Garzik
4545b2fc499SJeff Garzikconfig USB_ARMLINUX
4556341e62bSChristoph Jaeger	bool "Embedded ARM Linux links (iPaq, ...)"
4565b2fc499SJeff Garzik	depends on USB_NET_CDC_SUBSET
457f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4585b2fc499SJeff Garzik	default y
4595b2fc499SJeff Garzik	help
4605b2fc499SJeff Garzik	  Choose this option to support the "usb-eth" networking driver
4615b2fc499SJeff Garzik	  used by most of the ARM Linux community with device controllers
4625b2fc499SJeff Garzik	  such as the SA-11x0 and PXA-25x UDCs, or the tftp capabilities
4635b2fc499SJeff Garzik	  in some PXA versions of the "blob" boot loader.
4645b2fc499SJeff Garzik
4655b2fc499SJeff Garzik	  Linux-based "Gumstix" PXA-25x based systems use this protocol
4665b2fc499SJeff Garzik	  to talk with other Linux systems.
4675b2fc499SJeff Garzik
4685b2fc499SJeff Garzik	  Although the ROMs shipped with Sharp Zaurus products use a
4695b2fc499SJeff Garzik	  different link level framing protocol, you can have them use
4705b2fc499SJeff Garzik	  this simpler protocol by installing a different kernel.
4715b2fc499SJeff Garzik
4725b2fc499SJeff Garzikconfig USB_EPSON2888
4736341e62bSChristoph Jaeger	bool "Epson 2888 based firmware (DEVELOPMENT)"
4745b2fc499SJeff Garzik	depends on USB_NET_CDC_SUBSET
475f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4765b2fc499SJeff Garzik	help
4775b2fc499SJeff Garzik	  Choose this option to support the usb networking links used
4785b2fc499SJeff Garzik	  by some sample firmware from Epson.
4795b2fc499SJeff Garzik
4805b2fc499SJeff Garzikconfig USB_KC2190
4816341e62bSChristoph Jaeger	bool "KT Technology KC2190 based cables (InstaNet)"
4827d6bce7aSKees Cook	depends on USB_NET_CDC_SUBSET
483f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4845b2fc499SJeff Garzik	help
485c0811987SSam Ravnborg	  Choose this option if you're using a host-to-host cable
486c0811987SSam Ravnborg	  with one of these chips.
4875b2fc499SJeff Garzik
4885b2fc499SJeff Garzikconfig USB_NET_ZAURUS
4895b2fc499SJeff Garzik	tristate "Sharp Zaurus (stock ROMs) and compatible"
4905b2fc499SJeff Garzik	depends on USB_USBNET
4915b2fc499SJeff Garzik	select USB_NET_CDCETHER
4925b2fc499SJeff Garzik	select CRC32
4935b2fc499SJeff Garzik	default y
4945b2fc499SJeff Garzik	help
4955b2fc499SJeff Garzik	  Choose this option to support the usb networking links used by
4965b2fc499SJeff Garzik	  Zaurus models like the SL-5000D, SL-5500, SL-5600, A-300, B-500.
4975b2fc499SJeff Garzik	  This also supports some related device firmware, as used in some
4985b2fc499SJeff Garzik	  PDAs from Olympus and some cell phones from Motorola.
4995b2fc499SJeff Garzik
5005b2fc499SJeff Garzik	  If you install an alternate image, such as the Linux 2.6 based
5015b2fc499SJeff Garzik	  versions of OpenZaurus, you should no longer need to support this
5025b2fc499SJeff Garzik	  protocol.  Only the "eth-fd" or "net_fd" drivers in these devices
5035b2fc499SJeff Garzik	  really need this non-conformant variant of CDC Ethernet (or in
5045b2fc499SJeff Garzik	  some cases CDC MDLM) protocol, not "g_ether".
5055b2fc499SJeff Garzik
506cc28a20eSOndrej Zaryconfig USB_NET_CX82310_ETH
507cc28a20eSOndrej Zary	tristate "Conexant CX82310 USB ethernet port"
508cc28a20eSOndrej Zary	depends on USB_USBNET
509cc28a20eSOndrej Zary	help
510cc28a20eSOndrej Zary	  Choose this option if you're using a Conexant CX82310-based ADSL
511cc28a20eSOndrej Zary	  router with USB ethernet port. This driver is for routers only,
512cc28a20eSOndrej Zary	  it will not work with ADSL modems (use cxacru driver instead).
513cc28a20eSOndrej Zary
514d4026123SMarius B. Kotsbakconfig USB_NET_KALMIA
515d4026123SMarius B. Kotsbak	tristate "Samsung Kalmia based LTE USB modem"
516d4026123SMarius B. Kotsbak	depends on USB_USBNET
517d4026123SMarius B. Kotsbak	help
518d4026123SMarius B. Kotsbak	  Choose this option if you have a Samsung Kalmia based USB modem
519d4026123SMarius B. Kotsbak	  as Samsung GT-B3730.
520d4026123SMarius B. Kotsbak
521d4026123SMarius B. Kotsbak	  To compile this driver as a module, choose M here: the
522d4026123SMarius B. Kotsbak	  module will be called kalmia.
523d4026123SMarius B. Kotsbak
5249b28ecd6SBjørn Morkconfig USB_NET_QMI_WWAN
5259b28ecd6SBjørn Mork	tristate "QMI WWAN driver for Qualcomm MSM based 3G and LTE modems"
5269b28ecd6SBjørn Mork	depends on USB_USBNET
52774cba4a8SBjørn Mork	select USB_WDM
5289b28ecd6SBjørn Mork	help
5299b28ecd6SBjørn Mork	  Support WWAN LTE/3G devices based on Qualcomm Mobile Data Modem
5309b28ecd6SBjørn Mork	  (MDM) chipsets.  Examples of such devices are
5319b28ecd6SBjørn Mork	    * Huawei E392/E398
5329b28ecd6SBjørn Mork
5339b28ecd6SBjørn Mork	  This driver will only drive the ethernet part of the chips.
5349b28ecd6SBjørn Mork	  The devices require additional configuration to be usable.
5359b28ecd6SBjørn Mork	  Multiple management interfaces with linux drivers are
5369b28ecd6SBjørn Mork	  available:
5379b28ecd6SBjørn Mork
5389b28ecd6SBjørn Mork	    * option: AT commands on /dev/ttyUSBx
5399b28ecd6SBjørn Mork	    * cdc-wdm: Qualcomm MSM Interface (QMI) protocol on /dev/cdc-wdmx
5409b28ecd6SBjørn Mork
5419b28ecd6SBjørn Mork	  A modem manager with support for QMI is recommended.
5429b28ecd6SBjørn Mork
5439b28ecd6SBjørn Mork	  To compile this driver as a module, choose M here: the
5449b28ecd6SBjørn Mork	  module will be called qmi_wwan.
5459b28ecd6SBjørn Mork
54685a73b33SDavid Brownellconfig USB_HSO
54785a73b33SDavid Brownell	tristate "Option USB High Speed Mobile Devices"
5484f73bc4dSJoe Millenbach	depends on USB && RFKILL && TTY
54985a73b33SDavid Brownell	default n
55085a73b33SDavid Brownell	help
55185a73b33SDavid Brownell	  Choose this option if you have an Option HSDPA/HSUPA card.
55285a73b33SDavid Brownell	  These cards support downlink speeds of 7.2Mbps or greater.
55385a73b33SDavid Brownell
55485a73b33SDavid Brownell	  To compile this driver as a module, choose M here: the
55585a73b33SDavid Brownell	  module will be called hso.
5565b2fc499SJeff Garzik
5574510d7cbSPeter Holikconfig USB_NET_INT51X1
5584510d7cbSPeter Holik	tristate "Intellon PLC based usb adapter"
5594510d7cbSPeter Holik	depends on USB_USBNET
5604510d7cbSPeter Holik	help
5614510d7cbSPeter Holik	  Choose this option if you're using a 14Mb USB-based PLC
5624510d7cbSPeter Holik	  (Powerline Communications) solution with an Intellon
5634510d7cbSPeter Holik	  INT51x1/INT5200 chip, like the "devolo dLan duo".
5644510d7cbSPeter Holik
56587cf6560SRémi Denis-Courmontconfig USB_CDC_PHONET
56687cf6560SRémi Denis-Courmont	tristate "CDC Phonet support"
56737d2dbcdSRandy Dunlap	depends on PHONET && USB_USBNET
56887cf6560SRémi Denis-Courmont	help
56987cf6560SRémi Denis-Courmont	  Choose this option to support the Phonet interface to a Nokia
57087cf6560SRémi Denis-Courmont	  cellular modem, as found on most Nokia handsets with the
57187cf6560SRémi Denis-Courmont	  "PC suite" USB profile.
57287cf6560SRémi Denis-Courmont
573a19259c3SDiego Giagioconfig USB_IPHETH
574a19259c3SDiego Giagio	tristate "Apple iPhone USB Ethernet driver"
575a19259c3SDiego Giagio	default n
576a7f7f624SMasahiro Yamada	help
577a19259c3SDiego Giagio	  Module used to share Internet connection (tethering) from your
578a19259c3SDiego Giagio	  iPhone (Original, 3G and 3GS) to your system.
579a19259c3SDiego Giagio	  Note that you need userspace libraries and programs that are needed
580a19259c3SDiego Giagio	  to pair your device with your system and that understand the iPhone
581a19259c3SDiego Giagio	  protocol.
582a19259c3SDiego Giagio
583a19259c3SDiego Giagio	  For more information: http://giagio.com/wiki/moin.cgi/iPhoneEthernetDriver
584a19259c3SDiego Giagio
585eb4fd8cdSElina Pashevaconfig USB_SIERRA_NET
586eb4fd8cdSElina Pasheva	tristate "USB-to-WWAN Driver for Sierra Wireless modems"
587eb4fd8cdSElina Pasheva	depends on USB_USBNET
588eb4fd8cdSElina Pasheva	help
589eb4fd8cdSElina Pasheva	  Choose this option if you have a Sierra Wireless USB-to-WWAN device.
590eb4fd8cdSElina Pasheva
591eb4fd8cdSElina Pasheva	  To compile this driver as a module, choose M here: the
592eb4fd8cdSElina Pasheva	  module will be called sierra_net.
593eb4fd8cdSElina Pasheva
5947a635ea9SAndrzej Zaborowskiconfig USB_VL600
5957a635ea9SAndrzej Zaborowski	tristate "LG VL600 modem dongle"
5964f73bc4dSJoe Millenbach	depends on USB_NET_CDCETHER && TTY
5977a635ea9SAndrzej Zaborowski	select USB_ACM
5987a635ea9SAndrzej Zaborowski	help
5997a635ea9SAndrzej Zaborowski	  Select this if you want to use an LG Electronics 4G/LTE usb modem
6007a635ea9SAndrzej Zaborowski	  called VL600.  This driver only handles the ethernet
6017a635ea9SAndrzej Zaborowski	  interface exposed by the modem firmware.  To establish a connection
6027a635ea9SAndrzej Zaborowski	  you will first need a userspace program that sends the right
6037a635ea9SAndrzej Zaborowski	  command to the modem through its CDC ACM port, and most
6047a635ea9SAndrzej Zaborowski	  likely also a DHCP client.  See this thread about using the
6057a635ea9SAndrzej Zaborowski	  4G modem from Verizon:
6067a635ea9SAndrzej Zaborowski
6077a635ea9SAndrzej Zaborowski	  http://ubuntuforums.org/showpost.php?p=10589647&postcount=17
6087a635ea9SAndrzej Zaborowski
6094a476bd6SMatthew Garrettconfig USB_NET_CH9200
6104a476bd6SMatthew Garrett	tristate "QingHeng CH9200 USB ethernet support"
6114a476bd6SMatthew Garrett	depends on USB_USBNET
6124a476bd6SMatthew Garrett	select MII
6134a476bd6SMatthew Garrett	help
6144a476bd6SMatthew Garrett	  Choose this option if you have a USB ethernet adapter with a QinHeng
6154a476bd6SMatthew Garrett	  CH9200 chipset.
6164a476bd6SMatthew Garrett
6174a476bd6SMatthew Garrett	  To compile this driver as a module, choose M here: the
6184a476bd6SMatthew Garrett	  module will be called ch9200.
6194a476bd6SMatthew Garrett
62017364b80SDmitry Bezrukovconfig USB_NET_AQC111
62117364b80SDmitry Bezrukov	tristate "Aquantia AQtion USB to 5/2.5GbE Controllers support"
62217364b80SDmitry Bezrukov	depends on USB_USBNET
62317364b80SDmitry Bezrukov	select CRC32
62417364b80SDmitry Bezrukov	help
62517364b80SDmitry Bezrukov	  This option adds support for Aquantia AQtion USB
62617364b80SDmitry Bezrukov	  Ethernet adapters based on AQC111U/AQC112 chips.
62717364b80SDmitry Bezrukov
62817364b80SDmitry Bezrukov	  This driver should work with at least the following devices:
62917364b80SDmitry Bezrukov	  * Aquantia AQtion USB to 5GbE
63017364b80SDmitry Bezrukov
631*657bc1d1SHayes Wangconfig USB_RTL8153_ECM
632*657bc1d1SHayes Wang	tristate "RTL8153 ECM support"
633*657bc1d1SHayes Wang	depends on USB_NET_CDCETHER && (USB_RTL8152 || USB_RTL8152=n)
634*657bc1d1SHayes Wang	default y
635*657bc1d1SHayes Wang	help
636*657bc1d1SHayes Wang	  This option supports ECM mode for RTL8153 ethernet adapter, when
637*657bc1d1SHayes Wang	  CONFIG_USB_RTL8152 is not set, or the RTL8153 device is not
638*657bc1d1SHayes Wang	  supported by r8152 driver.
639*657bc1d1SHayes Wang
6401bb5a356SFrancois Romieuendif # USB_NET_DRIVERS
641