The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/chips/atmreg.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    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  Software.Distribution@CS.CMU.EDU
   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 /*
   28  * HISTORY
   29  * $Log:        atmreg.h,v $
   30  * Revision 2.2  93/01/21  12:20:34  danner
   31  *      Created.
   32  *      [93/01/19  16:29:41  bershad]
   33  * 
   34  * Revision 2.3  92/07/09  22:53:14  rvb
   35  *      Minimal support for mapping atm fifo's.
   36  *      [92/05/12  17:10:10  rvb]
   37  * 
   38  * Revision 2.2  92/04/03  12:08:15  rpd
   39  *      Created
   40  *      [92/03/23            rvb]
   41  * 
   42  */
   43 
   44 
   45 /*** FORE TCA-100 Turbochannel ATM computer interface ***/
   46 
   47 #define RX_COUNT_INTR   0x0001
   48 #define RX_EOM_INTR     0x0002
   49 #define RX_TIME_INTR    0x0004
   50 #define TX_COUNT_INTR   0x0008
   51 #define RX_CELL_LOST    0x0010
   52 #define RX_NO_CARRIER   0x0020
   53 #define CR_RX_ENABLE    0x0040
   54 #define CR_TX_ENABLE    0x0080
   55 #define CR_RX_RESET     0x0100
   56 #define CR_TX_RESET     0x0200
   57 
   58 #define ATM_READ_REG(reg)       ((reg) & 0x3ff) /* 10 bit register mask */
   59 
   60 
   61 struct atm_device {
   62   unsigned int prom[64 * 1024 / 4];
   63   volatile unsigned int sreg;
   64   volatile unsigned int creg_set;
   65   volatile unsigned int creg_clr;
   66   volatile unsigned int creg;
   67   volatile unsigned int rxtimer;
   68   unsigned int pad1;
   69   volatile unsigned int rxtimerv;
   70   unsigned int pad2;
   71   volatile unsigned int rxcount;
   72   unsigned int pad3;
   73   volatile unsigned int rxthresh;
   74   unsigned int pad4;
   75   volatile unsigned int txcount;
   76   unsigned int pad5;
   77   volatile unsigned int txthresh;
   78   unsigned int pad6[64*1024/4 - 15];
   79   volatile unsigned int rxfifo[14];
   80   unsigned int pad7[64*1024/4 - 14];
   81   volatile unsigned int txfifo[14];
   82   unsigned int pad8[64*1024/4 - 14];
   83 };
   84 /* MUST BE PAGE ALIGNED OR YOU WILL GET KILLED BELOW WITH ATM_INFO */
   85 
   86 struct sar_data {
   87         int header;
   88         int payload[12];
   89         int trailer;
   90 };
   91 
   92 
   93 /*
   94  * Information for mapped atm device
   95  */
   96 typedef struct mapped_atm_info {
   97     volatile unsigned int       interrupt_count;    /* tot interrupts received */
   98     volatile  unsigned short    saved_status_reg;   /* copy of status reg from last interrupt  */
   99     unsigned int        hello_world;
  100     unsigned            wait_event;
  101 } *mapped_atm_info_t;
  102 
  103 
  104 
  105 #define ATM_DEVICE(p)   (struct atm_device*)(p) 
  106 #define ATM_INFO(p)     (mapped_atm_info_t)( (p) + sizeof(struct atm_device) )
  107                          

Cache object: 246cb007fdfaa1c6dd6b08deb47ff59c


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.