[Go to CFHT Home Page] Man Pages
Back to Software Index  BORDER=0Manpage Top Level
    ipi(7D) manual page Table of Contents

Name

ipi, id, is, pn, ipi3sc - IPI driver

Synopsis

pn@4d,0x1080000/ipi3sc@board-num,0/id@facility,0:partition

Availability

SPARC

Only available on Sun-4/370, Sun-4/400, and SPARCsystem 600MP series systems.

Description

The driver for IPI disk devices consists of several components: an IPI controller driver (pn and ipi3sc), and a facility driver (id). Each of these driver modules may have an associated configuration file, which lives in the same directory as the driver module. See driver.conf(4) and vme(4) for the interpretation of the contents of these files.

The block files access the disk using 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 usually results in one I/O operation; therefore, raw I/O is considerably more efficient when many words are transmitted. The physical names for the raw files conventionally have ‘,raw’ appended to them. The logical names for the raw files live in the /dev/rdsk directory, as usual.

In raw I/O, counts should be a multiple of 512 bytes (a disk sector). Likewise directory(3C) calls should specify a multiple of 512 bytes. Depending on the channel adaptor, the buffer for raw reads or writes may be required to be on a 2-byte or 4-byte boundary.

Partition 0 is normally used for the root file system on a disk, partition 1 as a paging area (for example, swap), and partition 2 for backing up the entire disk. Partition 2 normally maps the entire disk and may also be used as the mount point for secondary disks in the system. The rest of the disk is normally partition 6. For the primary disk, the user file system is located here.

The ioctl() interfaces described in dkio(7I) and hdio(7I) are supported by this driver. The HDKIOCSCMD ioctl can be used to issue certain IPI commands to the drive. The argument structure is:


struct hdk_cmd {
    u_short    hdkc_cmd;    /* command to be executed */
    int    hdkc_flags;    /* execution flags */
    daddr_t    hdkc_blkno;    /* disk address for command */
    int    hdkc_secnt;    /* sector count for command */
    caddr_t    hdkc_bufaddr;    /* user’s buffer address */
    u_int    hdkc_buflen;    /* size of user’s buffer */
};

The lower 8-bits of the hdkc_cmd field indicate one of the supported commands listed below. The upper 8-bits indicate the IPI Opcode modifier. These commands are defined in <sys/ipi3sc.h>. Block numbers are not remapped by the partition map when these commands are used.

The supported commands are:

IP_READ
IP_WRITE
Read or write data. The addressing is always by logical block (ignoring [a-h] logical partition information); the Opcode modifier is ignored.
IP_READ_DEFLIST
IP_WRITE_DEFLIST
Read or write one of the defect lists. The defect list is selected by the Opcode modifier in bits <15:8> of the hdkc_cmd.
IP_FORMAT
Format a range of cylinders. For this command, the block number and sector count fields must both be a multiple of the number of blocks per cylinder. The hdk_buflen field must be zero for this command.
IP_REALLOC
Reallocate a block. The controller attempts to recover the data from the old block being reallocated. If the old data cannot be recovered, a conditional success status is presented and a message may be printed. The hdk_buflen field must be zero for this command.

Disk Support

This driver handles all supported IPI drives by reading controller attributes and a label from sector 0 of the drive which describes the disk geometry and partitioning.

Files

/kernel/drv/pn
kernel module
/kernel/drv/ipi3sc
kernel module
/kernel/drv/id
kernel module
/kernel/drv/pn.conf
driver configuration file
/kernel/drv/ipi3sc.conf
driver configuration file
/kernel/drv/id.conf
driver configuration file
/dev/dsk/cXtYd0sZ
block files, controller X, facility Y, slice Z
/dev/rdsk/cXtYd0sZ
raw files, controller X, facility Y, slice Z

See Also

format(1M) , mount(1M) , directory(3C) , driver.conf(4) , vfstab(4) , vme(4) , dkio(7I) , hdio(7I)

Notes

The pn.conf and ipi3sc.conf files are only required on Sun-4/370 and Sun-4/490 systems.


Table of Contents