SeaIO for Linux
Rev= $Name: Release-2_0_8 $
$Date: 2007/11/14 21:39:22 $

-------------------------------------------------------------------------------
Install
-------------------------------------------------------------------------------

This suite of software has been tested on Debian GNU/Linux; if you intend to 
compile it on other platforms, please check the Makefile parameters described
below to ensure our software is installed to the correct locations on your 
system.

In order to install the SeaIO suite, you need GNU Make (available with most
distributions) "http://www.gnu.org/software/make/".  You will also need the
GCC and G++ compilers.  The version is dependent on your kernel version.  The
README included with your kernel source should recommend a version known to
compile.  The SeaIO suite was developed with GCC-2.95 on the 2.4.X kernel series
and GCC-3.33 on the 2.6.X kernel series.

You need to have compiled kernel source in /usr/src/linux, or point the KDIR
variable in the Makefile in the seaio package root directory to the location of
your kernel source, for the module to compile properly.  The process varies from
one distribution to another and, you should consult your distribution's 
particular documentation.  All kernel source obtained from http://kernel.org 
contains a README file detailing the compilation process.

To install everything:  simply "make install" as root from the directory where
you untarred seaio.tar.gz.  

Once the kernel module is installed, running "seaio-load" will create the
appropriate nodes in /dev (dio0, dio1, etc ...)  Note that you will have to 
rerun the "seaio-load" script each time you reboot or you may add the 
appropriate commands to your startup scripts.  You will have to edit 
/etc/seaio.conf to make seaio-load work properly in conjunction with ISA cards 
(PCI cards will automatically configure).

   Optional make commands:
   -----------------------
	
	"make" or "make subdirs":  this option will build all binaries, but
		will not copy them to the locations described below.

	"make objs":  this option is similar to "make subdirs", but instead of
		building executables, only objects will be created.

	"make clean":  this option removes all the build/executable files in
		the working SeaIo directory.  Installed files remain on
		your system.

	"make uninstall":  this option removes files that were previously
		Installed to the locations described below.

	"make cleaninstall":  removes any previous build files then preforms
		a fresh install.  Everything is built from source again.

	"make purge":  removes installed files and build files in one command.
		(exactly like preforming "make uninstall" then "make clean")

   Optional make parameters: (you may either manually edit them in the Makefile 
      or pass them at run time like so: "make install KDIR=/<PATH_TO_SOURCE>/")
   -----------------------------------------------------------------------------

	KDIR=		/usr/src/linux
	  This is the path to configured kernel source.

	MODDIR=		/lib/modules/<YOUR_KERNEL_VERSION>/kernel/drivers/misc
	  This is the path that the kernel model is installed to. If you modify
	  this, you must also modify the "seaio-load" script's MODDIR variable.

	SUTILDIR= 	/usr/local/sbin
	  This is the location where the "seaio-load" and "seaio-unload" 
	  scripts are installed by default.  You must also modify the 
	  "seaio-load" script's SUTILDIR.

	UTILDIR=	/usr/local/bin
	  This is where any standard utilities go.  For now, just "SeaIOTst".

	LIBDIR=		/usr/local/lib
	  This is where the SeaIO API library is installed.  (libseaio.a)

	INCLUDDIR=	/usr/local/include
	  This is where the seaio headerfiles will be installed.

	CONFIGDIR=	/etc
	  seaio.conf will live here.  This file is consulted by "seaio-load",
	  so if you change this, modify the CONFIGDIR variable in "seaio-load".


-------------------------------------------------------------------------------
Driver Options
-------------------------------------------------------------------------------

For ISA cards, you will have to pass certain parameters to the kernel module at
load time.  If you choose to use the seaio-load and seaio-unload scripts, these
parameters may be placed in /etc/seaio.conf.

To configure a 3701(decimal) with base IO address of 380(hex):
  SEAIO_OPTIONS="cardtype=0x3701 io=0x380"

To configure multiple cards, input additional parameters separated by commas:
  SEAIO_OPTIONS="cardtype=0x3701,0x3820 io=0x380,0x300"

-------------------------------------------------------------------------------
Parameters REQUIRED for ISA cards are as follows:

cardtype=0x[model #]	this tells the module what model of ISA card you have
			NOTE:  cardtype is passed as hex even though the model
			number is in decimal!!  (a 3820 is passed as 0x3820)

io=0x[io port]		this tells the module what base IO address you want

-------------------------------------------------------------------------------
Parameters that may OPTIONALLY be specified for all cards (ISA or PCI)

major=[#]  	allows specification of device major number
		NOTE:  the driver will obtain a major number at insertion,
		there is no need to specify one unless you really want to
