How do I use it?
================
Well, first you need to compile the driver (see below), then you need to make
sure that the v4l infrastructure is set up and then load the driver. After
you've done that, any v4l enabled application, such as gqcam, xawtv,
gnomemeeting, camE etc should work.
Supported kernel versions
=========================
The driver should compile and run successfully against most stable versions of
the official Linux kernel (from <http://www.kernel.org/> ), within the range
2.2.18 to 2.4.20 inclusive. Unstable version 2.3 is broken, and unsupported.
Specifically, it has been tested against:
2.2.18 - 2.2.24 Compiles ok, with some (harmless) warnings.
2.3.0 USB support broken/missing, so doesn't compile.
2.3.51 Doesn't compile (incomplete types - USB broken?)
2.4.0 Compiles ok, with some (harmless) warnings.
2.4.18 - 2.4.19 Compiles ok, with no warnings.
2.4.20 Compiles ok, with no warnings. Loads successfully.
2.4.21pre5 Compiles ok, with no warnings.
Compiling it
============
The driver module can be built without modifying your kernel source tree.
Before trying to compile the driver, ensure that you've configured your
kernel, and updated the dependencies:
'make [config|menuconfig|xconfig]; make dep'.
Make sure, when compiling the driver, you use the same version of compiler as
was used to compile your kernel. Not doing so can create incompatible binaries.
If you wish to compile the driver against a kernel other than the currently
installed one, build the driver with
'make KINCLUDE=/usr/src/linux-<version>/include', or similar.
Please note, the default location for the kernel, according to the driver, is
/usr/src/linux.
To build just the driver, simply use 'make'.
Compiling against the linux kernel 2.4 source tree, there should be no
warnings at all.
If you compile against the linux kernel 2.2 source tree, you may see:
{standard input}: Assembler messages:
{standard input}: Warning: ignoring changed section attributes for .modinfo
This is OK. It's caused by a small bug in the 2.2 series kernel, whereby it
outputs two modinfo sections. It doesn't affect the running of the module,
however.
This version of the driver offers an automatic installation facility.
Use 'make install' to have the driver installed into your kernel modules
directory, which is assumed to be /lib/modules/<version>/kernel/drivers/usb.
<version> is picked up from the currently running kernel, so if that's not
the right place, then don't use 'make install'!
Making sure the usb and v4l stuff is there
==========================================
For the module to function correctly, the video for linux subsystem needs to
be loaded. As root, check the output of lsmod for videodev. If its not there,
do: modprobe videodev.
Also, you need to make sure that the usbcore module is loaded (or compiled
into your kernel) and similarly the module appropriate for your usb controller
(uhci or ohci).