dhb@rayssd.RAY.COM (David H. Brierley) (10/09/87)
The title pretty much says it all. Does anyone have a working TCP/IP networking device driver for the DEC DELUA board for 4.2BSD? Up to this point we have been using a home-grown driver for an Ungermann-Bass NIU150 hooked up via a dr11-w but due to the magic of accidental over-ordering I suddenly am in possesion of a spare DELUA board. I want to use the DELUA because we are going to be upgrading to 4.3 (actually 4.3+NFS from mtxinu) "real soon now" and this way I won't have to go thru the pain of porting the driver for the UB interface to 4.3. The only problem is that I now have no way of testing the board until we convert to 4.3 and I really dont want to bring up 4.3 with an untested network interface. In the event that nobody has a DELUA driver for 4.2, can anyone provide useful hints for back-porting the 4.3 driver? (Yes, I realize that this is probably as much work as porting the UB driver to 4.3 but I think the end result will be worth it.) Thanks in advance for any help you can provide. -- David H. Brierley Raytheon Submarine Signal Division 1847 West Main Road Portsmouth, RI 02871 Phone: (401)-847-8000 x4073 Internet: dhb@rayssd.ray.com Uucp: {cbosgd, gatech, linus, mirror, necntc, uiucdcs} !rayssd!dhb
ldg@necssd.NEC.COM (Doug Gibbons) (10/18/87)
In article <1618@rayssd.RAY.COM>, dhb@rayssd.RAY.COM (David H. Brierley) writes: > The title pretty much says it all. Does anyone have a working TCP/IP > networking device driver for the DEC DELUA board for 4.2BSD? Up to I am in the process of installing a VAX 8650 in Dallas which will be running 4.3 BSD. In this system we will be using a 4.3 BSD DELUA driver which was first developed by DEC for NEC corporate in Japan. We are getting a license for this same driver for our new site in the states. Since the driver already exists, you may be able to license it from DEC. I've talked to my local DEC sales rep, and he suggests you call your local DEC sales rep, and get him to call mine (Gil Jones, (214) 888-2528). If this fails, you may be able to convert an existing DEUNA driver (assuming you have one) using the info below that I've gleaned from the net: -------------------------------------------------------------------------------- Path: necssd!necntc!husc6!rutgers!ucla-cs!zen!ucbvax!LANL.GOV!cpw%sneezy From: cpw%sneezy@LANL.GOV (C. Philip Wood) Newsgroups: comp.protocols.tcp-ip Subject: DELUA interface driver needed Message-ID: <8708201947.AA11834@sneezy.lanl.gov> Date: 20 Aug 87 19:47:14 GMT Sender: daemon@ucbvax.BERKELEY.EDU Distribution: world Organization: The ARPA Internet Lines: 5 I need a 4.3BSD DELUA driver. The DEUNA we use currently wedges. As I understand it, there is no software in the world which will make it work any better. So its time to trade up. -Phil Wood, (cpw@lanl.gov) -------------------------------------------------------------------------------- Path: necssd!necntc!husc6!sri-unix!rutgers!ames!ucbcad!ucbvax!DECVAX.DEC.COM!templin From: templin@DECVAX.DEC.COM (Fred Templin) Newsgroups: comp.protocols.tcp-ip Subject: Re: DELUA interface driver needed Message-ID: <8708211505.AA13694@decvax.dec.com> Date: 21 Aug 87 15:05:32 GMT Sender: daemon@ucbvax.BERKELEY.EDU Distribution: world Organization: The ARPA Internet Lines: 13 Hi! The DELUA should be plug-compatible with the 4.3BSD if_de.c driver. I work with the ULTRIX network drivers, and the only change we've made for DELUA's is a check in the "deprobe" routine to make sure the board has passed power- up self test before forcing an interrupt. I don't believe this is done in the 4.3BSD driver, but I really don't see this as being a problem. I'd suggest just having field service install the DELUA and reboot (but, of course, I can't be held responsible!) Fred L. Templin ( templin@decvax.dec.com ) -------------------------------------------------------------------------------- Path: necssd!necntc!husc6!uwvax!rutgers!ames!ucbcad!ucbvax!UCBVAX.BERKELEY.EDU!karels%okeeffe From: karels%okeeffe@UCBVAX.BERKELEY.EDU (Mike Karels) Newsgroups: comp.protocols.tcp-ip Subject: Re: DELUA interface driver needed Message-ID: <8708211920.AA05016@okeeffe.Berkeley.EDU> Date: 21 Aug 87 19:20:17 GMT Sender: daemon@ucbvax.BERKELEY.EDU Distribution: world Organization: The ARPA Internet Lines: 97 Here are the changes Donn Seeley put into the 4.3 driver to wait for self test to complete on DELUA's. As Fred Templin says, there really shouldn't be any change required to the DEUNA driver for use with the DELUA, but the self-test may take longer than the 4.3 driver will wait. Mike *** /nbsd/sys/vaxif/if_de.c Thu Jun 5 17:02:59 1986 --- if_de.c Fri Jul 18 17:48:29 1986 *************** *** 5,7 **** * ! * @(#)if_de.c 7.1 (Berkeley) 6/5/86 */ --- 5,7 ---- * ! * @(#)if_de.c 7.2 (Berkeley) 7/18/86 */ *************** *** 125,126 **** --- 125,142 ---- + /* + * Make sure self-test is finished before we screw with the board. + * Self-test on a DELUA can take 15 seconds (argh). + */ + for (i = 0; + i < 160 && + (addr->pcsr0 & PCSR0_FATI) == 0 && + (addr->pcsr1 & PCSR1_STMASK) == STAT_RESET; + ++i) + DELAY(100000); + if ((addr->pcsr0 & PCSR0_FATI) != 0 || + (addr->pcsr1 & PCSR1_STMASK) != STAT_READY) + return(0); + + addr->pcsr0 = 0; + DELAY(100); addr->pcsr0 = PCSR0_RSET; *************** *** 148,149 **** --- 164,166 ---- register struct dedevice *addr = (struct dedevice *)ui->ui_addr; + int csr1; *************** *** 155,156 **** --- 172,186 ---- /* + * What kind of a board is this? + * The error bits 4-6 in pcsr1 are a device id as long as + * the high byte is zero. + */ + csr1 = addr->pcsr1; + if (csr1 & 0xff60) + printf("de%d: broken\n", ui->ui_unit); + else if (csr1 & 0x10) + printf("de%d: delua\n", ui->ui_unit); + else + printf("de%d: deuna\n", ui->ui_unit); + + /* * Reset the board and temporarily map *************** *** 158,159 **** --- 188,191 ---- */ + addr->pcsr0 = 0; /* reset INTE */ + DELAY(100); addr->pcsr0 = PCSR0_RSET; *************** *** 247,248 **** --- 279,282 ---- addr->pcsr3 = (incaddr >> 16) & 0x3; + addr->pclow = 0; /* reset INTE */ + DELAY(100); addr->pclow = CMD_GETPCBB; *************** *** 298,301 **** ds->ds_if.if_flags |= IFF_RUNNING; - destart(unit); /* queue output packets */ addr->pclow = PCSR0_INTE; /* avoid interlock */ ds->ds_flags |= DSF_RUNNING; /* need before de_setaddr */ --- 332,335 ---- ds->ds_if.if_flags |= IFF_RUNNING; addr->pclow = PCSR0_INTE; /* avoid interlock */ + destart(unit); /* queue output packets */ ds->ds_flags |= DSF_RUNNING; /* need before de_setaddr */ *************** *** 741,742 **** --- 775,779 ---- ds->ds_flags & DSF_RUNNING) { + ((struct dedevice *) + (deinfo[ifp->if_unit]->ui_addr))->pclow = 0; + DELAY(100); ((struct dedevice *) -------------------------------------------------------------------------------- Path: necssd!necntc!husc6!rutgers!ames!hc!tomlin From: tomlin@hc.DSPO.GOV (Bob Tomlinson) Newsgroups: comp.protocols.tcp-ip Subject: Re: DELUA interface driver needed Message-ID: <7793@hc.DSPO.GOV> Date: 1 Jan 88 01:46:18 GMT References: <8708211505.AA13694@decvax.dec.com> Distribution: world Organization: Los Alamos National Laboratory Lines: 28 in article <8708211505.AA13694@decvax.dec.com>, templin@DECVAX.DEC.COM (Fred Templin) says: > The DELUA should be plug-compatible with the 4.3BSD if_de.c driver. It isn't (*exactly*). >I work > with the ULTRIX network drivers, and the only change we've made for DELUA's > is a check in the "deprobe" routine to make sure the board has passed power- > up self test before forcing an interrupt. I don't believe this is done in the > 4.3BSD driver, but I really don't see this as being a problem. It is a problem. The DELUA takes a LONG time to run its self-check. On Unibus reset it runs its self-check. So there are two ways to get it up: 1) Fix the probe routine to wait until the device is back from self test (or at least DELAY a long time so you're sure it's done with the self check) before trying to get it to interrupt. or 2) Boot the kernel by (on a 780) B ANY and by the time you can type in the name of your kernel and hit return the DELUA's self check will be done. Of course this isn't convient in a long term, but you can at least get the machine up to go in and fix the source. bob -- Bob Tomlinson -- tomlin@hc.dspo.gov -- (505) 667-8495 Los Alamos National Laboratory -- MEE-10/Data Systems -------------------------------------------------------------------------------- -- Doug Gibbons @ NEC America, Inc. necntc!necssd!gibbons (214) 580-9334