# New Modem, changes irq on old NIC, breaks my eth0

## shadowvcd

I've been running gentoo for several months, installed it over dsl.  I see the day when I'll be losing my dsl, so I thought it best if I get a modem working.  

I installed my new (old) usrobotics 56k modem.  After a reboot, the modem took irq 5 which previously was assigned to my NIC.  The NIC is now assigned irq 12.  

Now when I try to start eth0, I get message "failed to bring eth0 up".

when I run the command dmesg, i get the following

ne.c: ISAPnP reports Generic PNP at i/o 0x220, irq 12.

ne.c:v1.10 9/23/94 Donald Becker (becker@scyld.com)

Last modified Nov 1, 2000 by Paul Gortmaker

NE*000 ethercard probe at 0x220: 00 20 18 66 bd da

eth0: NE2000 found at 0x220, using IRQ 12.

(extraneous stuff)

NETDEV WATCHDOG: eth0: transmit timed out

eth0: Tx timed out, lost interrupt? TSR=0x3, ISR=0x3, t=4188.

NETDEV WATCHDOG: eth0: transmit timed out

eth0: Tx timed out, lost interrupt? TSR=0x3, ISR=0x3, t=16257.

NETDEV WATCHDOG: eth0: transmit timed out

When I boot to windowsxp, the irq on the NIC changed from irq5 to irq10, but my network works on it.

When I take the modem out, the NIC reverts to irq5 and eth0 works.

I'm stumped...any suggestions?

Forgot to mention that I'm using dhcp through my cisco675 router for my dsl.

----------

## sulu

Maybe, but only a guess, the kernel- module for eth0 has the irq = 5 staticly assigned in the file where the configuration for the kernel-modules is stored.

I don't know if gentoo uses /etc/modules.conf or may be /etc/modules.d. You have to search an entry like 'alias eth0 ...'.

If you find something liek irq=5 correct it to the irq you intend to use.

Sorry for beeing so unprecise but i can't check it sitting before my weird ....doze-box.

cya

Sulu

----------

## shadowvcd

the NIC module is compiled into the kernal proper, not as a module.  

The only config file I can find is /etc/conf.d/net.

Only thing in it is the following

iface_eth0="dhcp"

/etc/modules.conf has the automatically generated file from update-modules.  Nothing net related in the /etc/modules.d except the ppp module.

Wouldn't think the irq would be staticly assigned in the kernel proper. 

Any other suggestions?   I'm off to boot my mandrake distro to see what happens there.

----------

## sulu

Hmmmm

I had problems with my two Nic's having them compiled into the kernel. Compiled as modules they work flawlessly. Another guess. Maybe, compiled into the kernel, the module is feeded with standard values like e.g. irq=5. Try the modules.

That's only my 2cent.

----------

## shadowvcd

will recompile as modules...my mind says that it will be an exercise in futility...doesn't make sense to me.

But lots of times i fix things by trial and error when i'm not quite understanding.

In my mind with the dmesg output, the kernel is reporting the correct irq of the NIC.

----------

## sulu

Thought so myself. Why should there be an difference between loading via modules and having it compiled into the kernel?

Mabye it's the way the boot srcipt starts the device.

Just did a look at /etc/init.d/net.eth0.

It uses ifconfig to bring up the device but nothing special related to modules, irq's.

Hmmm

You could restart your network a report post the output (messages).

First

su -

Then

/etc/init.d/net.eth0 restart

Maybe these messages give us a hint what's going wrong. 

cya

Sulu

----------

## shadowvcd

i've just about given up.

No difference with modules vs compiled directly in kernel.

have to do a 

/etc/init.d/net.eth0 start     not restart since it never starts in first place.  Only message is standard eth0 unable to start.

recompiled kernel so NIC module back in kernel so i could pass command line arguments ....ether=5,0x220,eth0 

that didn't work.

got my original gentoo rc6 boot cd to check what happens when i boot off it.

run dhcpcd and same damn thing happens, so it can't be the script.

only thing i ever find is the original error message that is in my first post when i do a dmesg command.

Also, tried moving the NIC card and modem into physically different slots, hoping that it would probe them in different order.   No success.  Incidently both of these are isa cards.

googled on and tried passing boot parameter pci=nobios  trying to get the kernel not to read the bios given parameters..no luck.  same with pci=reverse  which is supposed to reverse the order of the pci devices.

So until I can figure out how to get modem out of plugnplay mode and assign an irq to it myself, I'm stuck...used to be able to do that with jumpers...ahhh the good old days.

----------

## sulu

Uh, that's annoying isn't it.

But.  Youre passing ....ether=5,0x220,eth0 

to your NIC,  so you tell the NIC to use irq=5.

If i read your post correctly (i know thats broken english) you want to use irq=12.

I would try ....ether=12,0x220,eth0 

Greetz 

Sulu

----------

