epic100.c no-go on 2.1.115

Mike Black mblack@csihq.com
Fri Aug 7 07:54:10 1998


This is a multi-part message in MIME format.
--------------EE23B015D4F0E0B1B5690CAF
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Inserted the new epic100.c and it failed to recognize my card -- In
addition it gives a warning during compile (on Linux 2.1.115):

gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2
-fomit-frame-pointer -D__SMP__ -pipe -fno-strength-reduce -m
486 -malign-loops=2 -malign-jumps=2 -malign-functions=2 -DCPU=586   -c
-o epic100.o epic100.c
In file included from epic100.c:71:
/usr/src/linux/include/linux/bios32.h:11: warning: #warning This driver
uses the old PCI interface, please fix it (see Documentation
/pci.txt)

The Failed boot messages:
Aug  7 06:55:53 medusa kernel: epic100.c:v1.02 8/5/98 Donald Becker
http://cesdis.gsfc.nasa.gov/linux/drivers/epic100.html
Aug  7 06:55:53 medusa kernel: eth0: SMC EPIC/100 (chip ID 0005) at
0xeeffd000, IRQ 17, ff:ff:ff:ff:ff:ff.
Aug  7 06:55:53 medusa kernel: eth1: SMC EPIC/100 (chip ID 0005) at
0xeeffd000, IRQ 17, ff:ff:ff:ff:ff:ff.
Aug  7 06:55:53 medusa kernel: eth2: SMC EPIC/100 (chip ID 0005) at
0xeeffd000, IRQ 17, ff:ff:ff:ff:ff:ff.
Aug  7 06:55:53 medusa kernel: eth3: SMC EPIC/100 (chip ID 0005) at
0xeeffd000, IRQ 17, ff:ff:ff:ff:ff:ff.
Aug  7 06:55:53 medusa kernel: eth4: SMC EPIC/100 (chip ID 0005) at
0xeeffd000, IRQ 17, ff:ff:ff:ff:ff:ff.
Aug  7 06:55:53 medusa kernel: eth5: SMC EPIC/100 (chip ID 0005) at
0xeeffd000, IRQ 17, ff:ff:ff:ff:ff:ff.
Aug  7 06:55:53 medusa kernel: eth6: SMC EPIC/100 (chip ID 0005) at
0xeeffd000, IRQ 17, ff:ff:ff:ff:ff:ff.
Aug  7 06:55:53 medusa kernel: eth7: SMC EPIC/100 (chip ID 0005) at
0xeeffd000, IRQ 17, ff:ff:ff:ff:ff:ff.

My old driver gives:
epic100.c:v0.10 10/14/97 Donald Becker
http://cesdis.gsfc.nasa.gov/linux/drivers/epic100.html
eth0: SMC EPIC/100 at 0xd800, IRQ 17, 00:e0:29:21:42:da.
eth0: MII transceiver found at address 3.

I noticed two major difference between the two during initialization:

old version:
        ioaddr = pdev->base_address[0];
	.
	.
	.
        /* Bring the chip out of low-power mode. */
        outl(0x0200, ioaddr + GENCTL);

new version:
        ioaddr = pdev->base_address[1];
	.
	.
	.
        /* Bring the chip out of low-power mode. */
        outl(0x4200, ioaddr + GENCTL);

Seein's how the ioaddr does not print out correctly I'm suspecting that
is the bug...
I changed "ioaddr" back to [0] and it printed out the ioaddr as 0xd801
(?? instead of 0xd800 as the old one did).  It then locked up
(apparently) at the first outl() instruction (probably because of the
bad ioaddr) as it didn't print out the registers and completely frozed
the machine (had to cycle power).

P.S. I ran the mii-diag while the machine was booted with the old driver
and got
Using the default interface 'eth0'.
Using the default interface 'eth0'.
SIOCGMIIPHY on eth0 failed: Operation not supported on transport
endpoint

Sorry for all the bad news....
--------------EE23B015D4F0E0B1B5690CAF
Content-Type: text/x-vcard; charset=us-ascii;
 name="mike.vcf"
Content-Transfer-Encoding: 7bit
Content-Description: Card for Mike Black
Content-Disposition: attachment;
 filename="mike.vcf"

begin:vcard
adr;dom:;;;Melbourne;FL;32904-2314
n:;Mike Black
x-mozilla-html:FALSE
org:CSI Inc
version:2.1
email;internet:mblack@csihq.com
title:Principal Engineer
tel;fax:407-676-2355
tel;home:407-752-6462
tel;work:407-676-2923,x203
x-mozilla-cpt:;0
fn:Mike Black
end:vcard


--------------EE23B015D4F0E0B1B5690CAF--

 | To unsubscribe, send mail to Majordomo@cesdis.gsfc.nasa.gov, and within the
 |  body of the mail, include only the text:
 |   unsubscribe this-list-name youraddress@wherever.org
 | You will be unsubscribed as speedily as possible.