9fans archive / 1995 / 10 / 88 /    prev next

From: Kenji Okamoto okamoto@ear...
Subject: Bug of 3C509 driver in 9/pc/9pc ?
Date: Tue, 10 Oct 1995 04:59:41 -0400

When I tried to set-up a 486 machine as a file server, the boot floppy
hang after showing several messages on the display:

found 9pcfs  attr 0x1, start 0x79a

<next page>

ether0: 3C509: port 300 irq 5 addr 0 size 0 width 16: xxxxxxxxxxxx
                                                        ^---real address

<next page>
tcm509: activate  (hang-up here, with the floppy LED is ON forever).

My 3C509B has the feature as follows:

Adapter type:                combo
Date of manufacture:          6/13/95
Division code:                6
Product code:                 BZ
I/O base address:             300H
Interrupt request level:      5
Boot PROM size:               disabled
Transceiver type:             auto select


On this 3C509B card, I'm also experiencing strange behaviour when I
use the machine as a terminal with local disk of fully installed CDROM.
At the boot time (still in CGA mode (I think in b.com mode), I can see
the messages on the display as below:

2508 free pages, 10032K bytes, swap 52912K, highwater 500K, headroom 624K
CPU is a 33 MHz Intel486DX (cpuid: ax 400 dx 0)
ether0: 3C509: port 300 irq 5 addr 0 size 0 width 16: xxxxxxxxxxxx
scsi0: aha1542: port 330 irq 11, dma 5,

and after VGA mode,

/bin/dossrv 21: serving #s/dos

ipconfig: local IP address not found, IP not configured.
            To use IP, edit /lib/ndb/local and reboot.

Of course, I have 'sys' entry for this machine in /lib/ndb/local.

This never happenes when I forced to set the sysname in /rc/bin/termrc,
like sysname=andesite.

Then, I looked into the source of /sys/src/cmd/ndb/cs.c, and I got
the conclusion that it failed to get 'myetheraddr' from the 3C509 board
(before the line 725 of cs.c (if(*ipa==0 && isether)).
However, we can get the data from the b.com, as I showed above.  

Therefore, I'm now doubting the 3C509B driver of the 9pc.  In fact,
it's different from that in boot/pc.

I'd be happy, if sopmeone could point me the real reason.

Thanks in advance.

Kenji