1*61594Sbostic.\" Copyright (c) 1980, 1991, 1993
2*61594Sbostic.\"	The Regents of the University of California.  All rights reserved.
320635Smckusick.\"
447674Scael.\" %sccs.include.redist.man%
520635Smckusick.\"
6*61594Sbostic.\"     @(#)autoconf.4	8.1 (Berkeley) 06/05/93
747674Scael.\"
847674Scael.Dd
947674Scael.Dt AUTOCONF 4
1047674Scael.Os BSD 4
1147674Scael.Sh NAME
1247674Scael.Nm autoconf
1347674Scael.Nd "diagnostics from the autoconfiguration code"
1447674Scael.Sh DESCRIPTION
1547674ScaelWhen
1647674Scael.Tn UNIX
1747674Scaelbootstraps it probes the innards of the machine
1847674Scaelon which it is running and
1947674Scaellocates controllers, drives, and other devices.
2047674ScaelEach item found is recorded on the console.
2147674ScaelThis procedure is driven by a system
2220635Smckusickconfiguration table which is processed by
2347674Scael.Xr config 8
2420635Smckusickand compiled into each kernel.
2547674Scael.Pp
2647674ScaelOn the
2747674Scael.Tn VAX ,
2847674Scaeldevices in
2947674Scael.Tn NEXUS
3047674Scaelslots are normally noted, thus memory controllers,
3147674Scael.Tn UNIBUS
3247674Scaeland
3347674Scael.Tn MASSBUS
3447674Scaeladaptors.  Devices which are not supported which
3547674Scaelare found in
3647674Scael.Tn NEXUS
3747674Scaelslots are noted also.
3847674ScaelThe Q-bus on the
3947674Scael.Tn MICROVAX
4047674Scaelis configured in the same way as the
4147674Scael.Tn UNIBUS.
4247674Scael.Pp
4347674Scael.Tn MASSBUS
4447674Scaeldevices are located by a very deterministic procedure since
4547674Scael.Tn MASSBUS
4647674Scaelspace is completely probe-able.  If devices exist which
4720635Smckusickare not configured they will be silently ignored; if devices exist of
4820635Smckusickunsupported type they will be noted.
4947674Scael.Pp
5047674Scael.Tn UNIBUS
5147674Scaeldevices are located by probing to see if their control-status
5220635Smckusickregisters respond.  If not, they are silently ignored.  If the control
5320635Smckusickstatus register responds but the device cannot be made to interrupt,
5420635Smckusicka diagnostic warning will be printed on the console and the device
5520636Smckusickwill not be available to the system.
5647674Scael.Pp
5728228SkarelsNormally, the system uses the disk from which it was loaded as the root
5828228Skarelsfilesystem.
5928228SkarelsIf that is not possible,
6028228Skarelsa generic system will pick its root device
6147674Scaelas the
6247674Scael.Dq best
6347674Scaelavailable device
6447674Scael.Pf ( Tn MASSBUS
6547674Scaeldisks are better than
6647674Scael.Tn SMD UNIBUS
6747674Scaeldisks are better than
6847674Scael.Tn RK07 Ns s ;
6947674Scaelthe device must be drive 0
7028228Skarelsto be considered).
7147674ScaelIf such a system is booted with the
7247674Scael.Dv RB_ASKNAME
7347674Scaeloption (see
7447674Scael.Xr reboot 2 ) ,
7520635Smckusickthen the name of the root device is read from the console terminal at boot
7620635Smckusicktime, and any available device may be used.
7747674Scael.Sh DIAGNOSTICS
7847674Scael.Bl -diag
7947674Scael.It cpu type %d not configured.
8047674ScaelYou tried to boot
8147674Scael.Tn UNIX
8247674Scaelon a
8347674Scael.Tn CPU
8447674Scaeltype which it doesn't (or at least this compiled version of
8547674Scael.Tn UNIX
8647674Scaeldoesn't)
8720635Smckusickunderstand.
8847674Scael.Pp
8947674Scael.It mba%d at tr%d.
9047674ScaelA
9147674Scael.Tn MASSBUS
9247674Scaeladapter was found in
9347674Scael.Ql tr%d
9447674Scael(the
9547674Scael.Tn NEXUS
9647674Scaelslot number).
9747674Scael.Tn UNIX
9847674Scaelwill call it
9947674Scael.Ql mba%d .
10047674Scael.Pp
10147674Scael.It %d mba's not configured.
10247674ScaelMore
10347674Scael.Tn MASSBUS
10447674Scaeladapters were found on
10520635Smckusickthe machine than were declared in the machine configuration; the excess
10647674Scael.Tn MASSBUS
10747674Scaeladapters will not be accessible.
10847674Scael.Pp
10947674Scael.It uba%d at tr%d.
11047674ScaelA
11147674Scael.Tn UNIBUS
11247674Scaeladapter was found in
11347674Scael.Ql tr%d
11447674Scael(the
11547674Scael.Tn NEXUS
11647674Scaelslot number).
11747674Scael.Tn UNIX
11847674Scaelwill call it
11947674Scael.Ql uba%d .
12047674Scael.Pp
12147674Scael.It dr32 unsupported (at tr %d).
12247674ScaelA
12347674Scael.Tn DR Ns 32
12447674Scaelinterface was found in
12547674Scaela
12647674Scael.Tn NEXUS ,
12747674Scaelfor which
12847674Scael.Tn UNIX
12947674Scaeldoes not have a driver.
13047674Scael.Pp
13147674Scael.It ci unsupported (at tr %d).
13247674ScaelA
13347674Scael.Tn CI
13447674Scaelinterface was found in
13547674Scaela
13647674Scael.Tn NEXUS ,
13747674Scaelfor which
13847674Scael.Tn UNIX
13947674Scaeldoes not have a driver.
14047674Scael.Pp
14147674Scael.It mcr%d at tr%d.
14247674ScaelA memory controller was found in
14347674Scael.Ql tr%d
14447674Scael(the
14547674Scael.Tn NEXUS
14647674Scaelslot number).
14747674Scael.Tn UNIX
14847674Scaelwill call it
14947674Scael.Ql mcr%d .
15047674Scael.Pp
15147674Scael.It 5 mcr's unsupported.
15247674Scael.Tn UNIX
15347674Scaelsupports only 4 memory controllers
15447674Scaelper
15547674Scael.Tn CPU .
15647674Scael.Pp
15747674Scael.It mpm unsupported (at tr%d).
15847674ScaelMulti-port memory is unsupported
15947674Scaelin the sense that
16047674Scael.Tn UNIX
16147674Scaeldoes not know how to poll it for
16247674Scael.Tn ECC
16347674Scaelerrors.
16447674Scael.Pp
16547674Scael.It %s%d at mba%d drive %d.
16647674ScaelA tape formatter or a disk was found
16747674Scaelon the
16847674Scael.Tn MASSBUS ;
16947674Scaelfor disks
17047674Scael.Ql %s%d
17147674Scaelwill look like
17247674Scael.Dq Li hp0 ,
17347674Scaelfor tape formatters
17447674Scaellike
17547674Scael.Dq Li ht1 .
17647674ScaelThe drive number comes from the unit plug on the drive
17747674Scaelor in the
17847674Scael.Tn TM
17947674Scaelformatter
18047674Scael.Pf ( Em not
18147674Scaelon the tape drive; see below).
18247674Scael.Pp
18347674Scael.It %s%d at %s%d slave %d.
18447674Scael(For
18547674Scael.Tn MASSBUS
18647674Scaeldevices).
18747674ScaelWhich would look like
18847674Scael.Dq Li tu0 at ht0 slave 0 ,
18947674Scaelwhere
19047674Scael.Dq Li tu0
19147674Scaelis the name for the tape device and
19247674Scael.Dq Li ht0
19347674Scaelis the name
19420635Smckusickfor the formatter.  A tape slave was found on the tape formatter at the
19520635Smckusickindicated drive number (on the front of the tape drive).
19647674Scael.Ux
19747674Scaelwill call the device, e.g.,
19847674Scael.Dq Li tu0 .
19947674Scael.Pp
20047674Scael.It "%s%d at uba%d csr %o vec %o ipl %x."
20147674ScaelThe device
20247674Scael.Ql %s%d ,
20347674Scaele.g.
20447674Scael.Dq Li dz0
20547674Scaelwas found on
20647674Scael.Ql uba%d
20747674Scaelat control-status register address
20847674Scael.Ql \&%o
20947674Scaeland with
21047674Scaeldevice vector
21147674Scael.Ql \&%o .
21247674ScaelThe device interrupted at priority level
21347674Scael.Ql \&%x .
21447674Scael.Pp
21547674Scael.It %s%d at uba%d csr %o zero vector.
21647674ScaelThe device did not present
21720635Smckusicka valid interrupt vector, rather presented 0 (a passive release condition)
21820635Smckusickto the adapter.
21947674Scael.Pp
22047674Scael.It %s%d at uba%d csr %o didn't interrupt.
22147674ScaelThe device did not interrupt,
22220635Smckusicklikely because it is broken, hung, or not the kind of device it is advertised
22320635Smckusickto be.
22447674Scael.Pp
22547674Scael.It %s%d at %s%d slave %d.
22647674Scael(For UNIBUS devices).
22747674ScaelWhich would look like
22847674Scael.Dq Li up0 at sc0 slave 0 ,
22947674Scaelwhere
23047674Scael.Dq Li up0
23147674Scaelis the name of a disk drive and
23247674Scael.Dq Li sc0
23347674Scaelis the name
23447674Scaelof the controller.  Analogous to
23547674Scael.Tn MASSBUS
23647674Scaelcase.
23747674Scael.El
23847674Scael.Sh SEE ALSO
23947674Scael.Xr intro 4 ,
24047674Scael.Xr boot 8 ,
24147674Scael.Xr config 8
24247674Scael.Sh HISTORY
24347674ScaelThe
24447674Scael.Nm
24547674Scaelfeature
24647674Scaelappeared in
24747674Scael.Bx 4.1 .
248