AlloyNics - Alloy Computer Products

advertisement
Installation Instructions for Alloy NICS:
Revision:
Date:
1.0
5th September 2002
COMPATIBILITY CHART ............................................................................................................................................ 1
COMPATIBILITY DETAILS......................................................................................................................................... 2
1430TX (REVISION D2/D3):........................................................................................................................................... 2
1430TX (REVISION U6):................................................................................................................................................. 3
1430SC (REVISION U6/M3A): ....................................................................................................................................... 3
1439TX (REVISION R2): ................................................................................................................................................. 4
1439TX (REVISION A1):................................................................................................................................................. 4
1439TX (REVISION 5.1): ................................................................................................................................................ 5
1439TX (REVISION C): ................................................................................................................................................... 5
2420P2: .......................................................................................................................................................................... 5
9400P3 (REV E):............................................................................................................................................................. 6
KERNEL COMPILATION: ............................................................................................................................................ 6
MODULE CONFIGURATION TIPS: ........................................................................................................................... 8
TERMS/GLOSSARY: ...................................................................................................................................................... 9
REFERENCES/LINKS: ................................................................................................................................................... 9
OTHER NOTES: .............................................................................................................................................................. 9
REVISIONS: ..................................................................................................................................................................... 9
Compatibility Chart
Alloy NIC
Alloy-1430TX
Alloy-1430SC
Alloy-1439TX
Alloy-2420P2
Alloy-9400P3
*1
*2
Tested with kernel
2.4.2-2 (RH7.1)
2.4.19
2.4.2 (RH7.1)
2.4.2-2 (RH7.1)
2.4.19
Driver
tulip
Status
Works*1
tulip
2.4.19
2.4.19
2.4.19
8139too
ne
tulip
Works
(Workaround
required) *2
Works
Works
Works *3
Revision D2/D3 boards will not work. All others pick up 100%
“options=14” must be given (MII-100BaseTX-FD)
1
*3
BNC/AUI not tested. 10BaseTX-FD will generate a lot of frame errors
Compatibility Details
1430TX (Revision D2/D3):
Driver :
tulip
How to Identify:
Running the tulip driver should return 4 'PHY(sical)' interfaces: 10BaseTX,10BaseTXFD,100BaseTX,100BaseTX-FD.
The back panel should only have one RJ-45 slot, 4 LEDs
Chipset is DEC 21143-PA
Tested with:
- RedHat 7.1 (kernel 2.4.2-2/tulip 0.9.14)
- RedHat 7.1 (kernel 2.4.19 (self compiled)/tulip 0.9.15pre1)
- RedHat 7.1 (kernel 2.4.2 (self compiled)/tulip 0.9.13a)
Installation:
# modprobe tulip
Results:
This old version of the card does NOT work with Linux. Upgrade to
U6, or older revision (before D1).
Other Notes:
The interface can generate up to 10 carrier errors while it's auto-negotiating a speed. If carriers
continue to happen, you may need to check if the other end of the interface supports NWAY
negotiation properly. Use "mii-diag" to diagnose what the other link partner advertises as its
capabilities.
2
1430TX (Revision U6):
Driver :
tulip
How to Identify:
Running the tulip driver should return a 'MII' interface.
The back panel should only have one RJ-45 slot, 4 LEDs
Chipset is DEC 21143-PD
Tested with:
- RedHat 7.1 (kernel 2.4.2-2/tulip 0.9.14)
- RedHat 7.1 (kernel 2.4.19 (self compiled)/tulip 0.9.15pre1)
- RedHat 7.1 (kernel 2.4.2 (self compiled)/tulip 0.9.13a)
Installation:
# modprobe tulip
Results:
Works out of the box with all the above systems.
Other Notes:
The interface can generate up to 10 carrier errors while it's auto-negotiating a speed. If carriers
continue to happen, you may need to check if the other end of the interface supports NWAY
negotiation properly. Use "mii-diag" to diagnose what the other link partner advertises as its
capabilities.
1430SC Fibre (Revision U6/M3A):
Driver :
tulip
How to Identify:
Running the tulip driver should return a 'MII' interface.
The back panel should only have one SC fiber connector, 4 LEDs.
Chipset is DEC 21143-PD
Tested with:
- RedHat 7.1 (kernel 2.4.2-2/tulip 0.9.14)
- RedHat 7.1 (kernel 2.4.19 (self compiled)/tulip 0.9.15pre1)
- RedHat 7.1 (kernel 2.4.2 (self compiled)/tulip 0.9.13a)
Installation:
# modprobe tulip options=14
3
Results:
- RedHat 7.1 (kernel 2.4.2 (self compiled)/tulip 0.9.13a)
- Fails (Half duplex is lit, link is up).
Solution:
- Upgrade kernel to 2.4.19. See Kernel Compilation summary below
- RedHat 7.1 (kernel 2.4.2-2/tulip 0.9.14)
- Fails (Half duplex is lit, and link is up).
Solution:
- Upgrade kernel to 2.4.19. See Kernel Compilation summary below
- RedHat 7.1 (kernel 2.4.19 (self compiled)/tulip 0.9.15pre1)
- Works, but duplex is not detected. Use options=14 parameter to
force to "MII 100BaseTX-FD". (No this is not a typo, it is a fiber
card, but set it to 100BaseTX, not 100BaseFX)
Other Notes:
The NWAY capability of the "tulip" chipset had not been disabled for this fiber card. As such, it
will fail to detect the correct duplex (but correct speed). This will result in poor performance if the
card is not forced to "full duplex" mode (options=14)
1439TX (Revision R2):
Driver :
8139too
How to Identify:
Running the 8139too driver should return an identified "8139 rev K" chip
Chipset is Realtek 8139 (RTL-8139)
Tested with:
- RedHat 7.1 (kernel 2.4.19 (self compiled)/tulip 0.9.15pre1)
Installation:
# modprobe 8139too
Results:
Works out of the box with all the above systems.
1439TX (Revision A1):
Driver :
8139too
How to Identify:
Running the 8139too driver should return an identified "8139B" chip
Chipset is Realtek 8139 (RTL-8139B)
Tested with:
- RedHat 7.1 (kernel 2.4.19 (self compiled)/tulip 0.9.15pre1)
Installation:
# modprobe 8139too
4
Results:
Works out of the box with all the above systems.
1439TX (Revision 5.1):
Driver :
8139too
How to Identify:
Running the 8139too driver should return an identified "8139-C" chip
Chipset is Realtek 8139 (RTL-8139C)
Tested with:
- RedHat 7.1 (kernel 2.4.19 (self compiled)/tulip 0.9.15pre1)
Installation:
# modprobe 8139too
Results:
Works out of the box with all the above systems.
1439TX (Revision C):
Driver :
8139too
How to Identify:
Running the 8139too driver should return an identified "8139-C" chip
Chipset is Realtek 8139 (RTL-8139D)
Tested with:
- RedHat 7.1 (kernel 2.4.19 (self compiled)/tulip 0.9.15pre1)
Installation:
# modprobe 8139too
Results:
Works out of the box with all the above systems.
2420P2:
Driver :
ne
How to Identify:
Standard NE-2000 card (ISA)
Tested with:
- RedHat 7.1 (kernel 2.4.19 (self compiled)/ne)
5
Installation:
# modprobe ne irq=<irq no> io=<io port address>
Results:
Works out of the box with all the above systems.
Additional Notes:
io/irq switch is not always required. It does autodetect the settings quite accurately.
9400P3 (Rev E):
Driver :
tulip
How to Identify:
Chipset is 21040-AA
Tested with:
- RedHat 7.1 (kernel 2.4.19 (self compiled)/tulip 0.9.15pre1)
Installation:
# modprobe tulip
Results:
Works. Does not support 10BaseT-FD. AUI/BNC not tested.
Kernel Compilation:
I've opted to choose the manual kernel compilation because it's a distribution-independant solution
that will work with just about every distribution out there. There is a Kernel-HOWTO that details
this method, but I will outline the steps below.
Steps in Kernel compilation:
1) Get the kernel archive
At this time of writing, the latest is 2.4.19. This can be downloaded
from any www.kernel.org mirror. The filename would generally be linux-2.4.19.tar.bz2 (or
whatever version you wish to download)
Tip: Closest mirror to Australia is ftp://mirror.aarnet.edu.au/pub/linux/kernel/
Tip: Linux kernels are numbered X.Y.Z. If Y is an odd number it's a cutting edge/experimental
kernel. Although it's generally stable, it is not recommended using any cutting edge kernels for
production systems.
6
2) Decompress the archive
# cd /usr/src
This is generally where most people prefer to use to compile the source files.
# tar xvyf <path to download>/linux-2.4.19.tar.bz2
This will decompress the .tar.bz2 file to /usr/src (current directory). It will create /usr/src/linux
(with a lot of files inside).
Note: with RedHat distributions, "y" is replaced with "j" as an option to tar
3) Configure kernel
# cd linux
# make menuconfig
This is the configuration menu for the new kernel. Check all the things that you need for your
standard operation. In addition to the standard features, you must enable:


