Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]

Diff markup

Differences between /linux/drivers/char/rio/riodrvr.h (Version 2.6.25) and /linux/drivers/char/rio/riodrvr.h (Version 2.6.25.8)


  1 /*                                                  1 /*
  2 ** -------------------------------------------      2 ** -----------------------------------------------------------------------------
  3 **                                                  3 **
  4 **  Perle Specialix driver for Linux                4 **  Perle Specialix driver for Linux
  5 **  Ported from existing RIO Driver for SCO so      5 **  Ported from existing RIO Driver for SCO sources.
  6  *                                                  6  *
  7  *  (C) 1990 - 2000 Specialix International Lt      7  *  (C) 1990 - 2000 Specialix International Ltd., Byfleet, Surrey, UK.
  8  *                                                  8  *
  9  *      This program is free software; you can      9  *      This program is free software; you can redistribute it and/or modify
 10  *      it under the terms of the GNU General      10  *      it under the terms of the GNU General Public License as published by
 11  *      the Free Software Foundation; either v     11  *      the Free Software Foundation; either version 2 of the License, or
 12  *      (at your option) any later version.        12  *      (at your option) any later version.
 13  *                                                 13  *
 14  *      This program is distributed in the hop     14  *      This program is distributed in the hope that it will be useful,
 15  *      but WITHOUT ANY WARRANTY; without even     15  *      but WITHOUT ANY WARRANTY; without even the implied warranty of
 16  *      MERCHANTABILITY or FITNESS FOR A PARTI     16  *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 17  *      GNU General Public License for more de     17  *      GNU General Public License for more details.
 18  *                                                 18  *
 19  *      You should have received a copy of the     19  *      You should have received a copy of the GNU General Public License
 20  *      along with this program; if not, write     20  *      along with this program; if not, write to the Free Software
 21  *      Foundation, Inc., 675 Mass Ave, Cambri     21  *      Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 22 **                                                 22 **
 23 **      Module          : riodrvr.h                23 **      Module          : riodrvr.h
 24 **      SID             : 1.3                      24 **      SID             : 1.3
 25 **      Last Modified   : 11/6/98 09:22:46         25 **      Last Modified   : 11/6/98 09:22:46
 26 **      Retrieved       : 11/6/98 09:22:46         26 **      Retrieved       : 11/6/98 09:22:46
 27 **                                                 27 **
 28 **  ident @(#)riodrvr.h 1.3                        28 **  ident @(#)riodrvr.h 1.3
 29 **                                                 29 **
 30 ** -------------------------------------------     30 ** -----------------------------------------------------------------------------
 31 */                                                 31 */
 32                                                    32 
 33 #ifndef __riodrvr_h                                33 #ifndef __riodrvr_h
 34 #define __riodrvr_h                                34 #define __riodrvr_h
 35                                                    35 
 36 #include <asm/param.h>          /* for HZ */       36 #include <asm/param.h>          /* for HZ */
 37                                                    37 
 38 #ifdef SCCS_LABELS                                 38 #ifdef SCCS_LABELS
 39 static char *_riodrvr_h_sccs_ = "@(#)riodrvr.h     39 static char *_riodrvr_h_sccs_ = "@(#)riodrvr.h  1.3";
 40 #endif                                             40 #endif
 41                                                    41 
 42 #define MEMDUMP_SIZE    32                         42 #define MEMDUMP_SIZE    32
 43 #define MOD_DISABLE     (RIO_NOREAD|RIO_NOWRIT     43 #define MOD_DISABLE     (RIO_NOREAD|RIO_NOWRITE|RIO_NOXPRINT)
 44                                                    44 
 45                                                    45 
 46 struct rio_info {                                  46 struct rio_info {
 47         int mode;               /* Intr or pol     47         int mode;               /* Intr or polled, word/byte */
 48         spinlock_t RIOIntrSem;  /* Interrupt t     48         spinlock_t RIOIntrSem;  /* Interrupt thread sem */
 49         int current_chan;       /* current cha     49         int current_chan;       /* current channel */
 50         int RIOFailed;          /* Not initial     50         int RIOFailed;          /* Not initialised ? */
 51         int RIOInstallAttempts; /* no. of rio-     51         int RIOInstallAttempts; /* no. of rio-install() calls */
 52         int RIOLastPCISearch;   /* status of l     52         int RIOLastPCISearch;   /* status of last search */
 53         int RIONumHosts;        /* Number of R     53         int RIONumHosts;        /* Number of RIO Hosts */
 54         struct Host *RIOHosts;  /* RIO Host va     54         struct Host *RIOHosts;  /* RIO Host values */
 55         struct Port **RIOPortp; /* RIO port va     55         struct Port **RIOPortp; /* RIO port values */
 56 /*                                                 56 /*
 57 ** 02.03.1999 ARG - ESIL 0820 fix                  57 ** 02.03.1999 ARG - ESIL 0820 fix
 58 ** We no longer use RIOBootMode                    58 ** We no longer use RIOBootMode
 59 **                                                 59 **
 60         int                     RIOBootMode;       60         int                     RIOBootMode;            * RIO boot mode *
 61 **                                                 61 **
 62 */                                                 62 */
 63         int RIOPrintDisabled;   /* RIO printin     63         int RIOPrintDisabled;   /* RIO printing disabled ? */
 64         int RIOPrintLogState;   /* RIO printin     64         int RIOPrintLogState;   /* RIO printing state ? */
 65         int RIOPolling;         /* Polling ? *     65         int RIOPolling;         /* Polling ? */
 66 /*                                                 66 /*
 67 ** 09.12.1998 ARG - ESIL 0776 part fix             67 ** 09.12.1998 ARG - ESIL 0776 part fix
 68 ** The 'RIO_QUICK_CHECK' ioctl was using RIOHa     68 ** The 'RIO_QUICK_CHECK' ioctl was using RIOHalted.
 69 ** The fix for this ESIL introduces another me     69 ** The fix for this ESIL introduces another member (RIORtaDisCons) here to be
 70 ** updated in RIOConCon() - to keep track of R     70 ** updated in RIOConCon() - to keep track of RTA connections/disconnections.
 71 ** 'RIO_QUICK_CHECK' now returns the value of      71 ** 'RIO_QUICK_CHECK' now returns the value of RIORtaDisCons.
 72 */                                                 72 */
 73         int RIOHalted;          /* halted ? */     73         int RIOHalted;          /* halted ? */
 74         int RIORtaDisCons;      /* RTA connect     74         int RIORtaDisCons;      /* RTA connections/disconnections */
 75         unsigned int RIOReadCheck;      /* Rio     75         unsigned int RIOReadCheck;      /* Rio read check */
 76         unsigned int RIONoMessage;      /* To      76         unsigned int RIONoMessage;      /* To display message or not */
 77         unsigned int RIONumBootPkts;    /* how     77         unsigned int RIONumBootPkts;    /* how many packets for an RTA */
 78         unsigned int RIOBootCount;      /* siz     78         unsigned int RIOBootCount;      /* size of RTA code */
 79         unsigned int RIOBooting;        /* cou     79         unsigned int RIOBooting;        /* count of outstanding boots */
 80         unsigned int RIOSystemUp;       /* Boo     80         unsigned int RIOSystemUp;       /* Booted ?? */
 81         unsigned int RIOCounting;       /* for     81         unsigned int RIOCounting;       /* for counting interrupts */
 82         unsigned int RIOIntCount;       /* # o     82         unsigned int RIOIntCount;       /* # of intr since last check */
 83         unsigned int RIOTxCount;        /* num     83         unsigned int RIOTxCount;        /* number of xmit intrs  */
 84         unsigned int RIORxCount;        /* num     84         unsigned int RIORxCount;        /* number of rx intrs */
 85         unsigned int RIORupCount;       /* num     85         unsigned int RIORupCount;       /* number of rup intrs */
 86         int RIXTimer;                              86         int RIXTimer;
 87         int RIOBufferSize;      /* Buffersize      87         int RIOBufferSize;      /* Buffersize */
 88         int RIOBufferMask;      /* Buffersize      88         int RIOBufferMask;      /* Buffersize */
 89                                                    89 
 90         int RIOFirstMajor;      /* First host      90         int RIOFirstMajor;      /* First host card's major no */
 91                                                    91 
 92         unsigned int RIOLastPortsMapped;           92         unsigned int RIOLastPortsMapped;        /* highest port number known */
 93         unsigned int RIOFirstPortsMapped;          93         unsigned int RIOFirstPortsMapped;       /* lowest port number known */
 94                                                    94 
 95         unsigned int RIOLastPortsBooted;           95         unsigned int RIOLastPortsBooted;        /* highest port number running */
 96         unsigned int RIOFirstPortsBooted;          96         unsigned int RIOFirstPortsBooted;       /* lowest port number running */
 97                                                    97 
 98         unsigned int RIOLastPortsOpened;           98         unsigned int RIOLastPortsOpened;        /* highest port number running */
 99         unsigned int RIOFirstPortsOpened;          99         unsigned int RIOFirstPortsOpened;       /* lowest port number running */
100                                                   100 
101         /* Flag to say that the topology infor    101         /* Flag to say that the topology information has been changed. */
102         unsigned int RIOQuickCheck;               102         unsigned int RIOQuickCheck;
103         unsigned int CdRegister;        /* ???    103         unsigned int CdRegister;        /* ??? */
104         int RIOSignalProcess;   /* Signalling     104         int RIOSignalProcess;   /* Signalling process */
105         int rio_debug;          /* To debug ..    105         int rio_debug;          /* To debug ... */
106         int RIODebugWait;       /* For what ??    106         int RIODebugWait;       /* For what ??? */
107         int tpri;               /* Thread prio    107         int tpri;               /* Thread prio */
108         int tid;                /* Thread id *    108         int tid;                /* Thread id */
109         unsigned int _RIO_Polled;       /* Cou    109         unsigned int _RIO_Polled;       /* Counter for polling */
110         unsigned int _RIO_Interrupted;  /* Cou    110         unsigned int _RIO_Interrupted;  /* Counter for interrupt */
111         int intr_tid;           /* iointset re    111         int intr_tid;           /* iointset return value */
112         int TxEnSem;            /* TxEnable Se    112         int TxEnSem;            /* TxEnable Semaphore */
113                                                   113 
114                                                   114 
115         struct Error RIOError;  /* to Identify    115         struct Error RIOError;  /* to Identify what went wrong */
116         struct Conf RIOConf;    /* Configurati    116         struct Conf RIOConf;    /* Configuration ??? */
117         struct ttystatics channel[RIO_PORTS];     117         struct ttystatics channel[RIO_PORTS];   /* channel information */
118         char RIOBootPackets[1 + (SIXTY_FOUR_K     118         char RIOBootPackets[1 + (SIXTY_FOUR_K / RTA_BOOT_DATA_SIZE)]
119             [RTA_BOOT_DATA_SIZE];                 119             [RTA_BOOT_DATA_SIZE];
120         struct Map RIOConnectTable[TOTAL_MAP_E    120         struct Map RIOConnectTable[TOTAL_MAP_ENTRIES];
121         struct Map RIOSavedTable[TOTAL_MAP_ENT    121         struct Map RIOSavedTable[TOTAL_MAP_ENTRIES];
122                                                   122 
123         /* RTA to host binding table for maste    123         /* RTA to host binding table for master/slave operation */
124         unsigned long RIOBindTab[MAX_RTA_BINDI    124         unsigned long RIOBindTab[MAX_RTA_BINDINGS];
125         /* RTA memory dump variable */            125         /* RTA memory dump variable */
126         unsigned char RIOMemDump[MEMDUMP_SIZE]    126         unsigned char RIOMemDump[MEMDUMP_SIZE];
127         struct ModuleInfo RIOModuleTypes[MAX_M    127         struct ModuleInfo RIOModuleTypes[MAX_MODULE_TYPES];
128                                                   128 
129 };                                                129 };
130                                                   130 
131                                                   131 
132 #ifdef linux                                      132 #ifdef linux
133 #define debug(x)        printk x                  133 #define debug(x)        printk x
134 #else                                             134 #else
135 #define debug(x)        kkprintf x                135 #define debug(x)        kkprintf x
136 #endif                                            136 #endif
137                                                   137 
138                                                   138 
139                                                   139 
140 #define RIO_RESET_INT   0x7d80                    140 #define RIO_RESET_INT   0x7d80
141                                                   141 
142 #endif                          /* __riodrvr.h    142 #endif                          /* __riodrvr.h */
143                                                   143 
  This page was automatically generated by the LXR engine.