INTRODUCTION ------------ The Specialix I/O8+ linux device driver is distributed as a patch file against the Linux kernel sources. This document describes how you should go about applying those patches, to get the specialix device driver operational. This document does not describe how to configure the driver. After you have applied the patch, the file "Documentation/specialix.txt" will contain that information. COMPATIBILITY ------------- The current patch is against a 2.0 kernel. The patch for the 2.1 kernel will be available soon. It will be submitted for inclusion in the standard kernel. If you need to run 2.1 kernels for various reasons, it is probably best to wait until it appears in the standard distribution. Systems that are currently running 1.2.13 kernels are probably running older applications that are incompatible with the 2.x kernels. I would recommend that you upgrade the whole system to a current distribution that is based on a 2.x kernel. KERNEL SOURCES -------------- You should have a copy of the (2.0.x) kernel sources. Versions 2.0.27 through 2.0.30 have been tested. If you feel adventerous and want to try an earlier version, please go ahead and report wether you were successful or not. If you don't have the kernel sources on your system you can ftp the most recent from any of the following locations: ftp://ftp.cs.Helsinki.FI/pub/Software/Linux/Kernel/v2.0/linux-2.0.30.tar.gz ftp://ftp.kernel.org/pub/linux/kernel/v2.0/linux-2.0.30.tar.gz and many other places on the internet. If you see 2.0.31 in those locations, then this document is outdated, and you should use 2.0.31. Most likely version 2.0.31 will include the driver, so the rest of this file is not applicable for you. untar the linux sources into /usr/src/linux: cd /usr/src mv linux linux.old mkdir linux-2.0.30 ln -s linux-2.0.30 linux tar xvfz linux-2.0.30.tar.gz If you didn't have ANY linux sources, the "mv" command will complain "mv: linux: No such file or directory". You can safely ignore that error. Note that the "tar" command assumes that you put the linux kernel source distribution in /usr/src. If you put it somewhere else you will have to point tar there. PATCH ----- The patch can be obtained from ftp://ftp.specialix.co.uk/pub/linux/specialix-2.0.30-1.7.patch.gz or http://www.bitwizard.nl/specialix/specialix-2.0.30-1.7.patch.gz You then need to unzip and apply the patch. cd /usr/src gunzip -c specialix-2.0.30-1.7.patch.gz | patch -p0 Again note that you might have put the patch somewhere else, and you then would need to point the gunzip command where it is. If all went well, patch shouldn't have left any ".rej" files. cd /usr/src find linux -name \*.rej -ls If the "find" command gives any output besides the next command prompt, you have a problem. In that case you should either "know what you're doing" or you should get the most recent (2.0.30) kernel. COMPILING --------- The next step is to configure and compile your kernel. cd /usr/src/linux make xconfig If you are not running "X" you could use "make menuconfig" or just "make config". You should configure your kernel to your liking, and don't forget to tag the specialix I/O8+ driver in the "character devices" section for inclusion in the kernel or as a module, whichever you prefer. Then it is time to compile the kernel, for example with: make zImage This step should take 5 minutes (Pentium Pro, 64Mb RAM) to one hour ('386, 4Mb RAM) depending on your computer. Also I cannot know how you need to install your kernel. So maybe "make zlilo" is appropriate for you. Be careful when installing a new kernel. Wether you're experienced at doing this or not, it is quite possible that you've made a mistake in configuring your kernel, which makes that kernel unable to boot. You should therefore make sure that you have a way of falling back on the old kernel until you're sure that the new one works. CONFIGURATION AND DEVICE FILES ------------------------------ If your Specialix card(s) are not at the default/probed places or interrupts you will have to configure the driver. Read the Documentation/specialix.txt file for information about how to do that. Before you can actually use the new specialix driver, you need to generate the device files in your /dev directory. Read the Documentation/specialix.txt file for information on how to do that. WHEN IT DOESN'T WORK -------------------- When your new kernel fails to work, it is most likely a problem with the kernel configuration step or the installation of your new kernel. If you are convinced it is the Specialix driver, please verify that this is the case by compiling a "clean" kernel (skip the "patch" step in the description above), and verify that this DOES work. When the Specialix card fails to work, you should not forget to look in your system log file (/var/log/messages) for information that the driver may be giving you.