Networking Support [Y]
Ethernet 10/100 Mbit [Y]
and the driver for the NIC itself (eg.):

DECchip Tulip (dc2114x) PCI support [M]
(see Compatibility Chart for list)
You may compile the driver as "Y"es for built into the kernel, or "M"odule. I recommend
compiling as module, which will assist in dynamic loading/unloading of the driver, at least until it is
working flawlessly.
Remember to SAVE the changes.
4) Make the kernel
Making the kernel comprises of 2 parts the core 'always in memory' kernel, and the modules
(loaded upon demand). Before you proceed, the "menuconfig" step above should advice that you
run "make dep". This checks the integrity of the kernel sources before compilation begins.
# make dep
a) Making the core kernel:
# make bzImage
This makes the "big-compressed" (bz) Image of the kernel. The output
will be a file created under "arch/i386/boot/" (from current directory). See #5 for installing it.
b) Making modules
# make modules
5) Installing the newly compiled kernel. [LILO based bootup]
I've again opted for a manual installation in this section to make it distribution independant. The
following should work for just about any distribution of Linux.
7
a) Installing the modules:
# make modules_install
b) Installing the kernel core:
# cp arch/i386/boot/bzImage /boot/bzImage-2.4.19
I chose to call it bzImage-2.4.19 to reflect the version number, but you may choose a different
name, as long as it's matched in the following config (LILO).
# cp System.map /boot/System.map-2.4.19 (optional)
This is a text file with a dump of offsets within the kernel. Should anything crash, this file is
looked up to cross reference the address to an appropriate function name that caused the crash. This
is purely optional.
(First time only)
Edit "/etc/lilo.conf":
Add a new entry to the bootup menu. Copy the current bootup entry and change the "image" to
point to your new kernel, and change the "label" to "LinuxNew" (the name for your new bootup
option). eg.
-image = /boot/bzImage-2.4.19
root = /dev/hda1
label = LinuxNew
read-only
-I have chosen to "play it safe" with the old kernel by not deleting/replacing the old one. I merely
added a new entry into the "boot up" menu.
(End First time)
# lilo
Running lilo (LInux LOader) refreshes the boot up code to recognise the new kernel and
configuration.
6) Reboot and try it out.
# init 6
or
Ctrl-Alt-Del would reboot to your new kernel.
Module Configuration Tips:





