rick@seismo.CSS.GOV (Rick Adams) (03/17/87)
Index: sys/vax/autoconf.c 4.3BSD Description: 4.3 BSD only supports 4 MBAs. Repeat-By: Get a lot of MBAs and try and configure them. Fix: Apply the following patch. This will support 6 MBAS. For more than that, you must make similar changes. The changes are straightforward. Finding the places to change is a bit of a treasure hunt. *** /tmp/,RCSt1024908 Tue Mar 17 14:43:24 1987 --- /sys/vax/locore.s Thu Feb 19 19:21:53 1987 *************** *** 145,150 **** --- 145,154 ---- PANIC("wtimo"); #if NMBA > 0 + SCBVEC(mba5int): + PUSHR; incl _intrcnt+I_MBA5; pushl $5; brb 1f + SCBVEC(mba4int): + PUSHR; incl _intrcnt+I_MBA4; pushl $4; brb 1f SCBVEC(mba3int): PUSHR; incl _intrcnt+I_MBA3; pushl $3; brb 1f SCBVEC(mba2int): *** /tmp/,RCSt1024908 Tue Mar 17 14:43:31 1987 --- /sys/vax/autoconf.c Wed Feb 25 18:08:57 1987 *************** *** 58,66 **** * as necessary. */ #if NMBA > 0 ! int (*mbaintv[4])() = { Xmba0int, Xmba1int, Xmba2int, Xmba3int }; ! #if NMBA > 4 ! Need to expand the table for more than 4 massbus adaptors #endif #endif #if defined(VAX780) || defined(VAX8600) --- 58,72 ---- * as necessary. */ #if NMBA > 0 ! int (*mbaintv[6])() = { Xmba0int, Xmba1int, Xmba2int, Xmba3int ,Xmba4int, Xmba5int}; ! #if NMBA > 6 ! These sources only support 6 massbus adaptors. The limit ! can be found in the following places: ! the above table. ! autoconf.c ! locore.s ! ../vaxmba/mbavar.h ! /usr/src/etc/config/mkglue.c #endif #endif #if defined(VAX780) || defined(VAX8600) *** /tmp/,RCSt1024939 Tue Mar 17 14:44:36 1987 --- /sys/vaxmba/mbavar.h Tue Feb 24 14:58:54 1987 *************** *** 137,143 **** int nummba; #if NMBA > 0 struct mba_hd mba_hd[NMBA]; ! extern Xmba0int(), Xmba1int(), Xmba2int(), Xmba3int(); extern struct mba_device mbdinit[]; extern struct mba_slave mbsinit[]; --- 137,143 ---- int nummba; #if NMBA > 0 struct mba_hd mba_hd[NMBA]; ! extern Xmba0int(), Xmba1int(), Xmba2int(), Xmba3int(), Xmba4int(), Xmba5int(); extern struct mba_device mbdinit[]; extern struct mba_slave mbsinit[]; *** /tmp/,RCSt1025056 Tue Mar 17 14:48:29 1987 --- /usr/src/etc/config/mkglue.c Tue Feb 24 13:45:54 1987 *************** *** 111,117 **** static char *vaxinames[] = { "clock", "cnr", "cnx", "tur", "tux", ! "mba0", "mba1", "mba2", "mba3", "uba0", "uba1", "uba2", "uba3" }; static struct stdintrs { --- 111,117 ---- static char *vaxinames[] = { "clock", "cnr", "cnx", "tur", "tux", ! "mba0", "mba1", "mba2", "mba3", "mba4", "mba5", "uba0", "uba1", "uba2", "uba3" }; static struct stdintrs {