Linux Driver 1.3 Now Available
Download the Linux driver 3.1 beta.
·
Supports 2.4 kernels
·
Supports ZR36057 based boards
·
Unified driver source for various 2.2.x and 2.4.x kernels
·
Improved SMP support
·
Big physical area API is not required to compile and use the
drive
Caveats
·
Using Video for Linux API (for video-in-a-window) will not work
reliably without applying big physical area patch. This issue will be addressed
in the stable release.
·
Driver provided in source form only. Binary packages will be
provided for stable release.
·
The older stock i2c interface will limit the number of supported
boards to 4. This can be changed by raising the hardcoded limit and recompiling
the videodev and i2c modules. This issue will be addressed in the stable
release.
Installation
The driver is provided in source form only and must
be compiled from source.
If you consider using Video for Linux API, we
recommend that you apply the big physical area patch to your kernel source and
recompile. Patches are available in the patches directory of the driver. Updated
patches can be downloaded from http://www.polyware.nl/~middelin/En/hob-v4l.html
and Optibase Site
.
If you plan to use more than 4 cards, you need to
patch kernel i2c headers and recompile videodev and i2c modules. Patches for
2.2.x and 2.4.x kernels are available in the patches directory of the driver as
i2c-22.patch and i2c-24.patch.
Open the driver source in some directory and compile
the driver using one of the two provided makefiles (Makefile or Makefile.sa).
This is a preferable way to compile the driver.
Simply run `make? in the driver
directory. To install the module and devices, run `make install?.
This method uses standard kernel driver compilation
scheme to automatically parse all the required configuration parameters from the
kernel source. However, in order for this scheme to work, the kernel source must
have the configuration information of the compiled kernel. Most distributions
ship kernel sources that do not contain configuration information. If your
kernel source tree does not contain the configuration information, take the
following three steps to load it:
· Locate the
configuration file. For RedHat packaged kernels, you need to look in the /usr/src/linux/configs
directory. For example, if you have 2.2.16 kernel that has been configured for
SMP and i686 support, choose kernel-2.2.16-i686-smp.config
file.
· Run `make menuconfig? in
/usr/src/linux
directory. Load the located configuration file and exit, saving the
configuration.
· Run ?make dep clean? in
/usr/src/linux
directory.
This allows compiling the driver without loading the
configuration to the kernel source. This method is not guaranteed to always
work. You need to edit the Makefile.sa file,
setting the following variables to their correct values:
· KERNEL ?
location of your kernel source tree. Default choice of /usr/src/linux is fine
for most users.
· LD ?
linker definition. Do not change for PC architecture.
· CPU ?
Define CPU for which your kernel was compiled. Valid choices are 386, 486, 586,
or 686.
·
modversions ? defines whether module versioning is enabled
in your compiled kernel. Default choice is ?y? and fine for most
distributions.
· smp ?
define to ?y? if you kernel was compiled for SMP (multi-processor support).
Otherwise, define to ?n?.
· NEW_I2C ?
set to ?y? to tell the build process that your kernel source uses the new i2c
code despite it is a 2.2 kernel. Default setting ?n? is fine for most users. If
you have 2.2.19 kernel from RedHat, set to ?y?.
· EXTRATAG ?
allows to append an extra tag for module install path, if your
/usr/src/linux/Makefile does not set EXTRAVERSION properly. Most users do not
set this. For kernels with SMP support from RedHat, define this to ?smp?. This
variable is relevant only if you will run `make ?f Makefile.sa
install?.
To compile the driver, run `make ?f Makefile.sa?
in the driver directory. To install the module and devices, run `make ?f Makefile.sa
install?.
|