3.3.1. USB CDCEther
If you wish to use the USB
interface to accept data you will need USB subsystem support in your kernel as
discussed in Section 2.1, whether USB-ohci, USB-ehci, or whatever
USB host controller driver required by your system. For a more in-depth discussion
of this, I direct you to the Linux-USB project
site.
In addition the CDCEther (Communications Device Class Ethernet) protocol common to cable modems.
There are two ways your kernel may support a device driver: either by being statically (always on) compiled within that kernel or loaded (at boot time or later by a script or manually) as a module. You can find out if a driver is statically compiled in the kernel by checking the log of messages at boot up using dmesg | less on the command line. Experienced users may want to take an easier route and check the configuration file for the currently running kernel in /boot, usually of the form config-2.X.x, which is a text file that can be grepped. On the command line, try grep -e followed by CONFIG_USB_CDCETHER in 2.4.x kernels or CONFIG_USB_ETH in 2.6.x kernels followed by the filename; you should see a '=y or =m at the end of this string for static or modular status, respectively.
The output of dmesg | less should reveal something similar to the following
Mar 2 11:00:52 K7 kernel: CDCEther.c:
0.98.6 7 Jan 2002 Brad Hards and another
Mar 2 11:00:52 K7 kernel: usb.c: registered new driver CDCEther |
in the case of a statically compiled driver or a module loaded at boot.
If you don't see it, to find out if your kernel has already loaded the CDCEther (Communications Device Class Ethernet) driver as a module, on
the command line issue lsmod as root. You should see the module CDCEther listed for 2.4.x kernels, or alternatively usbnet for 2.6.x kernels.
If you don't see it listed with lsmod try loading the module directly as root;
for kernel 2.4.x this would be of the form
whereas for 2.6.x the command would be
If all goes well you should see something like the following at the end of your system log
files (/var/log/messages or /var/log/syslog, you may need to be root to view these)
or at the end of dmesg | less from the command line:
Mar 2 11:00:52 K7 kernel: CDCEther.c:
0.98.6 7 Jan 2002 Brad Hards and another
Mar 2 11:00:52 K7 kernel: usb.c: registered new driver CDCEther |
If all goes well you should see something like the following in your system log
files or at the end of dmesg:
Mar 2 11:00:52 K7 kernel: CDCEther.c:
0.98.6 7 Jan 2002 Brad Hards and another
Mar 2 11:00:52 K7 kernel: usb.c: registered new driver CDCEther |
If you are unsuccessful with any of the above, and are determined to
use the USB conduit of this device, you will need to recompile your kernel to support
it. You will need the 2.4.3 kernel or later. For detailed instructions on recompiling
your kernel, I direct you to the
Kernel-HOWTO. The options required to get USB interface support working on this
device have been addressed in Section 2.1.