Path: utzoo!mnetor!uunet!husc6!purdue!umd5!trantor.umd.edu!chris From: chris@trantor.umd.edu (Chris Torek) Newsgroups: comp.unix.wizards Subject: Re: How do I boot off of a 2nd controller? Message-ID: <2454@umd5.umd.edu> Date: 14 Mar 88 08:08:58 GMT References: <3661@bloom-beacon.MIT.EDU> <10627@mimsy.UUCP> <884@unmvax.unm.edu> Sender: ris@umd5.umd.edu Reply-To: chris@trantor.umd.edu (Chris Torek) Organization: University of Maryland, College Park Lines: 90 >>In article <3661@bloom-beacon.MIT.EDU> nessus@athena.mit.edu (Doug Alan) writes: >>>... boot a VAXstation-II from a disk drive on a second disk controller. >In article <10627@mimsy.UUCP> I answered: >>Ultrix may support several uda50 controllers on one bus. 4.2 and >>4.3 BSD do not. That is, 4.xBSD *standalone* drivers do not (an important distinction). In article <884@unmvax.unm.edu> mike@turing.UNM.EDU.UUCP (Michael I. Bushnell) writes: >4.3 BSD DOES support multiple uda controllers. All our Microvax-II's >have two controllers: RQDXn and something like an Emulex QD-32. Sure. But on the other hand, 4.3BSD does not have a working Microvax boot at all (which I completely forgot). You have to use whatever Ultrix boot loader you have. All of my comments only applied to those who modified the 4.3 code to work on their uVax-IIs (not many I guess). Sorry about the goof. >The slave is on the controller booted. Here is how you boot from the >second controller: >>>> b dub0 -- Read boot block from second controller, first disk > >Loading ra(0,0)boot -- Reading UNIX boot from first disk, first partition > of the SAME controller the boot block came from > >Boot >: ra(0,0)vmunix -- Load vmunix from first disk, first partition of the > SAME controller the boot block came from. > >We do this all the time. Perhaps Ultrix supports this. The 4.3+ boot code does not; again, this will be >>>b/3 dub0 // invoke boot block loader in ROM. // this works much as on 750s, except // that the `level 0 bootstrap' is a // header interpreted by the ROM. Boot // this is the max-7.5K-boot-block. : ra(0,1,0,0)vmunix // ctlr 1, drive 0, partition a. if you stick with what we have now. We have no idea how to find out which device the ROM used. Is this in the Extended RPB? Where? Here is what we do in /sys/vaxstand/srt0.c. If you know we can stop `guessing' at the boot device, tell me or Keith Bostic. entry: .globl entry nop; nop # .word 0x0101 mtpr $HIGH,$IPL # just in case #ifdef REL # we need to do special stuff on microvax II mfpr $SID,r0 cmpzv $24,$8,r0,$VAX_630 bneq 1f /* * Were we booted by VMB? If so, r11 is not boothowto, * but rather the address of the `Extended RPB' (see KA630 * User's Manual, pp 3-21). These tests were devised by * richl@tektronix, 11/10/87. */ cmpl (r11),r11 # if boothowto, r11 will be small bneq 1f # and these will not fault cmpl 4(r11),$0 bneq 1f cmpl 8(r11),$-1 bneq 1f tstl 0xc(r11) bneq 1f /* * Booted by VMB: get flags from extended rpb. * We can only guess at the boot device (here ra(0,0,0,0)). */ movl 0x30(r11),r11 movl $9,r10 # device = ra(0,0,0,0) 1: movl $RELOC,sp #else movl $RELOC-0x2400,sp #endif /* end of stuff related to boot devices on microvax */ -- In-Real-Life: Chris Torek, Univ of MD Computer Science, +1 301 454 7163 Domain: chris@mimsy.umd.edu Path: ...!uunet!mimsy!chris