SC(4) —
NAME
sc − IBM 9332 disks using the IBM Small Computer System Interface (SCSI) Adapter
SYNOPSIS
controller scc0 at iocc0 csr 0xf0000d52 priority 11
controller scc1 at iocc0 csr 0xf0000952 priority 12
disk sc0 at scc0 drive 0
disk sc1 at scc0 drive 1
disk sc2 at scc0 drive 2
disk sc3 at scc0 drive 3
disk sc4 at scc0 drive 4
disk sc5 at scc0 drive 5
disk sc6 at scc0 drive 6
disk sc7 at scc1 drive 0
disk sc8 at scc1 drive 1
disk sc9 at scc1 drive 2
disk sc10 at scc1 drive 3
disk sc11 at scc1 drive 4
disk sc12 at scc1 drive 5
disk sc13 at scc1 drive 6
DESCRIPTION
This driver supports the IBM 9332 disk unit, models 200, 220, 400, and 440 connected to an IBM Small Computer System Interface (SCSI) Adapter. The driver can support up to two adapter cards, each driving up to seven IBM 9332 disk units.
Files with minor device numbers 0 through 6 refer to partitions of drive 0; minor devices 7 through 13 refer to drive 1, and so on. The standard device names begin with “sc”, followed by the drive number and then a letter a-h for partitions 0-7, respectively. The drive number is the setting of the drive address switch in the back of the disk unit, plus 7 if the disk unit is connected to the second adapter. (See IBM 9332 Disk Unit, Installing, SA21-9804 for more information.)
The block files access the disk via the system’s normal buffering mechanism and may be read and written without regard to physical disk records. There is also a “raw” interface that provides for direct transmission between the disk and the user’s read or write buffer. A single read or write call results in exactly one I/O operation; therefore, raw I/O is more efficient when many words are transmitted. The names of the raw files conventionally begin with an extra r.
In raw I/O, counts should be multiples of 512 bytes (a disk sector). Likewise, seek(2) calls should specify multiples of 512 bytes. The user’s buffer should be aligned on a fullword boundary when the raw device is used.
DISK SUPPORT
The origin and size (in sectors) of the default partitions on each drive are as follows. The character “?” stands for a hex drive number in the range 0-d.
SCSI 200200 Mbyte SCSI disk unit partitions (Models 240, 260)
diskstartlengthcapacitycylinders
sc?a 1 15884 7.8 MB 1 - 54
sc?b 55 33440 16.3 MB 55 - 167
sc?c 0391016190.0 MB 0 - 1014
sc?d 168 15884 7.8 MB 168 - 221
sc?e 222 55936 27.3 MB 222 - 410
sc?f 411267880130.8 MB 411 - 1315
sc?g 168339808165.9 MB 168 - 1315
sc?h Not Used
SCSI 400400 Mbyte SCSI disk unit partitions (Models 440, 460)
diskstartlengthcapacitycylinders
sc?a 1 15884 7.8 MB 1 - 54
sc?b 55 66880 32.6 MB 55 - 280
sc?c 0782328381.9 MB 0 - 2642
sc?d 1266 15884 7.8 MB1266 - 1319
sc?e 1320307200150.0 MB1320 - 2357
sc?f 2358 82880 40.5 MB2358 - 2637
sc?g 1266406112198.3 MB1266 - 2637
sc?h 281291346142.3 MB 281 - 1265
It is unwise for all these special files to be present in one installation, because addresses overlap and protection becomes a sticky matter. The sc?a partition can be used for the root file system, the sc?b partition as a paging area, and the sc?c partition for access to the entire disk, including boot and configuration information at the start of the disk and bad-block and diagnostic regions at the end of the disk. The sc?c partition may be used as a filesystem. Standard partition tables are calculated using the diskpart(8) program. Non-standard disk partitions may be created using the minidisk(8R) utilities.
FILES
/dev/sc[0-9a-d][a-h]block files
/dev/rsc[0-9a-d][a-h]raw files
SEE ALSO
diskpart(8), minidisk(8R), newfs(8)
DIAGNOSTICS
SC%d: unexpected condition tag status. The hardware returned an interrupt for a transfer that has not been started.
SC%d: %s condition status (%r) %s. The disk unit returned an error condition code. The types, printed by the first %s, are CHECK, BUSY, INTER, RESCFT, and unknown. %x is the status bits returned by the disk unit, and the last %s is either READ or WRITE for the type of operation.
SC%d: last int tag (%d) (%d) The sc detected no interrupt for the operation attached to “tag” after an extended period of time.
OH NO SENSE command didn’t work (%)!!! Sc tried to do a sense data command to try to recover from an error, but the sense command failed.
During auto configuration, one of the following messages may appear on the console in recognition of the drive type:
sc %d: drive type (440) scsi 400
sc %d: drive type (460) scsi 400
sc %d: drive type (240) scsi 200
sc %d: drive type (260) scsi 200
sc %d: drive type (%s) unknown using scsi 200
After the auto configuration message, the following line is printed:
Vid Pid Model RLID ROSPL RAMPL (%s)
Vid is the vendor ID of the sc device attached (should be IBM). Pid is the product ID, 9332. Model is the model number (440, 460, 240, 260). RLID is the ros level (read-only storage). ROSPL is the ros patch level. RAMPL is the ram patch level (random access memory).
BUGS
In raw I/O read(2) and write(2) truncate file offsets to 512-byte block boundaries, and write scribbles zeroes on the tail of incomplete blocks. Thus, in programs likely to access raw devices, read, write, and lseek(2) should always deal in 512-byte multiples.
In raw I/O, the buffer must be aligned on a fullword boundary.
There is no standalone sc driver.
You cannot boot from the sc.
You cannot dump a vmcore to the sc.
PRPQs 5799-WZQ/5799-PFF: IBM/4.3 — July 1987