use "lsmod" to list what modules are loaded.
use "insmod" or "modprobe" to insert a module into a running kernel. (eg. insmod tulip, or
modprobe tulip). modprobe is recommended because it loade all other prerequisite modules to
the one you have specified (eg. ne (NE2000) driver has a dependency on 8390 which is
automatically loaded if "modprobe"d but not when "insmod"ed)
use "rmmod" to remove module from kernel. You can only remove a module if the module is
not in use at the time. For network cards, this can be as simple as shutting down the interface
(eg. ifconfig eth0 down)
instead of always doing modprobe with a parameter, use /etc/modules.conf 's option feature.
Example of usage is to tag a new line withe the following content:
option tulip options=14
[RedHat] instead of modprobing each reboot, you can assign the ethernet device (eth0, eth1,etc)
alias to point to the appropriate driver (once compiled). Example of usage is to change the alias
line to:
alias eth0 tulip
8
Terms/Glossary:

parts preceded by "# " are commands that require root access to execute properly.
References/Links:
General network drivers and diagnostics
http://www.scyld.com/page/support/network/
Donald Becker's tulip driver site
http://www.scyld.com/network/tulip.html
General Kernel-HOWTO
http://www.tldp.org/HOWTO/Kernel-HOWTO.html
Other Notes:


RedHat 7.3 uses GRUB loader rather than LILO. Instructions not given for kernel install of that
version yet.
“mii-diag” program can be downloaded from the General network drivers and diagnostics URL
below
Revisions:
0.9
1.0
: Alvin Sim : 3rd Sep 2002
 Initial version. Missing ISA Cards entry.
: Alvin Sim : 5th Sep 2002
 Added 9400P3, 2420P2.
 Realigned a lot of fonts, and typo.
 Corrected order in Compatibility Chart
9
Download