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

alpha 2.0.34 kernel patch and TULIP driver - a solution



Dear All,

I've bothered everybody with my troubles with my PWS500a (Miata) and the
build-in tulip interface (and any kernel).

Now I'd like to tell you what solution finally worked for me, thanks to
Loic.Prylli@ENS-Lyon.FR, as it manifests itself for the linux-2.0.34.


CONFIGURATION: PWS500a (Miata) with tulip driver for (from /proc/pci):

  Bus  0, device   3, function  0:
    Ethernet controller: DEC DC21142 (rev 48).
      Medium devsel.  Fast back-to-back capable.  IRQ 24.  Master Capable.  Latency=32.  Min Gnt=20.Max Lat=40.
      I/O at 0x8800.
      Non-prefetchable 32 bit memory at 0xb000000.


PROBLEM: the tulip driver would not work...with 2.0.33 (and 2.0.103) it
gave me lots of transmit/receive failed errors and chose a bad interface
after a while, getting completely stuck.


SOLUTION: Patch the driver such that (it compiles and) insist on using the
user-requested interface.  It is beyond me why on earth would it ever not do
that - auto-detection should be an option, not forced!


INSTRUCTIONS for Linux 2.0.34:

1. Get the patched kernel sources as usual:

   <URL: ftp://gatekeeper.dec.com/pub/Digital/Linux-Alpha/Kernels/alpha-sources-2.0.34-0.1.tar.gz>

   (or get a pristine linux-2.0.34 and apply alpha-patches-2.0.34-0.1.gz from
   the same place yourself).

2. Get the miata-patched tulip.c (based on version 0.88) from

   <URL: ftp://ftp.ens-lyon.fr/pub/users/LIP/krisrose/Debian/Alpha/miata/tulip.c-0.88+loic>

   (and name it drivers/net/tulip.c and compile as you usually do, with
   tulip as a module).

3. Experiment with different "options=n" arguments when loading the tulip
   driver, and with different ports and cables to your hub...

   For me one port (of two) worked on the hub, with one cable (of three),
   and with the module load command

	insmod tulip options=11

   The hub is a plain 10baseT hub.

Cheers,
	Kristoffer

Encl: Loic's patch to tulip 0.88 making it respect user options more than
      just for a single try.

===========================================================================
--- tulip.c-0.88        Mon May 25 04:04:01 1998
+++ tulip.c-0.88+loic   Sun Jun 14 01:47:14 1998
@@ -1336,11 +1336,14 @@
        }
        /* Set the timer to switch to check for link beat and perhaps switch
           to an alternate media type. */
+if (tp->medialock) printk("Loic's patch active: remaining with user media type.\n");
+else {
        init_timer(&tp->timer);
        tp->timer.expires = RUN_AT(5*HZ);
        tp->timer.data = (unsigned long)dev;
        tp->timer.function = tulip_tbl[tp->chip_id].media_timer;
        add_timer(&tp->timer);
+}
 
        return 0;
 }
===========================================================================

Kristoffer Høgsbro Rose, Ph.D., prof.associé  <Kristoffer.Rose@ENS-Lyon.FR>
Laboratoire de l'Informatique du Parallélisme  équipe PLUME, bureau LR5-026
Ecole Normale Supérieure de Lyon; 46, Allée d'Italie; F-69364 Lyon 07 cedex
phone: +33(0)4 7272 8642; fax:...8080    <http://www.ens-lyon.fr/~krisrose>


--  
To UNSUBSCRIBE, email to debian-alpha-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org


Reply to: