xref: /openbmc/linux/drivers/net/usb/Kconfig (revision 2612e3bbc0386368a850140a6c9b990cd496a5ec)
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
1029973a430SVegard Nossum	select CRC32
1039973a430SVegard Nossum	select CRYPTO
1049973a430SVegard Nossum	select CRYPTO_HASH
1059973a430SVegard Nossum	select CRYPTO_SHA256
106ac718b69Shayeswang	help
107ac718b69Shayeswang	  This option adds support for Realtek RTL8152 based USB 2.0
10844d942a9Shayeswang	  10/100 Ethernet adapters and RTL8153 based USB 3.0 10/100/1000
10944d942a9Shayeswang	  Ethernet adapters.
110ac718b69Shayeswang
111ac718b69Shayeswang	  To compile this driver as a module, choose M here: the
112ac718b69Shayeswang	  module will be called r8152.
113ac718b69Shayeswang
11455d7de9dSWoojung.Huh@microchip.comconfig USB_LAN78XX
11555d7de9dSWoojung.Huh@microchip.com	tristate "Microchip LAN78XX Based USB Ethernet Adapters"
11655d7de9dSWoojung.Huh@microchip.com	select MII
11705fe68c0SWoojung.Huh@microchip.com	select PHYLIB
11805fe68c0SWoojung.Huh@microchip.com	select MICROCHIP_PHY
11989b36fb5SRaghuram Chary J	select FIXED_PHY
12046393d61SVegard Nossum	select CRC32
12155d7de9dSWoojung.Huh@microchip.com	help
12255d7de9dSWoojung.Huh@microchip.com	  This option adds support for Microchip LAN78XX based USB 2
12355d7de9dSWoojung.Huh@microchip.com	  & USB 3 10/100/1000 Ethernet adapters.
12402dc1f3dSWoojung Huh	  LAN7800 : USB 3 to 10/100/1000 Ethernet adapter
12502dc1f3dSWoojung Huh	  LAN7850 : USB 2 to 10/100/1000 Ethernet adapter
12602dc1f3dSWoojung Huh	  LAN7801 : USB 3 to 10/100/1000 Ethernet adapter (MAC only)
12702dc1f3dSWoojung Huh
12802dc1f3dSWoojung Huh	  Proper PHY driver is required for LAN7801.
12955d7de9dSWoojung.Huh@microchip.com
13055d7de9dSWoojung.Huh@microchip.com	  To compile this driver as a module, choose M here: the
13155d7de9dSWoojung.Huh@microchip.com	  module will be called lan78xx.
13255d7de9dSWoojung.Huh@microchip.com
1335b2fc499SJeff Garzikconfig USB_USBNET
1345b2fc499SJeff Garzik	tristate "Multi-purpose USB Networking Framework"
1354aa92cd9SAdrian Bunk	select MII
136a7f7f624SMasahiro Yamada	help
1375b2fc499SJeff Garzik	  This driver supports several kinds of network links over USB,
1385b2fc499SJeff Garzik	  with "minidrivers" built around a common network driver core
1395b2fc499SJeff Garzik	  that supports deep queues for efficient transfers.  (This gives
1405b2fc499SJeff Garzik	  better performance with small packets and at high speeds).
1415b2fc499SJeff Garzik
1425b2fc499SJeff Garzik	  The USB host runs "usbnet", and the other end of the link might be:
1435b2fc499SJeff Garzik
1445b2fc499SJeff Garzik	  - Another USB host, when using USB "network" or "data transfer"
1455b2fc499SJeff Garzik	    cables.  These are often used to network laptops to PCs, like
1465b2fc499SJeff Garzik	    "Laplink" parallel cables or some motherboards.  These rely
1475b2fc499SJeff Garzik	    on specialized chips from many suppliers.
1485b2fc499SJeff Garzik
1495b2fc499SJeff Garzik	  - An intelligent USB gadget, perhaps embedding a Linux system.
1505b2fc499SJeff Garzik	    These include PDAs running Linux (iPaq, Yopy, Zaurus, and
1515b2fc499SJeff Garzik	    others), and devices that interoperate using the standard
1525b2fc499SJeff Garzik	    CDC-Ethernet specification (including many cable modems).
1535b2fc499SJeff Garzik
1545b2fc499SJeff Garzik	  - Network adapter hardware (like those for 10/100 Ethernet) which
1555b2fc499SJeff Garzik	    uses this driver framework.
1565b2fc499SJeff Garzik
1575b2fc499SJeff Garzik	  The link will appear with a name like "usb0", when the link is
1585b2fc499SJeff Garzik	  a two-node link, or "eth0" for most CDC-Ethernet devices.  Those
1595b2fc499SJeff Garzik	  two-node links are most easily managed with Ethernet Bridging
1605b2fc499SJeff Garzik	  (CONFIG_BRIDGE) instead of routing.
1615b2fc499SJeff Garzik
1625b2fc499SJeff Garzik	  For more information see <http://www.linux-usb.org/usbnet/>.
1635b2fc499SJeff Garzik
1645b2fc499SJeff Garzik	  To compile this driver as a module, choose M here: the
1655b2fc499SJeff Garzik	  module will be called usbnet.
1665b2fc499SJeff Garzik
1675b2fc499SJeff Garzikconfig USB_NET_AX8817X
1685b2fc499SJeff Garzik	tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters"
169c6cbcad1SMike Frysinger	depends on USB_USBNET
1705b2fc499SJeff Garzik	select CRC32
171e0bffe3eSOleksij Rempel	select PHYLINK
172dde25846SOleksij Rempel	select AX88796B_PHY
17334a1dee6SOleksij Rempel	imply NET_SELFTESTS
1745b2fc499SJeff Garzik	default y
1755b2fc499SJeff Garzik	help
1765b2fc499SJeff Garzik	  This option adds support for ASIX AX88xxx based USB 2.0
1775b2fc499SJeff Garzik	  10/100 Ethernet adapters.
1785b2fc499SJeff Garzik
1795b2fc499SJeff Garzik	  This driver should work with at least the following devices:
1805b2fc499SJeff Garzik	    * Aten UC210T
1815b2fc499SJeff Garzik	    * ASIX AX88172
1825b2fc499SJeff Garzik	    * Billionton Systems, USB2AR
18380083a3cSChia-Sheng Chang	    * Billionton Systems, GUSB2AM-1G-B
1845b2fc499SJeff Garzik	    * Buffalo LUA-U2-KTX
1855b2fc499SJeff Garzik	    * Corega FEther USB2-TX
1865b2fc499SJeff Garzik	    * D-Link DUB-E100
1875b2fc499SJeff Garzik	    * Hawking UF200
1885b2fc499SJeff Garzik	    * Linksys USB200M
1895b2fc499SJeff Garzik	    * Netgear FA120
1905b2fc499SJeff Garzik	    * Sitecom LN-029
1917488c3e3SLuca Ceresoli	    * Sitecom LN-028
1925b2fc499SJeff Garzik	    * Intellinet USB 2.0 Ethernet
1935b2fc499SJeff Garzik	    * ST Lab USB 2.0 Ethernet
1945b2fc499SJeff Garzik	    * TrendNet TU2-ET100
1955b2fc499SJeff Garzik
1965b2fc499SJeff Garzik	  This driver creates an interface named "ethX", where X depends on
1975b2fc499SJeff Garzik	  what other networking devices you have in use.
1985b2fc499SJeff Garzik
199e2ca90c2SFreddy Xinconfig USB_NET_AX88179_178A
200e2ca90c2SFreddy Xin	tristate "ASIX AX88179/178A USB 3.0/2.0 to Gigabit Ethernet"
201e2ca90c2SFreddy Xin	depends on USB_USBNET
202e2ca90c2SFreddy Xin	select CRC32
203e2ca90c2SFreddy Xin	select PHYLIB
204e2ca90c2SFreddy Xin	default y
205e2ca90c2SFreddy Xin	help
206e2ca90c2SFreddy Xin	  This option adds support for ASIX AX88179 based USB 3.0/2.0
207e2ca90c2SFreddy Xin	  to Gigabit Ethernet adapters.
208e2ca90c2SFreddy Xin
209e2ca90c2SFreddy Xin	  This driver should work with at least the following devices:
210e2ca90c2SFreddy Xin	    * ASIX AX88179
211e2ca90c2SFreddy Xin	    * ASIX AX88178A
212e2ca90c2SFreddy Xin	    * Sitcomm LN-032
213e2ca90c2SFreddy Xin
214e2ca90c2SFreddy Xin	  This driver creates an interface named "ethX", where X depends on
215e2ca90c2SFreddy Xin	  what other networking devices you have in use.
216e2ca90c2SFreddy Xin
2175b2fc499SJeff Garzikconfig USB_NET_CDCETHER
2185b2fc499SJeff Garzik	tristate "CDC Ethernet support (smart devices such as cable modems)"
2195b2fc499SJeff Garzik	depends on USB_USBNET
2205b2fc499SJeff Garzik	default y
2215b2fc499SJeff Garzik	help
2225b2fc499SJeff Garzik	  This option supports devices conforming to the Communication Device
2235b2fc499SJeff Garzik	  Class (CDC) Ethernet Control Model, a specification that's easy to
2245b2fc499SJeff Garzik	  implement in device firmware.  The CDC specifications are available
2255b2fc499SJeff Garzik	  from <http://www.usb.org/>.
2265b2fc499SJeff Garzik
2275b2fc499SJeff Garzik	  CDC Ethernet is an implementation option for DOCSIS cable modems
2285b2fc499SJeff Garzik	  that support USB connectivity, used for non-Microsoft USB hosts.
2295b2fc499SJeff Garzik	  The Linux-USB CDC Ethernet Gadget driver is an open implementation.
2305b2fc499SJeff Garzik	  This driver should work with at least the following devices:
2315b2fc499SJeff Garzik
23268924920SJonas Sjöquist	    * Dell Wireless 5530 HSPA
2335b2fc499SJeff Garzik	    * Ericsson PipeRider (all variants)
23468924920SJonas Sjöquist	    * Ericsson Mobile Broadband Module (all variants)
2355b2fc499SJeff Garzik	    * Motorola (DM100 and SB4100)
2365b2fc499SJeff Garzik	    * Broadcom Cable Modem (reference design)
2373a19d56cSTorgny Johansson	    * Toshiba (PCX1100U and F3507g/F3607gw)
2385b2fc499SJeff Garzik	    * ...
2395b2fc499SJeff Garzik
2405b2fc499SJeff Garzik	  This driver creates an interface named "ethX", where X depends on
2415b2fc499SJeff Garzik	  what other networking devices you have in use.  However, if the
2425b2fc499SJeff Garzik	  IEEE 802 "local assignment" bit is set in the address, a "usbX"
2435b2fc499SJeff Garzik	  name is used instead.
2445b2fc499SJeff Garzik
2459f722c09SOmar Laazimaniconfig USB_NET_CDC_EEM
2469f722c09SOmar Laazimani	tristate "CDC EEM support"
2477d6bce7aSKees Cook	depends on USB_USBNET
2489f722c09SOmar Laazimani	help
2499f722c09SOmar Laazimani	  This option supports devices conforming to the Communication Device
2509f722c09SOmar Laazimani	  Class (CDC) Ethernet Emulation Model, a specification that's easy to
2519f722c09SOmar Laazimani	  implement in device firmware.  The CDC EEM specifications are available
2529f722c09SOmar Laazimani	  from <http://www.usb.org/>.
2539f722c09SOmar Laazimani
2549f722c09SOmar Laazimani	  This driver creates an interface named "ethX", where X depends on
2559f722c09SOmar Laazimani	  what other networking devices you have in use.  However, if the
2569f722c09SOmar Laazimani	  IEEE 802 "local assignment" bit is set in the address, a "usbX"
2579f722c09SOmar Laazimani	  name is used instead.
2589f722c09SOmar Laazimani
259900d495aSAlexey Orishkoconfig USB_NET_CDC_NCM
260900d495aSAlexey Orishko	tristate "CDC NCM support"
261900d495aSAlexey Orishko	depends on USB_USBNET
2625fd99b5dSYueHaibing	select USB_NET_CDCETHER
263900d495aSAlexey Orishko	default y
264900d495aSAlexey Orishko	help
265900d495aSAlexey Orishko	  This driver provides support for CDC NCM (Network Control Model
266900d495aSAlexey Orishko	  Device USB Class Specification). The CDC NCM specification is
267900d495aSAlexey Orishko	  available from <http://www.usb.org/>.
268900d495aSAlexey Orishko
269900d495aSAlexey Orishko	  Say "y" to link the driver statically, or "m" to build a
270900d495aSAlexey Orishko	  dynamically linked module.
271900d495aSAlexey Orishko
272900d495aSAlexey Orishko	  This driver should work with at least the following devices:
273900d495aSAlexey Orishko	    * ST-Ericsson M700 LTE FDD/TDD Mobile Broadband Modem (ref. design)
274900d495aSAlexey Orishko	    * ST-Ericsson M5730 HSPA+ Mobile Broadband Modem (reference design)
275900d495aSAlexey Orishko	    * ST-Ericsson M570 HSPA+ Mobile Broadband Modem (reference design)
276900d495aSAlexey Orishko	    * ST-Ericsson M343 HSPA Mobile Broadband Modem (reference design)
277900d495aSAlexey Orishko	    * Ericsson F5521gw Mobile Broadband Module
278900d495aSAlexey Orishko
27941c47d8cSEnrico Miosoconfig USB_NET_HUAWEI_CDC_NCM
28041c47d8cSEnrico Mioso	tristate "Huawei NCM embedded AT channel support"
28141c47d8cSEnrico Mioso	depends on USB_USBNET
28241c47d8cSEnrico Mioso	select USB_WDM
28341c47d8cSEnrico Mioso	select USB_NET_CDC_NCM
28441c47d8cSEnrico Mioso	help
28541c47d8cSEnrico Mioso		This driver supports huawei-style NCM devices, that use NCM as a
28641c47d8cSEnrico Mioso		transport for other protocols, usually an embedded AT channel.
28741c47d8cSEnrico Mioso		Good examples are:
28841c47d8cSEnrico Mioso		* Huawei E3131
28941c47d8cSEnrico Mioso		* Huawei E3251
29041c47d8cSEnrico Mioso
29141c47d8cSEnrico Mioso		To compile this driver as a module, choose M here: the module will be
29241c47d8cSEnrico Mioso		called huawei_cdc_ncm.ko.
29341c47d8cSEnrico Mioso
2949084ccf9SBjørn Morkconfig USB_NET_CDC_MBIM
2959084ccf9SBjørn Mork	tristate "CDC MBIM support"
2969084ccf9SBjørn Mork	depends on USB_USBNET
2979084ccf9SBjørn Mork	select USB_WDM
2989084ccf9SBjørn Mork	select USB_NET_CDC_NCM
2999084ccf9SBjørn Mork	help
3009084ccf9SBjørn Mork	  This driver provides support for CDC MBIM (Mobile Broadband
3019084ccf9SBjørn Mork	  Interface Model) devices. The CDC MBIM specification is
3029084ccf9SBjørn Mork	  available from <http://www.usb.org/>.
3039084ccf9SBjørn Mork
3049084ccf9SBjørn Mork	  MBIM devices require configuration using the management
3059084ccf9SBjørn Mork	  protocol defined by the MBIM specification.  This driver
3069084ccf9SBjørn Mork	  provides unfiltered access to the MBIM control channel
3079084ccf9SBjørn Mork	  through the associated /dev/cdc-wdmx character device.
3089084ccf9SBjørn Mork
3099084ccf9SBjørn Mork	  To compile this driver as a module, choose M here: the
3109084ccf9SBjørn Mork	  module will be called cdc_mbim.
3119084ccf9SBjørn Mork
3125b2fc499SJeff Garzikconfig USB_NET_DM9601
313cabd0e3aSPeter Korsgaard	tristate "Davicom DM96xx based USB 10/100 ethernet devices"
3145b2fc499SJeff Garzik	depends on USB_USBNET
3155b2fc499SJeff Garzik	select CRC32
3165b2fc499SJeff Garzik	help
317cabd0e3aSPeter Korsgaard	  This option adds support for Davicom DM9601/DM9620/DM9621A
318cabd0e3aSPeter Korsgaard	  based USB 10/100 Ethernet adapters.
3195b2fc499SJeff Garzik
320c9b37458SLiu Junliangconfig USB_NET_SR9700
321c9b37458SLiu Junliang	tristate "CoreChip-sz SR9700 based USB 1.1 10/100 ethernet devices"
322c9b37458SLiu Junliang	depends on USB_USBNET
323c9b37458SLiu Junliang	select CRC32
324c9b37458SLiu Junliang	help
325c9b37458SLiu Junliang	  This option adds support for CoreChip-sz SR9700 based USB 1.1
326c9b37458SLiu Junliang	  10/100 Ethernet adapters.
327c9b37458SLiu Junliang
32819a38d8eSLiu Junliangconfig USB_NET_SR9800
32919a38d8eSLiu Junliang	tristate "CoreChip-sz SR9800 based USB 2.0 10/100 ethernet devices"
33019a38d8eSLiu Junliang	depends on USB_USBNET
33119a38d8eSLiu Junliang	select CRC32
332a7f7f624SMasahiro Yamada	help
33319a38d8eSLiu Junliang	  Say Y if you want to use one of the following 100Mbps USB Ethernet
33419a38d8eSLiu Junliang	  device based on the CoreChip-sz SR9800 chip.
33519a38d8eSLiu Junliang
33619a38d8eSLiu Junliang	  This driver makes the adapter appear as a normal Ethernet interface,
33719a38d8eSLiu Junliang	  typically on eth0, if it is the only ethernet device, or perhaps on
33819a38d8eSLiu Junliang	  eth1, if you have a PCI or ISA ethernet card installed.
33919a38d8eSLiu Junliang
34019a38d8eSLiu Junliang	  To compile this driver as a module, choose M here: the
34119a38d8eSLiu Junliang	  module will be called sr9800.
34219a38d8eSLiu Junliang
343d0cad871SSteve Glendinningconfig USB_NET_SMSC75XX
344d0cad871SSteve Glendinning	tristate "SMSC LAN75XX based USB 2.0 gigabit ethernet devices"
345d0cad871SSteve Glendinning	depends on USB_USBNET
346899a391bSSteve Glendinning	select BITREVERSE
347899a391bSSteve Glendinning	select CRC16
348d0cad871SSteve Glendinning	select CRC32
349d0cad871SSteve Glendinning	help
3501e731cb9SRobert de Vries	  This option adds support for SMSC LAN75XX based USB 2.0
351d0cad871SSteve Glendinning	  Gigabit Ethernet adapters.
352d0cad871SSteve Glendinning
3532f7ca802SSteve Glendinningconfig USB_NET_SMSC95XX
3542f7ca802SSteve Glendinning	tristate "SMSC LAN95XX based USB 2.0 10/100 ethernet devices"
3552f7ca802SSteve Glendinning	depends on USB_USBNET
35605b35e7eSAndre Edich	select PHYLIB
35705b35e7eSAndre Edich	select SMSC_PHY
358bbd9f9eeSSteve Glendinning	select BITREVERSE
359bbd9f9eeSSteve Glendinning	select CRC16
3602f7ca802SSteve Glendinning	select CRC32
3611710b52dSOleksij Rempel	imply NET_SELFTESTS
3622f7ca802SSteve Glendinning	help
3632f7ca802SSteve Glendinning	  This option adds support for SMSC LAN95XX based USB 2.0
3642f7ca802SSteve Glendinning	  10/100 Ethernet adapters.
3652f7ca802SSteve Glendinning
3665b2fc499SJeff Garzikconfig USB_NET_GL620A
3675b2fc499SJeff Garzik	tristate "GeneSys GL620USB-A based cables"
3685b2fc499SJeff Garzik	depends on USB_USBNET
3695b2fc499SJeff Garzik	help
3705b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable,
3715b2fc499SJeff Garzik	  or PC2PC motherboard, with this chip.
3725b2fc499SJeff Garzik
3735b2fc499SJeff Garzik	  Note that the half-duplex "GL620USB" is not supported.
3745b2fc499SJeff Garzik
3755b2fc499SJeff Garzikconfig USB_NET_NET1080
3765b2fc499SJeff Garzik	tristate "NetChip 1080 based cables (Laplink, ...)"
3775b2fc499SJeff Garzik	default y
3785b2fc499SJeff Garzik	depends on USB_USBNET
3795b2fc499SJeff Garzik	help
3805b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable based
3815b2fc499SJeff Garzik	  on this design:  one NetChip 1080 chip and supporting logic,
3825b2fc499SJeff Garzik	  optionally with LEDs that indicate traffic
3835b2fc499SJeff Garzik
3845b2fc499SJeff Garzikconfig USB_NET_PLUSB
3856f2aee0cSRoman Spychała	tristate "Prolific PL-2301/2302/25A1/27A1 based cables"
3865b2fc499SJeff Garzik	# if the handshake/init/reset problems, from original 'plusb',
3875b2fc499SJeff Garzik	# are ever resolved ... then remove "experimental"
3887d6bce7aSKees Cook	depends on USB_USBNET
3895b2fc499SJeff Garzik	help
3905b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable
3915b2fc499SJeff Garzik	  with one of these chips.
3925b2fc499SJeff Garzik
3935b2fc499SJeff Garzikconfig USB_NET_MCS7830
3945b2fc499SJeff Garzik	tristate "MosChip MCS7830 based Ethernet adapters"
3955b2fc499SJeff Garzik	depends on USB_USBNET
3965b2fc499SJeff Garzik	help
3975b2fc499SJeff Garzik	  Choose this option if you're using a 10/100 Ethernet USB2
3985b2fc499SJeff Garzik	  adapter based on the MosChip 7830 controller. This includes
3995b2fc499SJeff Garzik	  adapters marketed under the DeLOCK brand.
4005b2fc499SJeff Garzik
4015b2fc499SJeff Garzikconfig USB_NET_RNDIS_HOST
4027d6bce7aSKees Cook	tristate "Host for RNDIS and ActiveSync devices"
4037d6bce7aSKees Cook	depends on USB_USBNET
4045b2fc499SJeff Garzik	select USB_NET_CDCETHER
4055b2fc499SJeff Garzik	help
4065b2fc499SJeff Garzik	  This option enables hosting "Remote NDIS" USB networking links,
4075b2fc499SJeff Garzik	  as encouraged by Microsoft (instead of CDC Ethernet!) for use in
4085b2fc499SJeff Garzik	  various devices that may only support this protocol.  A variant
4095b2fc499SJeff Garzik	  of this protocol (with even less public documentation) seems to
4105b2fc499SJeff Garzik	  be at the root of Microsoft's "ActiveSync" too.
4115b2fc499SJeff Garzik
4125b2fc499SJeff Garzik	  Avoid using this protocol unless you have no better options.
4135b2fc499SJeff Garzik	  The protocol specification is incomplete, and is controlled by
4145b2fc499SJeff Garzik	  (and for) Microsoft; it isn't an "Open" ecosystem or market.
4155b2fc499SJeff Garzik
416f3bb2376SArnd Bergmannconfig USB_NET_CDC_SUBSET_ENABLE
417f3bb2376SArnd Bergmann	tristate
418f3bb2376SArnd Bergmann	depends on USB_NET_CDC_SUBSET
419f3bb2376SArnd Bergmann
4205b2fc499SJeff Garzikconfig USB_NET_CDC_SUBSET
4215b2fc499SJeff Garzik	tristate "Simple USB Network Links (CDC Ethernet subset)"
4225b2fc499SJeff Garzik	depends on USB_USBNET
4235b2fc499SJeff Garzik	default y
4245b2fc499SJeff Garzik	help
4255b2fc499SJeff Garzik	  This driver module supports USB network devices that can work
4265b2fc499SJeff Garzik	  without any device-specific information.  Select it if you have
4275b2fc499SJeff Garzik	  one of these drivers.
4285b2fc499SJeff Garzik
4295b2fc499SJeff Garzik	  Note that while many USB host-to-host cables can work in this mode,
4305b2fc499SJeff Garzik	  that may mean not being able to talk to Win32 systems or more
4315b2fc499SJeff Garzik	  commonly not being able to handle certain events (like replugging
4325b2fc499SJeff Garzik	  the host on the other end) very well.  Also, these devices will
4335b2fc499SJeff Garzik	  not generally have permanently assigned Ethernet addresses.
4345b2fc499SJeff Garzik
4355b2fc499SJeff Garzikconfig USB_ALI_M5632
4366341e62bSChristoph Jaeger	bool "ALi M5632 based 'USB 2.0 Data Link' cables"
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, which supports USB 2.0 high speed.
4425b2fc499SJeff Garzik
4435b2fc499SJeff Garzikconfig USB_AN2720
4446341e62bSChristoph Jaeger	bool "AnchorChips 2720 based cables (Xircom PGUNET, ...)"
4455b2fc499SJeff Garzik	depends on USB_NET_CDC_SUBSET
446f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4475b2fc499SJeff Garzik	help
4485b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable
4495b2fc499SJeff Garzik	  based on this design.  Note that AnchorChips is now a
4505b2fc499SJeff Garzik	  Cypress brand.
4515b2fc499SJeff Garzik
4525b2fc499SJeff Garzikconfig USB_BELKIN
4536341e62bSChristoph Jaeger	bool "eTEK based host-to-host cables (Advance, Belkin, ...)"
4545b2fc499SJeff Garzik	depends on USB_NET_CDC_SUBSET
455f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4565b2fc499SJeff Garzik	default y
4575b2fc499SJeff Garzik	help
4585b2fc499SJeff Garzik	  Choose this option if you're using a host-to-host cable
4595b2fc499SJeff Garzik	  based on this design:  two NetChip 2890 chips and an Atmel
4605b2fc499SJeff Garzik	  microcontroller, with LEDs that indicate traffic.
4615b2fc499SJeff Garzik
4625b2fc499SJeff Garzikconfig USB_ARMLINUX
4636341e62bSChristoph Jaeger	bool "Embedded ARM Linux links (iPaq, ...)"
4645b2fc499SJeff Garzik	depends on USB_NET_CDC_SUBSET
465f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4665b2fc499SJeff Garzik	default y
4675b2fc499SJeff Garzik	help
4685b2fc499SJeff Garzik	  Choose this option to support the "usb-eth" networking driver
4695b2fc499SJeff Garzik	  used by most of the ARM Linux community with device controllers
4705b2fc499SJeff Garzik	  such as the SA-11x0 and PXA-25x UDCs, or the tftp capabilities
4715b2fc499SJeff Garzik	  in some PXA versions of the "blob" boot loader.
4725b2fc499SJeff Garzik
4735b2fc499SJeff Garzik	  Linux-based "Gumstix" PXA-25x based systems use this protocol
4745b2fc499SJeff Garzik	  to talk with other Linux systems.
4755b2fc499SJeff Garzik
4765b2fc499SJeff Garzik	  Although the ROMs shipped with Sharp Zaurus products use a
4775b2fc499SJeff Garzik	  different link level framing protocol, you can have them use
4785b2fc499SJeff Garzik	  this simpler protocol by installing a different kernel.
4795b2fc499SJeff Garzik
4805b2fc499SJeff Garzikconfig USB_EPSON2888
4816341e62bSChristoph Jaeger	bool "Epson 2888 based firmware (DEVELOPMENT)"
4825b2fc499SJeff Garzik	depends on USB_NET_CDC_SUBSET
483f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4845b2fc499SJeff Garzik	help
4855b2fc499SJeff Garzik	  Choose this option to support the usb networking links used
4865b2fc499SJeff Garzik	  by some sample firmware from Epson.
4875b2fc499SJeff Garzik
4885b2fc499SJeff Garzikconfig USB_KC2190
4896341e62bSChristoph Jaeger	bool "KT Technology KC2190 based cables (InstaNet)"
4907d6bce7aSKees Cook	depends on USB_NET_CDC_SUBSET
491f3bb2376SArnd Bergmann	select USB_NET_CDC_SUBSET_ENABLE
4925b2fc499SJeff Garzik	help
493c0811987SSam Ravnborg	  Choose this option if you're using a host-to-host cable
494c0811987SSam Ravnborg	  with one of these chips.
4955b2fc499SJeff Garzik
4965b2fc499SJeff Garzikconfig USB_NET_ZAURUS
4975b2fc499SJeff Garzik	tristate "Sharp Zaurus (stock ROMs) and compatible"
4985b2fc499SJeff Garzik	depends on USB_USBNET
4995b2fc499SJeff Garzik	select USB_NET_CDCETHER
5005b2fc499SJeff Garzik	select CRC32
5015b2fc499SJeff Garzik	default y
5025b2fc499SJeff Garzik	help
5035b2fc499SJeff Garzik	  Choose this option to support the usb networking links used by
5045b2fc499SJeff Garzik	  Zaurus models like the SL-5000D, SL-5500, SL-5600, A-300, B-500.
5055b2fc499SJeff Garzik	  This also supports some related device firmware, as used in some
5065b2fc499SJeff Garzik	  PDAs from Olympus and some cell phones from Motorola.
5075b2fc499SJeff Garzik
5085b2fc499SJeff Garzik	  If you install an alternate image, such as the Linux 2.6 based
5095b2fc499SJeff Garzik	  versions of OpenZaurus, you should no longer need to support this
5105b2fc499SJeff Garzik	  protocol.  Only the "eth-fd" or "net_fd" drivers in these devices
5115b2fc499SJeff Garzik	  really need this non-conformant variant of CDC Ethernet (or in
5125b2fc499SJeff Garzik	  some cases CDC MDLM) protocol, not "g_ether".
5135b2fc499SJeff Garzik
514cc28a20eSOndrej Zaryconfig USB_NET_CX82310_ETH
515cc28a20eSOndrej Zary	tristate "Conexant CX82310 USB ethernet port"
516cc28a20eSOndrej Zary	depends on USB_USBNET
517cc28a20eSOndrej Zary	help
518cc28a20eSOndrej Zary	  Choose this option if you're using a Conexant CX82310-based ADSL
519cc28a20eSOndrej Zary	  router with USB ethernet port. This driver is for routers only,
520cc28a20eSOndrej Zary	  it will not work with ADSL modems (use cxacru driver instead).
521cc28a20eSOndrej Zary
522d4026123SMarius B. Kotsbakconfig USB_NET_KALMIA
523d4026123SMarius B. Kotsbak	tristate "Samsung Kalmia based LTE USB modem"
524d4026123SMarius B. Kotsbak	depends on USB_USBNET
525d4026123SMarius B. Kotsbak	help
526d4026123SMarius B. Kotsbak	  Choose this option if you have a Samsung Kalmia based USB modem
527d4026123SMarius B. Kotsbak	  as Samsung GT-B3730.
528d4026123SMarius B. Kotsbak
529d4026123SMarius B. Kotsbak	  To compile this driver as a module, choose M here: the
530d4026123SMarius B. Kotsbak	  module will be called kalmia.
531d4026123SMarius B. Kotsbak
5329b28ecd6SBjørn Morkconfig USB_NET_QMI_WWAN
5339b28ecd6SBjørn Mork	tristate "QMI WWAN driver for Qualcomm MSM based 3G and LTE modems"
5349b28ecd6SBjørn Mork	depends on USB_USBNET
53574cba4a8SBjørn Mork	select USB_WDM
5369b28ecd6SBjørn Mork	help
5379b28ecd6SBjørn Mork	  Support WWAN LTE/3G devices based on Qualcomm Mobile Data Modem
5389b28ecd6SBjørn Mork	  (MDM) chipsets.  Examples of such devices are
5399b28ecd6SBjørn Mork	    * Huawei E392/E398
5409b28ecd6SBjørn Mork
5419b28ecd6SBjørn Mork	  This driver will only drive the ethernet part of the chips.
5429b28ecd6SBjørn Mork	  The devices require additional configuration to be usable.
5439b28ecd6SBjørn Mork	  Multiple management interfaces with linux drivers are
5449b28ecd6SBjørn Mork	  available:
5459b28ecd6SBjørn Mork
5469b28ecd6SBjørn Mork	    * option: AT commands on /dev/ttyUSBx
5479b28ecd6SBjørn Mork	    * cdc-wdm: Qualcomm MSM Interface (QMI) protocol on /dev/cdc-wdmx
5489b28ecd6SBjørn Mork
5499b28ecd6SBjørn Mork	  A modem manager with support for QMI is recommended.
5509b28ecd6SBjørn Mork
5519b28ecd6SBjørn Mork	  To compile this driver as a module, choose M here: the
5529b28ecd6SBjørn Mork	  module will be called qmi_wwan.
5539b28ecd6SBjørn Mork
55485a73b33SDavid Brownellconfig USB_HSO
55585a73b33SDavid Brownell	tristate "Option USB High Speed Mobile Devices"
5564f73bc4dSJoe Millenbach	depends on USB && RFKILL && TTY
55785a73b33SDavid Brownell	default n
55885a73b33SDavid Brownell	help
55985a73b33SDavid Brownell	  Choose this option if you have an Option HSDPA/HSUPA card.
56085a73b33SDavid Brownell	  These cards support downlink speeds of 7.2Mbps or greater.
56185a73b33SDavid Brownell
56285a73b33SDavid Brownell	  To compile this driver as a module, choose M here: the
56385a73b33SDavid Brownell	  module will be called hso.
5645b2fc499SJeff Garzik
5654510d7cbSPeter Holikconfig USB_NET_INT51X1
5664510d7cbSPeter Holik	tristate "Intellon PLC based usb adapter"
5674510d7cbSPeter Holik	depends on USB_USBNET
5684510d7cbSPeter Holik	help
5694510d7cbSPeter Holik	  Choose this option if you're using a 14Mb USB-based PLC
5704510d7cbSPeter Holik	  (Powerline Communications) solution with an Intellon
5714510d7cbSPeter Holik	  INT51x1/INT5200 chip, like the "devolo dLan duo".
5724510d7cbSPeter Holik
57387cf6560SRémi Denis-Courmontconfig USB_CDC_PHONET
57487cf6560SRémi Denis-Courmont	tristate "CDC Phonet support"
57537d2dbcdSRandy Dunlap	depends on PHONET && USB_USBNET
57687cf6560SRémi Denis-Courmont	help
57787cf6560SRémi Denis-Courmont	  Choose this option to support the Phonet interface to a Nokia
57887cf6560SRémi Denis-Courmont	  cellular modem, as found on most Nokia handsets with the
57987cf6560SRémi Denis-Courmont	  "PC suite" USB profile.
58087cf6560SRémi Denis-Courmont
581a19259c3SDiego Giagioconfig USB_IPHETH
582a19259c3SDiego Giagio	tristate "Apple iPhone USB Ethernet driver"
583a19259c3SDiego Giagio	default n
584a7f7f624SMasahiro Yamada	help
585a19259c3SDiego Giagio	  Module used to share Internet connection (tethering) from your
586*0c6e9d32SFoster Snowhill	  iPhone to your system.
587*0c6e9d32SFoster Snowhill	  Note that you need a corresponding userspace library/program
588*0c6e9d32SFoster Snowhill	  to pair your device with your system, for example usbmuxd
589*0c6e9d32SFoster Snowhill	  <https://github.com/libimobiledevice/usbmuxd>.
590a19259c3SDiego Giagio
591eb4fd8cdSElina Pashevaconfig USB_SIERRA_NET
592eb4fd8cdSElina Pasheva	tristate "USB-to-WWAN Driver for Sierra Wireless modems"
593eb4fd8cdSElina Pasheva	depends on USB_USBNET
594eb4fd8cdSElina Pasheva	help
595eb4fd8cdSElina Pasheva	  Choose this option if you have a Sierra Wireless USB-to-WWAN device.
596eb4fd8cdSElina Pasheva
597eb4fd8cdSElina Pasheva	  To compile this driver as a module, choose M here: the
598eb4fd8cdSElina Pasheva	  module will be called sierra_net.
599eb4fd8cdSElina Pasheva
6007a635ea9SAndrzej Zaborowskiconfig USB_VL600
6017a635ea9SAndrzej Zaborowski	tristate "LG VL600 modem dongle"
6024f73bc4dSJoe Millenbach	depends on USB_NET_CDCETHER && TTY
6037a635ea9SAndrzej Zaborowski	select USB_ACM
6047a635ea9SAndrzej Zaborowski	help
6057a635ea9SAndrzej Zaborowski	  Select this if you want to use an LG Electronics 4G/LTE usb modem
6067a635ea9SAndrzej Zaborowski	  called VL600.  This driver only handles the ethernet
6077a635ea9SAndrzej Zaborowski	  interface exposed by the modem firmware.  To establish a connection
6087a635ea9SAndrzej Zaborowski	  you will first need a userspace program that sends the right
6097a635ea9SAndrzej Zaborowski	  command to the modem through its CDC ACM port, and most
6107a635ea9SAndrzej Zaborowski	  likely also a DHCP client.  See this thread about using the
6117a635ea9SAndrzej Zaborowski	  4G modem from Verizon:
6127a635ea9SAndrzej Zaborowski
6137a635ea9SAndrzej Zaborowski	  http://ubuntuforums.org/showpost.php?p=10589647&postcount=17
6147a635ea9SAndrzej Zaborowski
6154a476bd6SMatthew Garrettconfig USB_NET_CH9200
6164a476bd6SMatthew Garrett	tristate "QingHeng CH9200 USB ethernet support"
6174a476bd6SMatthew Garrett	depends on USB_USBNET
6184a476bd6SMatthew Garrett	select MII
6194a476bd6SMatthew Garrett	help
6204a476bd6SMatthew Garrett	  Choose this option if you have a USB ethernet adapter with a QinHeng
6214a476bd6SMatthew Garrett	  CH9200 chipset.
6224a476bd6SMatthew Garrett
6234a476bd6SMatthew Garrett	  To compile this driver as a module, choose M here: the
6244a476bd6SMatthew Garrett	  module will be called ch9200.
6254a476bd6SMatthew Garrett
62617364b80SDmitry Bezrukovconfig USB_NET_AQC111
62717364b80SDmitry Bezrukov	tristate "Aquantia AQtion USB to 5/2.5GbE Controllers support"
62817364b80SDmitry Bezrukov	depends on USB_USBNET
62917364b80SDmitry Bezrukov	select CRC32
63017364b80SDmitry Bezrukov	help
63117364b80SDmitry Bezrukov	  This option adds support for Aquantia AQtion USB
63217364b80SDmitry Bezrukov	  Ethernet adapters based on AQC111U/AQC112 chips.
63317364b80SDmitry Bezrukov
63417364b80SDmitry Bezrukov	  This driver should work with at least the following devices:
63517364b80SDmitry Bezrukov	  * Aquantia AQtion USB to 5GbE
63617364b80SDmitry Bezrukov
637657bc1d1SHayes Wangconfig USB_RTL8153_ECM
638f56530dcSMaciej Żenczykowski	tristate
639657bc1d1SHayes Wang	depends on USB_NET_CDCETHER && (USB_RTL8152 || USB_RTL8152=n)
640f56530dcSMaciej Żenczykowski	default y
641657bc1d1SHayes Wang	help
642657bc1d1SHayes Wang	  This option supports ECM mode for RTL8153 ethernet adapter, when
643657bc1d1SHayes Wang	  CONFIG_USB_RTL8152 is not set, or the RTL8153 device is not
644657bc1d1SHayes Wang	  supported by r8152 driver.
645657bc1d1SHayes Wang
6461bb5a356SFrancois Romieuendif # USB_NET_DRIVERS
647