Click to See Complete Forum and Search --> : Module loading error
fsvara
10-30-2000, 04:39 PM
On bootup, the system tries to load eth1, and it says
SIOCSFADDR: Resource or device busy
ne.o Loading failed
and it does this 4 times in a row.
What does resource or device busy mean, how can a network adaptor be busy on bootup???
The King Ant
10-30-2000, 05:25 PM
It's possible that the module has already beeen loaded. It is more likely that the device is not loaded incorrectly (because the wrong IRQ/IO address/other stuff is specified, or this info is not specified when it needs to be), I think.
Have you gotten the driver to work manually (with insmod or depmod)? Are you sure you're using the correct driver?
fsvara
10-31-2000, 04:39 AM
I have the following in my /etc/modules.conf:
alias ne eth1
.
.
.
options ne io=0x260 irq=5
This is definitely correct (io,irq).
I am also _sure_ that my network adptor uses ne.
pontiouspilate
10-31-2000, 08:35 AM
this is a direct copy of the ethernet HOWTO
http://www.linuxdoc.org/HOWTO/Ethernet-HOWTO-3.html#ss3.2
#############
What this does: This says that if the administrator (or the kernel) does a modprobe eth0 or a modprobe eth1 then the ne.o driver should be loaded for either eth0 or eth1. Furthermore, when the ne.o module is loaded, it should be loaded with the options io=0x240,0x300 so that the driver knows where to look for the cards. Note that the 0x is important - things like 300h as commonly used in the DOS world won't work. Switching the order of the 0x240 and the 0x300 will switch which physical card ends up as eth0 and eth1.
Most of the ISA module drivers can take multiple comma separated I/O values like this example to handle multiple cards. However, some (older?) drivers, such as the 3c501.o module are currently only able to handle one card per module load. In this case you can load the module twice to get both cards detected. The /etc/conf.modules file in this case would look like:
alias eth0 3c501
alias eth1 3c501
options eth0 -o 3c501-0 io=0x280 irq=5
options eth1 -o 3c501-1 io=0x300 irq=7
In this example the -o option has been used to give each instance of the module a unique name, since you can't have two modules loaded with the same name. The irq= option has also been used to to specify the hardware IRQ setting of the card. (This method can also be used with modules that accept comma separated I/O values, but it is less efficient since the module ends up being loaded twice when it doesn't really need to be.)
##########
i had to do this with mine you have to use the -o option in conf.modules to load the ne.o modules as a differnt name (ne-0, ne-1)\