2 Identical Network Cards in Linux

I've got a question regarding dual nic cards in linux.  I have 2 SMC8000 nics that I want to use in my linux box, one at IO 300 IRQ 10 and the other at IO 280 IRQ 3.  When I installed the OS I had just one card detected, which is ok.  It found the 300/10 card as 290/10 (which kinda throws me off a little as in why) but it appears to work.  If I edit my conf.modules file and just dupe the alias line (or just do a netconf from the console and add the info there) for the 2nd nic, which is the same model as the first, both stop working.  Is there something special I need to do to make this work?  Please treat me as a newbie, and leave no detail un-said.

Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

You probably ought to take a look at the Ethernet How-To...

With two identical cards in a machine you have to put something like:

        alias eth0 3c509
        alias eth1 3c509
        options ne io=0x300,0x310

which would allow for two 3c509's at I/O ports 300 and 310.

As to the I/O port appearing at 290 vs 300.. How did you determine that it should be 300?

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
as jlevie said, you need to tell the kernel how to probe the cards, best is to do it in your lilo.conf.
In early kernel version multiple SMC (wd8xxx) where not supported, not shure if this is fixed.
kittlejAuthor Commented:
I determined that the IO should be 300 as that is the physical (jumper) address that I set on the card.  
JavaScript Best Practices

Save hours in development time and avoid common mistakes by learning the best practices to use for JavaScript.

I don't have any direct experience with the SMC cards, but it seems strange to me that if it was jumpered for 300 the system would report it to be at 290. What does the contents of /pro/ioports show? Also you should see the IO port in "ifconfig eth0".
kittlejAuthor Commented:
I've used a lot of these SMC cards, and in fact it is jumpered for 300. Maybe It's just a weird thing that SMC cards do heh.  I'm going to pull the SMC's out and try this w/ other network cards (I have hundreds!) and see what I can make happen. (I'll accept an answer once stuff is working, don't worry)
In addition to jlevie's comment: You might as well specify the IRQs in conf.modules as well:

     alias eth0 wd
     alias eth1 wd
     options wd io=0x300,0x280 irq=10,3

I think "wd" is right for the SMC/Western Digital cards.  If they're really NE2000 clones then replace "wd" with "ne".  Either way, the above example will dictate 300/10 and 280/3 for your ethernet cards.  At this point, you are no longer at the mercy of the auto-detect mechanism.   IMHO, auto-detection works better on PCI cards than ISA.

IRQ 3 is usually allocated to serial port COM2 (/dev/ttyS1) if I'm not mistaken. Consider moving the 2nd card to IRQ 5 if that is unused (cat /proc/interrupts).  If you must keep this card at IRQ 3, make sure nothing is connected on COM2, and verify that you don't have a PS/2 style mouse or infrared port using that interrupt.

If you have a PCI motherboard, check the BIOS setup and be sure that the necessary IRQs are allocated to the "ISA/Legacy" bus.  There is usually a screen called "PCI Bus configuration" and you can change the setting from automatic to manual, which opens up the ability to force interrupts to the ISA bus.

If this does not work, post the results of the dmesg and ifconfig commands.
kittlejAuthor Commented:
I've been toying around a little, and I've come to the conclusion that the "slightly off" port addresses is a bug in the WD driver... I have both nics working (I think) and they both are off by x10 on the address (280 is reporting as 290 and 300 is reporting as 310.  Now on to fight IPCHAINS

Thanks all!
Josh Kittle

SMC cards can be configured to use settings from a flashROM, the default is IRQ 10 ADR 300. You need SMC's config utility (DOS floppy) to change it.
kittlejAuthor Commented:
They can be.... but they can also be jumper configured... which is how i did it.  
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Linux Networking

From novice to tech pro — start learning today.