|
|
1.1 ! root 1: /* @(#)dkio.h 1.1 86/02/03 SMI */ ! 2: ! 3: /* ! 4: * Copyright (c) 1983 by Sun Microsystems, Inc. ! 5: */ ! 6: ! 7: /* ! 8: * Structures and definitions for disk io control commands ! 9: */ ! 10: ! 11: /* Disk identification */ ! 12: struct dk_info { ! 13: int dki_ctlr; /* controller address */ ! 14: short dki_unit; /* unit (slave) address */ ! 15: short dki_ctype; /* controller type */ ! 16: short dki_flags; /* flags */ ! 17: }; ! 18: /* controller types */ ! 19: #define DKC_UNKNOWN 0 ! 20: #define DKC_SMD2180 1 ! 21: #define DKC_WDC2880 2 ! 22: #define DKC_SMD2181 3 ! 23: #define DKC_XY440 4 ! 24: #define DKC_DSD5215 5 ! 25: #define DKC_XY450 6 ! 26: #define DKC_SCSI 7 ! 27: ! 28: /* flags */ ! 29: #define DKI_BAD144 0x01 /* use DEC std 144 bad sector fwding */ ! 30: #define DKI_MAPTRK 0x02 /* controller does track mapping */ ! 31: #define DKI_FMTTRK 0x04 /* formats only full track at a time */ ! 32: #define DKI_FMTVOL 0x08 /* formats only full volume at a time */ ! 33: ! 34: /* Definition of a disk's geometry */ ! 35: struct dk_geom { ! 36: unsigned short dkg_ncyl; /* # of data cylinders */ ! 37: unsigned short dkg_acyl; /* # of alternate cylinders */ ! 38: unsigned short dkg_bcyl; /* cyl offset (for fixed head area) */ ! 39: unsigned short dkg_nhead; /* # of heads */ ! 40: unsigned short dkg_bhead; /* head offset (for Larks, etc.) */ ! 41: unsigned short dkg_nsect; /* # of sectors per track */ ! 42: unsigned short dkg_intrlv; /* interleave factor */ ! 43: unsigned short dkg_gap1; /* gap 1 size */ ! 44: unsigned short dkg_gap2; /* gap 2 size */ ! 45: unsigned short dkg_extra[10]; /* for compatible expansion */ ! 46: }; ! 47: ! 48: /* disk io control commands */ ! 49: #define DKIOCGGEOM (('d'<<8)|1) /* Get geometry */ ! 50: #define DKIOCSGEOM (('d'<<8)|2) /* Set geometry */ ! 51: #define DKIOCGPART (('d'<<8)|3) /* Get partition info */ ! 52: #define DKIOCSPART (('d'<<8)|4) /* Set partition info */ ! 53: #define DKIOCINFO (('d'<<8)|5) /* Get info */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.