Annotation of researchv9/sys/sun/dkio.h, revision 1.1.1.1

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 */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.