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