Ethernet Gadget (with CDC Ethernet support)

modulename: g_ether.ko

configname: CONFIG_USB_ETH

USB Gadget Drivers
└─>Ethernet Gadget (with CDC Ethernet support)
In linux kernel since version 2.6.20 (release Date: 2007-02-04)  
This driver implements Ethernet style communication, in either
of two ways:

- The "Communication Device Class" (CDC) Ethernet Control Model.
That protocol is often avoided with pure Ethernet adapters, in
favor of simpler vendor-specific hardware, but is widely
supported by firmware for smart network devices.

- On hardware can't implement that protocol, a simple CDC subset
is used, placing fewer demands on USB.

RNDIS support is a third option, more demanding than that subset.

Within the USB device, this gadget driver exposes a network device
"usbX", where X depends on what other networking devices you have.
Treat it like a two-node Ethernet link: host, and gadget.

The Linux-USB host-side "usbnet" driver interoperates with this
driver, so that deep I/O queues can be supported. On 2.4 kernels,
use "CDCEther" instead, if you're using the CDC option. That CDC
mode should also interoperate with standard CDC Ethernet class
drivers on other host operating systems.

Say "y" to link the driver statically, or "m" to build a
dynamically linked module called "g_ether".

source code: