[epic-bug] cannot initialize SMC9432TX card under Linux after Windows is booted?

James Ralston qralston+ml.epic-bug@andrew.cmu.edu
Tue, 14 Nov 2000 16:07:15 -0500 (EST)


I have an SMC EtherPower II 10-100 (SMC9432TX) card, in a machine that
has both Windows 98 SE and Red Hat Linux 7.0 installed (in a dual-boot
configuration).

If I power the machine on and boot boot into Linux, everything works
fine.  I can reboot back into Linux, and everything works fine.  I can
boot into Windows from Linux, and everything works fine.  From
Windows, I can reboot into Windows, and everything is fine.

BUT: if I boot into Windows, and then I attempt to boot back into
Linux, I cannot get the EtherPower card to function.  Once I've booted
into Windows, the *only* way to get the card to function under Linux
again is to power-cycle the machine.  Not even pressing the reset
button on the machine itself is sufficient.

Here's what a Linux boot syslogs, if I haven't booted into Windows:

Nov 12 14:58:14 myhost kernel: epic100.c:v1.07h 8/18/99 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/epic100.html
Nov 12 14:58:14 myhost kernel: eth0: SMSC EPIC/100 83c170 at 0x9400, IRQ 15, 00:e0:29:75:32:17.
Nov 12 14:58:14 myhost kernel: eth0: MII transceiver #3 control 3000 status 7849.
Nov 12 14:58:14 myhost kernel: eth0:  Autonegotiation advertising 01e1 link partner 0001.
Nov 12 14:58:14 myhost kernel: eth0: Setting full-duplex based on MII #3 link partner capability of 45e1.

If I've already booted into Windows, this is what happens instead:

Oct 31 10:58:03 myhost kernel: epic100.c:v1.07h 8/18/99 Donald Becker http://cesdis.gsfc.nasa.gov/linux/drivers/epic100.html
Oct 31 10:58:03 myhost kernel:   The PCI BIOS has not enabled Ethernet device 10b8-0005.  Updating PCI command 0010->0015.
Oct 31 10:58:03 myhost kernel: eth0: SMSC EPIC/100 83c170 at 0x9400, IRQ 15, ff:ff:ff:ff:ff:ff.
Oct 31 10:58:03 myhost kernel: eth0: ***WARNING***: No MII transceiver found!

At the first attempt to send network traffic, the following messages
are syslogged:

Oct 31 10:58:58 myhost kernel: eth0: Transmit timeout using MII device, Tx status ffff.
Oct 31 10:59:45 myhost kernel: eth0: Transmit timeout using MII device, Tx status ffff.
Oct 31 10:59:50 myhost kernel: eth0: Transmit timeout using MII device, Tx status ffff.
Oct 31 10:59:55 myhost kernel: eth0: Transmit timeout using MII device, Tx status ffff.
Oct 31 10:59:58 myhost kernel: eth0: Tx hung, 16 vs. 0.
Oct 31 10:59:58 myhost kernel: eth0: Transmit timeout using MII device, Tx status ffff.
Oct 31 11:00:00 myhost kernel: eth0: Transmit timeout using MII device, Tx status ffff.
Oct 31 11:00:58 myhost kernel: eth0: Tx hung, 16 vs. 0.
Oct 31 11:00:58 myhost kernel: eth0: Transmit timeout using MII device, Tx status ffff.

As far as I can tell, these messages will repeat forever.  The card
does not actually transmit any traffic.

I have no idea at this point what I should even blame for this.
Windows?  My PC's BIOS?  The EtherPower II card?  The Linux kernel?
The epic100 driver?  Some, none, or all of the above?

The only additional data point I have is that this EtherPower II card
replaced my previous card, a 3COM Etherlink XL 3C900B.  The 3COM card
did *not* have this problem.

Also, if it matter, under Windows, I'm using SMC's driver, dated
5-17-1999.  Under "Driver File Details" is the following info:

    C:\WINDOWS\SYSTEM\NDIS.VXD is version 4.10.2222
    C:\WINDOWS\SYSTEM\vmm32.vxd (ntkern.vxd) has no info
      C:\WINDOWS\SYSTEM\SMCPWR2N.SYS is version 3.20
        C:\WINDOWS\SYSTEM\VTDI.386 is version 4.10.1998
        C:\WINDOWS\SYSTEM\VIP.386 is version 4.10.2226
        C:\WINDOWS\SYSTEM\VTCP.386 is version 4.20.2222
        C:\WINDOWS\SYSTEM\VDHCP.386 is version 4.10.2161

Has anyone else run into this problem, or have any ideas about what
might be going on?

Thanks,

-- 
James Ralston, Information Technology
Software Engineering Institute
Carnegie Mellon University, Pittsburgh, PA, USA