Linux 2.6.21.1
[linux/fpc-iii.git] / drivers / char / rio / parmmap.h
blob9764ef85c5a658a863b89177a45d52342633b482
1 /****************************************************************************
2 ******* *******
3 ******* H O S T M E M O R Y M A P
4 ******* *******
5 ****************************************************************************
7 Author : Ian Nandhra / Jeremy Rolls
8 Date :
11 * (C) 1990 - 2000 Specialix International Ltd., Byfleet, Surrey, UK.
13 * This program is free software; you can redistribute it and/or modify
14 * it under the terms of the GNU General Public License as published by
15 * the Free Software Foundation; either version 2 of the License, or
16 * (at your option) any later version.
18 * This program is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU General Public License for more details.
23 * You should have received a copy of the GNU General Public License
24 * along with this program; if not, write to the Free Software
25 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
27 Version : 0.01
30 Mods
31 ----------------------------------------------------------------------------
32 Date By Description
33 ----------------------------------------------------------------------------
34 6/4/1991 jonb Made changes to accommodate Mips R3230 bus
35 ***************************************************************************/
37 #ifndef _parmap_h
38 #define _parmap_h
41 #ifdef SCCS_LABELS
42 #ifndef lint
43 /* static char *_rio_parmmap_h_sccs = "@(#)parmmap.h 1.4"; */
44 #endif
45 #endif
47 typedef struct PARM_MAP PARM_MAP;
49 struct PARM_MAP {
50 u16 phb_ptr; /* Pointer to the PHB array */
51 u16 phb_num_ptr; /* Ptr to Number of PHB's */
52 u16 free_list; /* Free List pointer */
53 u16 free_list_end; /* Free List End pointer */
54 u16 q_free_list_ptr; /* Ptr to Q_BUF variable */
55 u16 unit_id_ptr; /* Unit Id */
56 u16 link_str_ptr; /* Link Structure Array */
57 u16 bootloader_1; /* 1st Stage Boot Loader */
58 u16 bootloader_2; /* 2nd Stage Boot Loader */
59 u16 port_route_map_ptr; /* Port Route Map */
60 u16 route_ptr; /* Unit Route Map */
61 u16 map_present; /* Route Map present */
62 s16 pkt_num; /* Total number of packets */
63 s16 q_num; /* Total number of Q packets */
64 u16 buffers_per_port; /* Number of buffers per port */
65 u16 heap_size; /* Initial size of heap */
66 u16 heap_left; /* Current Heap left */
67 u16 error; /* Error code */
68 u16 tx_max; /* Max number of tx pkts per phb */
69 u16 rx_max; /* Max number of rx pkts per phb */
70 u16 rx_limit; /* For high / low watermarks */
71 s16 links; /* Links to use */
72 s16 timer; /* Interrupts per second */
73 u16 rups; /* Pointer to the RUPs */
74 u16 max_phb; /* Mostly for debugging */
75 u16 living; /* Just increments!! */
76 u16 init_done; /* Initialisation over */
77 u16 booting_link;
78 u16 idle_count; /* Idle time counter */
79 u16 busy_count; /* Busy counter */
80 u16 idle_control; /* Control Idle Process */
81 u16 tx_intr; /* TX interrupt pending */
82 u16 rx_intr; /* RX interrupt pending */
83 u16 rup_intr; /* RUP interrupt pending */
86 #endif
88 /*********** end of file ***********/