mlewis@dolphin.tcspa.ibm.com (Mark S. Lewis) (11/16/89)
Subject: Fix for 6152 lobe fault problem IBM/4.3
Index: sys/ca_atr/if_lan.c IBM/4.3
Description:
If a lobe fault condition occurs (eg. disconnection), the
adapter is not opened properly. This leaves the network
unreachable until Unix is rebooted.
Fix:
This patch fixes the lobe fault problem.
First apply patch V1.11, if you have not already done so.
Then apply the following patch to the Unix token-ring driver.
*** if_lan.c Tue Nov 14 16:18:22 1989
--- if_lan.c.fix Wed Nov 15 09:41:42 1989
***************
*** 448,453 ****
--- 448,456 ----
register struct tr_softc *trs = &tr_softc[unit];
register struct ifnet *ifp = &trs->trs_if;
+ struct iocc_device *iod = trinfo[unit];
+ /* get pointer to device I/O space */
+ struct trdevice *addr = (struct trdevice *)((unsigned
int)iod->iod_addr & 0xffffff);
/* holds status read from adapter status register */
register unsigned char status;
***************
*** 723,728 ****
--- 726,732 ----
printf("lan%d: SIGNAL LOSS/LOBE FAULT\n",
unit);
+ trprobe(addr); /* hard reset */
ifp->if_flags &= ~IFF_RUNNING;
ifp->if_flags &= ~IFF_UP;
trs->wire_fault = 0x01;
=====----- Mark S. Lewis, IBM AWD Palo Alto -----======
inet: mlewis%ibmsupt@uunet.uu.net (415) 855-4486
uucp: uunet!ibmsupt!mlewis IBM Tie Line: 465-4486