[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Tulip madness



On Thu, Jul 18, 2002 at 01:03:58AM -0300, Cesar Cardoso is quoted as saying:
> Hi all, 
> I have a PowerMac 5500/250 with the built-in Ethernet card (a Tulip
> one). Kernel is 2.4.19-rc1-ben0. 
> I never managed to make the Ethernet card work right on GNU/Linux,
> previously on YDL and also on Debian. 
> If I load the "tulip" module, it finds the wrong MAC and doesn't work at
> all. 
> If I load the "de4x5" module, it works for a short time. After a few
> minutes, I have to restart networking because it loses contact with the
> other computers on the network. 
> 
> I've read that the Tulip code on the kernel is borked. 
> 
> Do I need to buy an PCI card (like a RTL8139-based one) to make
> networking work right? 
> 
> -- 
> Cesar Cardoso - cesaracardoso@yahoo.com.br - www.cesarcardoso.tk
> "T? a? a lua. Que beleza! Ser? crescente ou decrescente? Decrescente, ?
> claro"
> (Galv?o Bueno)

This sounds similar to problems reported on the 6500, you may want to try
modifying de4x5.c with the attached patch. This just implements the fix that
benh described a few months ago.

To use, cd linux/drivers/net and then:

patch -p0 < /path/to/patch/de4x5.patch

Hopefully, this will fix your problems.

---------------------------------------------------------------------------
|   Nathan Ingersoll             |   Computer Science/Mathematics         |
|   mailto: ningerso@d.umn.edu   |   University of Minnesota-Duluth       |
|   http://umn.edu/~ningerso     |   http://www.d.umn.edu                 |
---------------------------------------------------------------------------

--- de4x5_orig.c	Thu Jul 18 11:54:38 2002
+++ de4x5.c	Thu Jul 18 11:55:21 2002
@@ -666,9 +666,9 @@
 
 #define DE4X5_ALIGN         DE4X5_ALIGN32           /* Keep the DC21040 happy... */
 #define DE4X5_CACHE_ALIGN   CAL_16LONG
-#define DESC_SKIP_LEN DSL_0             /* Must agree with DESC_ALIGN */
-/*#define DESC_ALIGN    u32 dummy[4];  / * Must agree with DESC_SKIP_LEN */
-#define DESC_ALIGN
+#define DESC_SKIP_LEN DSL_4             /* Must agree with DESC_ALIGN */
+#define DESC_ALIGN    u32 dummy[4];  /* Must agree with DESC_SKIP_LEN */
+/* #define DESC_ALIGN */
 
 #ifndef DEC_ONLY                        /* See README.de4x5 for using this */
 static int dec_only;

Reply to: