Annotation of 41BSD/4.0.upgrade/sys/h/udareg.h, revision 1.1

1.1     ! root        1: /*     udareg.h        81/10/26        1.1     */
        !             2: /*
        !             3:  * UDA-50 registers and structures
        !             4:  */
        !             5: 
        !             6: struct udadevice {
        !             7:        short   udaip;          /* initialization and polling */
        !             8:        short   udasa;          /* status and address */
        !             9: };
        !            10: 
        !            11: #define        UDA_ERR         0100000 /* error bit */
        !            12: #define        UDA_STEP4       0040000 /* step 4 has started */
        !            13: #define        UDA_STEP3       0020000 /* step 3 has started */
        !            14: #define        UDA_STEP2       0010000 /* step 2 has started */
        !            15: #define        UDA_STEP1       0004000 /* step 1 has started */
        !            16: #define        UDA_NV          0002000 /* no host settable interrupt vector */
        !            17: #define        UDA_QB          0001000 /* controller supports Q22 bus */
        !            18: #define        UDA_DI          0000400 /* controller implements diagnostics */
        !            19: #define        UDA_IE          0000200 /* interrupt enable */
        !            20: #define        UDA_PI          0000001 /* host requests adapter purge interrupts */
        !            21: #define        UDA_GO          0000001 /* start operation, after init */
        !            22: 
        !            23: 
        !            24: /*
        !            25:  * UDA Communications Area
        !            26:  */
        !            27: 
        !            28: struct udaca {
        !            29:        short   ca_xxx1;        /* unused */
        !            30:        char    ca_xxx2;        /* unused */
        !            31:        char    ca_bdp;         /* BDP to purge */
        !            32:        short   ca_cmdint;      /* command queue transition interrupt flag */
        !            33:        short   ca_rspint;      /* response queue transition interrupt flag */
        !            34:        long    ca_rspdsc[NRSP];/* response descriptors */
        !            35:        long    ca_cmddsc[NCMD];/* command descriptors */
        !            36: };
        !            37: 
        !            38: #define        ca_ringbase     ca_rspdsc[0]
        !            39: 
        !            40: #define        UDA_OWN 0x80000000      /* UDA owns this descriptor */
        !            41: #define        UDA_INT 0x40000000      /* allow interrupt on ring transition */
        !            42: 
        !            43: /*
        !            44:  * MSCP packet info
        !            45:  */
        !            46: struct mscp_header {
        !            47:        short   uda_msglen;     /* length of MSCP packet */
        !            48:        char    uda_credits;    /* low 4 bits: credits, high 4 bits: msgtype */
        !            49:        char    uda_vcid;       /* virtual circuit id */
        !            50: };

unix.superglobalmegacorp.com

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