🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.os.linux.networking
Article #98

Re: smc-ultra module loads but base address changes in ifconfig

#98
From: Kevin Lamonte
Date: Tue, 22 Dec 1998 00:00
44 lines
2825 bytes
Jeremy Malcolm <terminus@odyssey.apana.org.au> wrote:
> I am trying to set up a network and I have an ethernet card with an
> SMC Ultra chip in it.  The module for this card loads fine and I can
> ping its IP address.  dmesg shows that the kernel is using the correct
> io and irq addresses (10 and 300, pretty standard).

> However when I run ifconfig it shows the irq base address as 310, not
> 300!  Consequently the networking won't work at all.

My SMC8416T won't load without specifying base also, and ifconfig still
gets it wrong, but otherwise it works fine.

Here's my setup:  the card is jumpered for "software configured" and has
no boot ROM.  The DOS utility has already set it to 0x320, irq 11,
16K memory at 0xd0000.  In my rc.modules I uncommented the line that loads
smc-ultra and added io=0x320, i.e. /sbin/modprobe smc-ultra io=0x320.  It
loads fine, even though ifconfig reports it at 0x330.

If you look in linux/drivers/net/smc-ultra.c you'll see why ifconfig gets
it wrong:

#define ULTRA_NIC_OFFSET 16 /* NIC register offset from base_addr. */

and further down:

        /* The 8390 isn't at the base address, so fake the offset */
        dev->base_addr = ioaddr+ULTRA_NIC_OFFSET;

What exactly happens when ifconfig tries to load?  Do you get SIO????:
device unknown type messages?  If so, just login as root and try modprobe
smc-ultra io=0x300, then modprobe smc-ultra io=0x310, etc. until you see
it identify the IRQ and return the proper valid ethernet address.  Then
see if you can manually ifconfig the interface (ifconfig eth0 192.168.1.9
netmask 255.255.255.0 up) and then setup a default route (route add -net
192.168.1.0 netmask 255.255.255.0 eth0) and finally try to ping other
machines.  If it goes that far then you're fine, just edit rc.modules and
add io=0x320 or whatever to the modprobe smc-ultra line.

-- 
Kevin Lamonte         | kevinl at jove dot acs dot unt dot edu
--------------------------------------------------------------
Fight spam!           |  Join the Cause!  http://www.cauce.org
From: root@127.0.0.1 (|)   Support the Smith Bill to eliminate
From: root@localhost (|)   Unsolicited Commercial Email!
Technical Details
Message-ID: <75oeef$va@hermes.acs.unt.edu>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <75kb01$i90$1@odyssey.apana.org.au>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: fc5ec,9bbc4e801998e4eb
X-Google-Attributes: gidfc5ec,public
X-Google-Thread: 10669a,9bbc4e801998e4eb
X-Google-Attributes: gid10669a,public
From: Kevin Lamonte <kevinl@jove.acs.unt.edu>
Subject: Re: smc-ultra module loads but base address changes in ifconfig
Date: 1998/12/22
Message-ID: <75oeef$va@hermes.acs.unt.edu>
X-Deja-AN: 424854909
References: <75kb01$i90$1@odyssey.apana.org.au>
Organization: University of North Texas
User-Agent: tin/pre-1.4-980105 (UNIX) (SunOS/5.6 (sun4d))
Newsgroups: comp.os.linux.networking,apana.lists.os.linux.kernel