2000-12-25 16:01:27

by Alex Buell

[permalink] [raw]
Subject: Netgear FA311

Well now I've just set up the network and everything works a treat,
currently getting 850kb/s file transfers. Cool. Except for one thing.

In the logs I'm seeing this:

Dec 25 15:25:18 tahallah last message repeated 2 times
Dec 25 15:25:19 tahallah kernel: eth0: Something Wicked happened! 0783.
Dec 25 15:25:19 tahallah kernel: eth0: Something Wicked happened! 0780.
Dec 25 15:25:19 tahallah last message repeated 2 times
Dec 25 15:25:19 tahallah kernel: eth0: Something Wicked happened! 0580.
Dec 25 15:25:19 tahallah kernel: eth0: Something Wicked happened! 0783.
Dec 25 15:25:19 tahallah kernel: eth0: Something Wicked happened! 0780.
Dec 25 15:25:21 tahallah last message repeated 3 times
Dec 25 15:25:21 tahallah kernel: eth0: Something Wicked happened! 0783.
Dec 25 15:25:22 tahallah kernel: eth0: Something Wicked happened! 0780.

That's just a small snippet. Apart from those messages, all seems OK, but
I'm just wondering why it's getting those messages - what does those mean?

Cheers,
Alex
--
Huffapuff!

http://www.tahallah.clara.co.uk


2000-12-25 17:17:32

by Manfred Spraul

[permalink] [raw]
Subject: Re: Netgear FA311

Alex wrote:
> In the logs I'm seeing this:
>
> Dec 25 15:25:18 tahallah last message repeated 2 times
> Dec 25 15:25:19 tahallah kernel: eth0: Something Wicked happened! 0783.
> Dec 25 15:25:19 tahallah kernel: eth0: Something Wicked happened! 0780.

783 means:
Tx Underrun
Tx Idle
Tx Packet Error
Tx Descriptor
Rx Packet Error
Rx Descriptor
Rx OK.

Hmm. I download the Documentation from National
(http://www.national.com/pf/DP/DP83815.html),
and the the tx burst size/fill threshold/drain threshold combination is
invalid:

<<<<<<<< from natsemi.c:
/* Configure the PCI bus bursts and FIFO thresholds. */
/* Configure for standard, in-spec Ethernet. */
np->tx_config = (1<<28) + /* Automatic transmit padding */
(1<<23) + /* Excessive collision retry */
(0x0<<20) + /* Max DMA burst = 512 byte */
(8<<8) + /* fill threshold = 256 byte */
2; /* drain threshold = 64 byte */
writel(np->tx_config, ioaddr + TxConfig);
>>>>>>>>>>>>

But:
<<<<<<<< page 51
The MXDMA MUST NOT be greater than the Tx Fill Threshold
>>>>>>>>>>

Could you try this setup?
<<<<<<<<
/* Configure the PCI bus bursts and FIFO thresholds. */
/* Configure for standard, in-spec Ethernet. */
np->tx_config = (1<<28) + /* Automatic transmit padding */
(1<<23) + /* Excessive collision retry */
(6<<20) + /* Max DMA burst = 128 byte */
(8<<8) + /* fill threshold = 256 byte */
8; /* drain threshold = 256 byte */
writel(np->tx_config, ioaddr + TxConfig);
>>>>>>>>

--
Manfred

2000-12-25 18:12:11

by Alex Buell

[permalink] [raw]
Subject: Re: Netgear FA311

On Mon, 25 Dec 2000, Manfred wrote:

> Could you try this setup?
> <<<<<<<<
> /* Configure the PCI bus bursts and FIFO thresholds. */
> /* Configure for standard, in-spec Ethernet. */
> np->tx_config = (1<<28) + /* Automatic transmit padding */
> (1<<23) + /* Excessive collision retry */
> (6<<20) + /* Max DMA burst = 128 byte */
> (8<<8) + /* fill threshold = 256 byte */
> 8; /* drain threshold = 256 byte */
> writel(np->tx_config, ioaddr + TxConfig);
> >>>>>>>>

Hmm, that little change worked a lot better. However thoughput is down to
700kb/s! Transferring files from the other machine to this machine is much
faster - 868kb/s.

In the logs, I only got *one* message from the natsemi driver (and this
happened when sending files from this machine to the other machine. No
problems receiving from the other machine.

Dec 25 17:28:12 tahallah kernel: eth0: Something Wicked happened! 0583.

But I just realised that the other machine I'm using has an 10 megabit
ethernet card (on the hub that one is shown on 10, my machine is shown as
100). I think this explains the throughput problem. When I get another 4
way power socket, I'll put my other machine (which has a 100 megabit card
in it) on the network and see if that makes a difference.

Cheers,
Alex
--
Huffapuff!

http://www.tahallah.clara.co.uk