board.h

来自「linux2.6.16版本」· C头文件 代码 · 共 137 行

H
137
字号
/*** -----------------------------------------------------------------------------****  Perle Specialix driver for Linux**  Ported from existing RIO Driver for SCO sources.  * *  (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.****	Module		: board.h**	SID		: 1.2**	Last Modified	: 11/6/98 11:34:07**	Retrieved	: 11/6/98 11:34:20****  ident @(#)board.h	1.2**** -----------------------------------------------------------------------------*/#ifndef	__rio_board_h__#define	__rio_board_h__#ifdef SCCS_LABELSstatic char *_board_h_sccs_ = "@(#)board.h	1.2";#endif/*** board.h contains the definitions for the *hardware* of the host cards.** It describes the memory overlay for the dual port RAM area.*/#define	DP_SRAM1_SIZE	0x7C00#define	DP_SRAM2_SIZE	0x0200#define	DP_SRAM3_SIZE	0x7000#define	DP_SCRATCH_SIZE	0x1000#define	DP_PARMMAP_ADDR	0x01FE	/* offset into SRAM2 */#define	DP_STARTUP_ADDR	0x01F8	/* offset into SRAM2 *//***	The shape of the Host Control area, at offset 0x7C00, Write Only*/struct s_Ctrl {	BYTE DpCtl;		/* 7C00 */	BYTE Dp_Unused2_[127];	BYTE DpIntSet;		/* 7C80 */	BYTE Dp_Unused3_[127];	BYTE DpTpuReset;	/* 7D00 */	BYTE Dp_Unused4_[127];	BYTE DpIntReset;	/* 7D80 */	BYTE Dp_Unused5_[127];};/*** The PROM data area on the host (0x7C00), Read Only*/struct s_Prom {	WORD DpSlxCode[2];	WORD DpRev;	WORD Dp_Unused6_;	WORD DpUniq[4];	WORD DpJahre;	WORD DpWoche;	WORD DpHwFeature[5];	WORD DpOemId;	WORD DpSiggy[16];};/*** Union of the Ctrl and Prom areas*/union u_CtrlProm {		/* This is the control/PROM area (0x7C00) */	struct s_Ctrl DpCtrl;	struct s_Prom DpProm;};/*** The top end of memory!*/struct s_ParmMapS {		/* Area containing Parm Map Pointer */	BYTE Dp_Unused8_[DP_PARMMAP_ADDR];	WORD DpParmMapAd;};struct s_StartUpS {	BYTE Dp_Unused9_[DP_STARTUP_ADDR];	BYTE Dp_LongJump[0x4];	BYTE Dp_Unused10_[2];	BYTE Dp_ShortJump[0x2];};union u_Sram2ParmMap {		/* This is the top of memory (0x7E00-0x7FFF) */	BYTE DpSramMem[DP_SRAM2_SIZE];	struct s_ParmMapS DpParmMapS;	struct s_StartUpS DpStartUpS;};/***	This is the DP RAM overlay.*/struct DpRam {	BYTE DpSram1[DP_SRAM1_SIZE];	/* 0000 - 7BFF */	union u_CtrlProm DpCtrlProm;	/* 7C00 - 7DFF */	union u_Sram2ParmMap DpSram2ParmMap;	/* 7E00 - 7FFF */	BYTE DpScratch[DP_SCRATCH_SIZE];	/* 8000 - 8FFF */	BYTE DpSram3[DP_SRAM3_SIZE];	/* 9000 - FFFF */};#define	DpControl	DpCtrlProm.DpCtrl.DpCtl#define	DpSetInt	DpCtrlProm.DpCtrl.DpIntSet#define	DpResetTpu	DpCtrlProm.DpCtrl.DpTpuReset#define	DpResetInt	DpCtrlProm.DpCtrl.DpIntReset#define	DpSlx		DpCtrlProm.DpProm.DpSlxCode#define	DpRevision	DpCtrlProm.DpProm.DpRev#define	DpUnique	DpCtrlProm.DpProm.DpUniq#define	DpYear		DpCtrlProm.DpProm.DpJahre#define	DpWeek		DpCtrlProm.DpProm.DpWoche#define	DpSignature	DpCtrlProm.DpProm.DpSiggy#define	DpParmMapR	DpSram2ParmMap.DpParmMapS.DpParmMapAd#define	DpSram2		DpSram2ParmMap.DpSramMem#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?