linux_dsm_epyc7002/drivers/char/rio/parmmap.h

94 lines
3.5 KiB
C
Raw Normal View History

/****************************************************************************
******* *******
******* H O S T M E M O R Y M A P
******* *******
****************************************************************************
Author : Ian Nandhra / Jeremy Rolls
Date :
*
* (C) 1990 - 2000 Specialix International Ltd., Byfleet, Surrey, UK.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Version : 0.01
Mods
----------------------------------------------------------------------------
Date By Description
----------------------------------------------------------------------------
6/4/1991 jonb Made changes to accommodate Mips R3230 bus
***************************************************************************/
#ifndef _parmap_h
#define _parmap_h
#ifdef SCCS_LABELS
#ifndef lint
/* static char *_rio_parmmap_h_sccs = "@(#)parmmap.h 1.4"; */
#endif
#endif
typedef struct PARM_MAP PARM_MAP;
struct PARM_MAP {
PHB_ptr phb_ptr; /* Pointer to the PHB array */
WORD_ptr phb_num_ptr; /* Ptr to Number of PHB's */
FREE_LIST_ptr free_list; /* Free List pointer */
FREE_LIST_ptr free_list_end; /* Free List End pointer */
Q_BUF_ptr_ptr q_free_list_ptr; /* Ptr to Q_BUF variable */
BYTE_ptr unit_id_ptr; /* Unit Id */
LPB_ptr link_str_ptr; /* Link Structure Array */
BYTE_ptr bootloader_1; /* 1st Stage Boot Loader */
BYTE_ptr bootloader_2; /* 2nd Stage Boot Loader */
WORD_ptr port_route_map_ptr; /* Port Route Map */
ROUTE_STR_ptr route_ptr; /* Unit Route Map */
NUMBER_ptr map_present; /* Route Map present */
NUMBER pkt_num; /* Total number of packets */
NUMBER q_num; /* Total number of Q packets */
WORD buffers_per_port; /* Number of buffers per port */
WORD heap_size; /* Initial size of heap */
WORD heap_left; /* Current Heap left */
WORD error; /* Error code */
WORD tx_max; /* Max number of tx pkts per phb */
WORD rx_max; /* Max number of rx pkts per phb */
WORD rx_limit; /* For high / low watermarks */
NUMBER links; /* Links to use */
NUMBER timer; /* Interrupts per second */
RUP_ptr rups; /* Pointer to the RUPs */
WORD max_phb; /* Mostly for debugging */
WORD living; /* Just increments!! */
WORD init_done; /* Initialisation over */
WORD booting_link;
WORD idle_count; /* Idle time counter */
WORD busy_count; /* Busy counter */
WORD idle_control; /* Control Idle Process */
#if defined(HOST) || defined(INKERNEL)
WORD tx_intr; /* TX interrupt pending */
WORD rx_intr; /* RX interrupt pending */
WORD rup_intr; /* RUP interrupt pending */
#endif
#if defined(RTA)
WORD dying_count; /* Count of processes dead */
#endif
};
#endif
/*********** end of file ***********/