Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ () — UMIPS/BSD System Programmer's Package 2.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

 

dkip − Interphase SMD disk controller device

{
"dkip",_dkipinit,_dkipopen,
_dkipstrategy,_nulldev,_dkipioctl,
DTTYPE_BLOCK,
DTFS_AUTO,"Interphase SMD disk controller"
}
is the interface to the Interphase SMD disk controller device.
supports multiple controllers with a maximum of two disks per controller.
For a list of the many supported disk drives via this interface,
refer to the Interphase SMD disk controller User’s Guide.
Disk devices on MIPS computers systems contain a volume header that
describes the contents of the device,
parameters of the physical disk drive,
and the partition layout of the device.
The volume header is a block located at the beginning of all disk media.
Refer to
for details on the disk volume header format.
supports multiple disk controllers with control registers
relative to VME A16 Supervisor address space.
The address for controller 0 is hardwired at 0x8600,
and the address for controller 1 is hardwired at 0x8800.
The user may access other
device control registers by specifying the negative of the address
rather than the controller number.
supports the following ioctls:
Gets the disk volume header for the
device which is open on
and copies it to the
pointed to by
Indicates if exception was via "utlbmiss", or
general exception.
Literals EXCEPT_UTLB, and EXCEPT_NORM are
defined in <saio/saioctl.h>
_badvaddr_saveR2000 system coproc. badvaddr register
_cause_saveR2000 system coproc. cause register
_sp_savestack pointer at time of exception
_sr_saveR2000 system coproc. status register
_stack_modestack in use at time of exception
Literals MODE_NORMAL and MODE_FAULT are
defined in <saio/saioctl.h>

Sets the volume header information used by the driver to that pointed to by only changes the information used by the disk driver software, it does NOT change the volume header information on the disk itself.  Gets the controller information for the device associated with descriptor and copies it to the pointed to by Enables/diables the use of ECC by the disk controller on the device associated with the descriptor ECC is the error correction algorithm the disk controller applies to erroneous data fields after all retries and/or reseeks have been exhausted.  If the integer pointed to by is zero then ECC is disabled, otherwise ECC is enabled.  Allows formatting of a track, mapping of a track, mapping of a sector, and slipping of a sector on the device associated with the descriptor The specific operation and any other information required is relayed through the pointed to by Checks one or more logically sequential sectors, of previously written data, on the device associated with the descriptor for ECC errors in a non-distructive manner.  The logical block number and count are indicated in the pointed to by Causes the power-up diagnostics to be executed on the device associated with the descriptor points to the which contains the necessary information for this operation.  Causes the media defect information contained on the specified track of the device associated with the descriptor to be read.  The cylinder and track to read is specified in the pointed to by After the operation is performed, the media defect information is placed in the pointed to by The following diagnostics are printed by the driver: ip bad unit An invalid unit number was specified.  ip bad controller number An invalid controller number was specified.  ip bad partition An invalid partition number was specified.  The partition number must be in the range 0 through no interphase controller at 0x%x No device responded to references to the control registers at the address shown.  ip(%d, %d, %d): can’t read volume header A volume header was not present on the device indicated, or was incorrectly formatted, or a volume header checksum error was detected.  The first of the three numbers shown is the controller number, the second is the unit number, and the third is the partition number.  ip bad unit number (volume) The unit number indicates a multi-volume device; however, the volume header information does not indicate that multiple volumes are allowed on this device.  ip bad partition The partition entry in the volume header for the specified partition indicates that the partition is empty.  read beyond end of partition A read is requested beyond the end of the partition.  cc not multiple of sector size The specified character count for a read or write operation is not a multiple of the sector size.  ip error: csr=%r This is the beginning of the printed information when some type of device error occurs.  The control and status register for the controller, information pertaining to the type of error, and drive status information is printed.  ip(%d, %d, %d) FAILS SELF-DIAGNOSTIC The device failed during it’s power-up diagnostic sequence.  waiting for ip(%d, %d, %d) to come ready...  The driver is waiting for the device to co

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026