slicoss-1.1.3-README.txt
last update 08/19/02
readme file for the Alacritech Open Source driver for it's
Server and Storage Accellerators (of course, since this is just a
dumb NIC driver you ain't gonna get the accelerator part. For that you
have to go to Alacritech)
Check the website http://slicoss.sourceforge.net for the most recent version
of this driver
Contents:
=========
slicoss-1.1.3-README.txt This file
slicoss-1.1.3_ref_.patch A kernel patch (Reference)
slicoss-1.1.3_RH72.patch A kernel patch (RedHAt 7.2)
slicoss-1.1.3.tgz The driver source (in gzip'd tar format)
slicoss-1.1.3.zip The driver source (in zip format)
APPLICABILITY:
==============
These instructions have only been tested with RedHat distibutions. There
are probably additional patches that are needed for non RedHat environments,
but we aint got around to that yet.
CONVENTIONS:
============
All examples that follow will be for a default RedHat 7.2 distibution. It is
assumbed that you have save all files listed in the CONTENTS section to
/var/tmp/slicoss
INSTALLATION:
=============
1) If you aren't brave, back up your source distribution.
[root@redwave usr]# cd /usr/src
[root@redwave src]# ls -l
total 8
lrwxrwxrwx 1 root root 14 Aug 18 06:24 linux-2.4 -> linux-2.4.7-10
drwxr-xr-x 16 root root 4096 Aug 18 06:24 linux-2.4.7-10
drwxr-xr-x 7 root root 4096 Aug 18 06:24 redhat
[root@redwave src]# cp -R linux-2.4.7-10 linux-2.4.7-10.slicoss
2) I do the following just cause I hate typing kernel versions.
[root@redwave src]# ln -s linux-2.4.7-10 linux
[root@redwave src]# ln -s linux-2.4.7-10.slicoss linux.slicoss
3) Unzip the driver file into $SRCROOT/drivers/net
[root@redwave src]# unzip /var/tmp/slicoss/slicoss-1.1.3.zip -d /usr/src/linux.slicoss/drivers/net
Archive: /var/tmp/slicoss/slicoss-1.1.3.zip
creating: /usr/src/linux.slicoss/drivers/net/slicoss/
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/4portdownload.h
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/gbrcvucode.h
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/Makefile
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/gbdownload.h
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/slic.h
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/slic_os.h
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/slicbuild.h
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/slicdbg.h
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/slichw.h
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/slicinc.h
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/slicoss.c
inflating: /usr/src/linux.slicoss/drivers/net/slicoss/1portdownload.h
4) Apply the Kernel patch with the build variable CONFIG_SLICOSS in drivers/net.
[root@redwave src]# cd linux.slicoss
[root@redwave linux.slicoss]# patch -p1 </var/tmp/slicoss/slicoss-1.1.3_RH72.patch
patching file drivers/net/Config.in
patching file drivers/net/Makefile
If this completes without error, go to step 5
If you get failure messages like:
can't find file to patch at input line 4
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|[root@redwave src]# diff -Naur linux/drivers/net/Config.in linux.slicoss/drivers/net/Config.in
|--- linux/drivers/net/Config.in Sun Aug 18 14:44:52 2002
|+++ linux.slicoss/drivers/net/Config.in Sun Aug 18 15:29:53 2002
--------------------------
It probably means you were in the wrong directory, or used the wrong
argument to the -p option.
If you get errors like:
patching file drivers/net/Config.in
Hunk #1 succeeded at 227 (offset -13 lines).
patching file drivers/net/Makefile
Hunk #2 FAILED at 36.
1 out of 2 hunks FAILED -- saving rejects to file drivers/net/Makefile.rej
It probably means that the patch doesn't quite match your distibution.
You'll have to examine the patch file a figure out the changes that need
to be made to Config.in and Makefile on your own. Don't sweat it, it's
not that tough.
5) Finally, run 'make config', 'make xconfig', or 'make menuconfig', depending
on your preference, and turn on the CONFIG_SLICOSS option in the 'Network
device support'/'Ethernet (1000 Mbit)' or 'Ethernet ( 10 or 100 Mbit)'
configuration area. Use (m)odule, not (y)es.
If your installation required the use of special modules not normally loaded,
you'll have to reselect them now, as they aint gonna be there by default.
This will come back to bite you later (as I unhappily discovered with
aic7xxx_mod)
Oh yeah, First you have to get a .config file to start with. You DO NOT
want to use the default one.
[root@redwave linux.slicoss]# ls configs
kernel-2.4.7-athlon.config kernel-2.4.7-i586-smp.config
kernel-2.4.7-athlon-smp.config kernel-2.4.7-i686.config
kernel-2.4.7-i386-BOOT.config kernel-2.4.7-i686-debug.config
kernel-2.4.7-i386.config kernel-2.4.7-i686-enterprise.config
kernel-2.4.7-i386-smp.config kernel-2.4.7-i686-smp.config
kernel-2.4.7-i586.config
[root@redwave linux.slicoss]# cp configs/kernel-2.4.7-i686-smp.config .config
cp: overwrite `.config'? y
[root@redwave linux.slicoss]# make xconfig
Well, I can't show you the output, cause xconfig is a gui, but once again,
it aint that tough.
6) Re-build your dependencies with 'make dep', and build/install your kernel
as normal.
What? You don't know how to do that? OK.
6a) Make sure you are in the /usr/src/linux.slicoss directory. Edit the
Makefile and look at the value of EXTRAVERSION. It's probably either
'-10' or '-10custom'. Since the only changes I've made to my kernel
is to add support for slicoss, I change it to -10slicoss.
6b) Remake your dependencies., cleanup, build the new kernel, install the new
kernel. You can do all of this with one command line, or if you are
getting errors, you can do each step seperately.
[root@redwave linux.slicoss]# make dep clean install
<lots of ugly output follows>
and lovely, it ends with:
+ '[' -x /root/bin/installkernel ']'
+ '[' -x /sbin/installkernel ']'
+ exec /sbin/installkernel 2.4.7-10slicoss bzImage /usr/src/linux-2.4.7-10.slicoss/System.map ''
/etc/lilo.conf: No such file or directory
make[1]: *** [install] Error 1
make[1]: Leaving directory `/usr/src/linux-2.4.7-10.slicoss/arch/i386/boot'
make: *** [install] Error 2
It looks like the folks over at RedHat assumed I'd be using lilo, when
in fact, I'm using grub. How annoying.
As it turns out the problem is in /sbin/installkernel. But it's no big
deal, the kernel is infact properly installed, I just need to update the
boot image, which I'll get to in a bit.
6c) Since the slicoss driver is a module, I also need to rebuild my modules.
It's really anooying that you have to build all the modules, but thems the
breaks.
[root@redwave linux.slicoss]# make modules modules_install
<no worries here as long as you aint in a hurry>
6d) Ok, now to fix that grub thing (lilo users can skip this step)
[root@redwave linux.slicoss]# cd /boot
[root@redwave boot]# mkinitrd -v initrd-2.4.7-10slicoss.img 2.4.7-10slicoss
now to edit /boot/grub/grub.conf to boot the new kernel:
title HedRat 7.2 (2.4.7-10slicoss)
root (hd1,0)
kernel /vmlinuz-2.4.7-10slicoss ro root=/dev/sdb3
initrd /initrd-2.4.7-10slicoss.img
6e) If you use lilo instead of grub, you may need to edit /etc/lilo.conf
and rerun lilo, or maybe /sbin/installkernel already did that for you.
I'm not sure.
7) Cross your fingers and reboot.
8) Once the system comes up, if you are running kudzu, it should report
new hardware device(s) found [unknown vendor/generic slicoss device]
I just ignore them, cause I like to manually configure things.
9) log in, and add entries for your Alacritech ports into /etc/modules.conf.
My system has an on board intel port already, plus an Alacritech 100x4
so I add
eth1 slicoss
eth2 slicoss
eth3 slicoss
eth4 slicoss
then run depmod and insmod (or modprobe depending on your preference)
[root@redwave etc]# depmod
[root@redwave etc]# insmod slicoss
Now lsmod should show something like:
[root@redwave etc]# lsmod
Module Size Used by
slicoss 373152 1
binfmt_misc 6640 1
autofs 12096 0 (autoclean) (unused)
eepro100 18144 1
usb-ohci 19344 0 (unused)
usbcore 54528 1 [usb-ohci]
ext3 67728 1
jbd 44480 1 [ext3]
aic7xxx_mod 110896 3
sd_mod 11584 3
scsi_mod 98512 2 [aic7xxx_mod sd_mod]
10) That's it. You have installed the slicoss driver. Just plumb it
I always do that manually too, just add
/etc/sysconfig/network-scripts/ifcfg-ethX (where X=(entry in modules.conf)
I only have one port plumbed, so mine looks like this
[root@redwave etc]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
# alacritech
DEVICE=eth1
BOOTPROTO=static
IPADDR=10.1.2.51
NETMASK=0xffff0000
ONBOOT=yes
bring it up:
[root@redwave etc]# ifup eth1
[root@redwave etc]# ifconfig eth1
eth1 Link encap:Ethernet HWaddr 00:10:42:00:05:E7
inet addr:10.1.2.51 Bcast:10.1.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2855 errors:0 dropped:0 overruns:0 frame:0
TX packets:175 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:400014 (390.6 Kb) TX bytes:11700 (11.4 Kb)
Interrupt:9 Base address:0x5000
DISCLAIMER:
===========
This driver is maintained by the slicoss maintainers, (who may or may not be
Alacritech employees) not by Alacritech. If you want support, email the driver
maintainers. If you call Alacritech, they will tell you to email the driver
maintainers.
<insert legal mumbo jumbo here>