[594] in linux-net channel archive
1.3.4 patch for 3Com 3c59x "vortex" card driver
daemon@ATHENA.MIT.EDU (Dave Platt)
Thu Jun 29 20:42:56 1995
Date: Thu, 29 Jun 95 16:00:22 PDT
From: dplatt@3do.com (Dave Platt)
To: linux-net@vger.rutgers.edu
A surprise birthday present showed up on my desk this morning... a FedEx
box from 3Com containing two complementary "Vortex" PCI Ethernet cards
(one 3c590 combo card, and a 3c595 10/100Base-T card). It seems that
a project manager at 3Com read my rather unhappy postings in the
comp.os.linux.networking newsgroups concerning my long-standing problems
with a Boca BEN1PI card, and thought I might like to try out some 3Com cards
instead. What a deal!
I downloaded Donald's 3c59x.c driver and patched it into my 1.3.4 kernel.
The system booted OK, the card was recognized, the network parameters were
configured... and no data flowed. netstat -i showed packets being sent and
received without error, but I couldn't establish a connection to anywhere.
Some experimentation and examination of other drivers made it clear that the
following addition to the driver is needed to run under the 1.3.4 (at least)
kernel:
*** 3c59x.c Thu Jun 29 12:58:56 1995
--- 3c59x.c.1.3.4 Thu Jun 29 15:50:36 1995
***************
*** 638,643 ****
--- 638,644 ----
insl(ioaddr+RX_FIFO, skb->data,
(pkt_len + 3) >> 2);
+ skb->protocol=eth_type_trans(skb,dev);
netif_rx(skb);
outw(RxDiscard, ioaddr + EL3_CMD); /* Pop top Rx packet. */
/* Wait a limited time to go to next packet. */
With this patch in place, TCP/IP and AppleTalk both work fine on the Vortex
3c590.