Annotation of coherent/f/etc/conf/bin/src/sdev.h, revision 1.1.1.1

1.1       root        1: #ifndef        SDEV_H
                      2: #define        SDEV_H
                      3: 
                      4: #include "devadm.h"
                      5: 
                      6: 
                      7: typedef        unsigned int    unit_t;
                      8: typedef        unsigned int    ipl_t;
                      9: typedef        unsigned int    itype_t;
                     10: typedef        unsigned int    vec_t;
                     11: typedef        unsigned long   cma_t;
                     12: typedef        unsigned long   ioa_t;
                     13: 
                     14: 
                     15: struct sdevice {
                     16:        mdev_t        * sd_mdevp;       /* master device entry */
                     17:        sdev_t        * sd_mnext;       /* next unit on master device */
                     18:        sdev_t        * sd_next;        /* next unit on global thread */
                     19:        sdev_t        * sd_link;        /* for sorting */
                     20: 
                     21:        symbol_t      * sd_devname;     /* device name */
                     22:        int             sd_config;      /* configuration flag */
                     23:        unit_t          sd_unit;        /* unit number */
                     24:        ipl_t           sd_ipl;         /* ipl to run interrupt routine */
                     25:        itype_t         sd_itype;       /* type of interrupt scheme */
                     26:        vec_t           sd_vector;      /* interrupt vector number */
                     27: 
                     28:        ioa_t           sd_ioa [2];     /* I/O address range */
                     29:        cma_t           sd_cma [2];     /* controller address space range */
                     30: };
                     31: 
                     32: 
                     33: /*
                     34:  * Structure for holding a list of "sdevice" structures.
                     35:  */
                     36: 
                     37: struct sdlist {
                     38:        sdev_t        * sdl_first;
                     39:        sdev_t        * sdl_last;
                     40: };
                     41: 
                     42: 
                     43: /*
                     44:  * Types for predicate suitable for passing to sdev_sort ()
                     45:  */
                     46: 
                     47: typedef        int  (* ssel_t)         PROTO ((sdev_t * _sdevp));
                     48: typedef        int  (* scmp_t)         PROTO ((sdev_t * _left, sdev_t * _right));
                     49: 
                     50: 
                     51: enum { MAX_VECTOR = 15,
                     52:        MAX_IPL = 8
                     53: };
                     54: 
                     55: enum {
                     56:        INT_NONE,
                     57:        INT_PER_CHANNEL,
                     58:        INT_PER_DEVICE,
                     59:        INT_SHAREABLE,
                     60:        MAX_ITYPE = INT_SHAREABLE
                     61: };
                     62: 
                     63: 
                     64: EXTERN_C_BEGIN
                     65: 
                     66: void           read_sdev_file  PROTO ((CONST char * _inname,
                     67:                                        CONST char * _outname,
                     68:                                        VOID * _extra));
                     69: void           read_sdev_string PROTO ((CONST char * _string,
                     70:                                         VOID * _extra));
                     71: int            sdev_sort       PROTO ((sdev_t ** _sdlistp, sdev_t ** _sdendp,
                     72:                                        ssel_t _selpred, scmp_t _cmppred,
                     73:                                        size_t _ptroff));
                     74: void           write_sdevice   PROTO ((sdev_t * _sdevp, input_t * _input));
                     75: 
                     76: EXTERN_C_END
                     77: 
                     78: #endif /* ! defined (SDEV_H) */

unix.superglobalmegacorp.com

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