Subject: Re: Sun-3/50 port -- SCSI problems (Oops!)
To: None <gwr@mc.com>
From: Perry Hutchison <perryh@pluto.rain.com>
List: port-sun3
Date: 11/09/1994 22:32:28
> From: gwr@jericho.mc.com (Gordon W. Ross)
> Date: Wed, 9 Nov 94 16:39:26 EST
> 
> SCSI Id 	Unix device	PROM device (these are hex :-)
> 0		/dev/sd0x	sd(0,0,0)
> 1		/dev/sd2x	sd(0,8,0)
> 2		/dev/sd4x	sd(0,10,0)
> 3		/dev/sd6x	sd(0,18,0)
> 
> Then, if you have a second SCSI controller, it uses:
> 
> SCSI Id         Unix device     PROM device
> 0               /dev/sd1x       sd(1,0,0)
> 1               /dev/sd3x       sd(1,8,0)
> 2               /dev/sd5x       sd(1,10,0)
> 3               /dev/sd7x       sd(1,18,0)
> 
> Yeah, this naming scheme is strange...  Blame Sun...

Historical baggage is involved.  The sun3's were originally designed
to use SCSI=>MFM or SCSI=>ESDI bridge controllers, which in theory
would allow for as many as 8 "units" on a single SCSI target (although
the most I've heard of actually being implemented was 4 units, on an
Adaptec SCSI=>MFM board similar to the ACB4000).  The PROM addressing
scheme was set up so as to allow for the 8 possible units.

Meanwhile, the devices actually used in the sun3 shoeboxes supported
two units per target, so the "generic" kernels for early SunOS were
configured:

Target   Unit   Unix device    PROM device
   0       0    /dev/[r]sd0x    sd(0,0,0)
   0       1    /dev/[r]sd1x    sd(0,1,0)
   1       0    /dev/[r]sd2x    sd(0,8,0)
   1       1    /dev/[r]sd3x    sd(0,9,0)

With the advent of embedded SCSI, the non-zero unit numbers are no
longer encountered; so evidently someone has decided to reuse the
odd-numbered sdN numbers for a second controller.