Annotation of Gnu-Mach/chips/atmreg.h, revision 1.1

1.1     ! root        1: /* 
        !             2:  * Mach Operating System
        !             3:  * Copyright (c) 1992 Carnegie Mellon University
        !             4:  * All Rights Reserved.
        !             5:  * 
        !             6:  * Permission to use, copy, modify and distribute this software and its
        !             7:  * documentation is hereby granted, provided that both the copyright
        !             8:  * notice and this permission notice appear in all copies of the
        !             9:  * software, derivative works or modified versions, and any portions
        !            10:  * thereof, and that both notices appear in supporting documentation.
        !            11:  * 
        !            12:  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
        !            13:  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
        !            14:  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
        !            15:  * 
        !            16:  * Carnegie Mellon requests users of this software to return to
        !            17:  * 
        !            18:  *  Software Distribution Coordinator  or  [email protected]
        !            19:  *  School of Computer Science
        !            20:  *  Carnegie Mellon University
        !            21:  *  Pittsburgh PA 15213-3890
        !            22:  * 
        !            23:  * any improvements or extensions that they make and grant Carnegie Mellon
        !            24:  * the rights to redistribute these changes.
        !            25:  */
        !            26: 
        !            27: /*** FORE TCA-100 Turbochannel ATM computer interface ***/
        !            28: 
        !            29: #define RX_COUNT_INTR  0x0001
        !            30: #define RX_EOM_INTR    0x0002
        !            31: #define RX_TIME_INTR   0x0004
        !            32: #define TX_COUNT_INTR  0x0008
        !            33: #define RX_CELL_LOST   0x0010
        !            34: #define RX_NO_CARRIER  0x0020
        !            35: #define CR_RX_ENABLE   0x0040
        !            36: #define CR_TX_ENABLE   0x0080
        !            37: #define CR_RX_RESET    0x0100
        !            38: #define CR_TX_RESET    0x0200
        !            39: 
        !            40: #define ATM_READ_REG(reg)      ((reg) & 0x3ff) /* 10 bit register mask */
        !            41: 
        !            42: 
        !            43: struct atm_device {
        !            44:   unsigned int prom[64 * 1024 / 4];
        !            45:   volatile unsigned int sreg;
        !            46:   volatile unsigned int creg_set;
        !            47:   volatile unsigned int creg_clr;
        !            48:   volatile unsigned int creg;
        !            49:   volatile unsigned int rxtimer;
        !            50:   unsigned int pad1;
        !            51:   volatile unsigned int rxtimerv;
        !            52:   unsigned int pad2;
        !            53:   volatile unsigned int rxcount;
        !            54:   unsigned int pad3;
        !            55:   volatile unsigned int rxthresh;
        !            56:   unsigned int pad4;
        !            57:   volatile unsigned int txcount;
        !            58:   unsigned int pad5;
        !            59:   volatile unsigned int txthresh;
        !            60:   unsigned int pad6[64*1024/4 - 15];
        !            61:   volatile unsigned int rxfifo[14];
        !            62:   unsigned int pad7[64*1024/4 - 14];
        !            63:   volatile unsigned int txfifo[14];
        !            64:   unsigned int pad8[64*1024/4 - 14];
        !            65: };
        !            66: /* MUST BE PAGE ALIGNED OR YOU WILL GET KILLED BELOW WITH ATM_INFO */
        !            67: 
        !            68: struct sar_data {
        !            69:        int header;
        !            70:        int payload[12];
        !            71:        int trailer;
        !            72: };
        !            73: 
        !            74: 
        !            75: /*
        !            76:  * Information for mapped atm device
        !            77:  */
        !            78: typedef struct mapped_atm_info {
        !            79:     volatile unsigned int      interrupt_count;    /* tot interrupts received */
        !            80:     volatile  unsigned short   saved_status_reg;   /* copy of status reg from last interrupt  */
        !            81:     unsigned int       hello_world;
        !            82:     unsigned           wait_event;
        !            83: } *mapped_atm_info_t;
        !            84: 
        !            85: 
        !            86: 
        !            87: #define ATM_DEVICE(p)  (struct atm_device*)(p) 
        !            88: #define ATM_INFO(p)    (mapped_atm_info_t)( (p) + sizeof(struct atm_device) )
        !            89:                         

unix.superglobalmegacorp.com

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