⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 i8259pep.h

📁 此文件是cp6000主板的bsp包
💻 H
字号:
/* i8259Pep.h - Intel 8259a PIC (Programmable Interrupt Controller) *//* Copyright 1984-2002 Wind River Systems, Inc. *//*modification history--------------------01i,12nov02,gko	 adapted to PEP specific BSP folder (pdr 02104174)01h,23apr02,hdn	 added prototypes for new BOI/EOI rtn (spr 76411)01g,08mar02,hdn	 added prototype i8259Init() for HTT (spr 73738)01f,28may97,hdn	 copied i8259a.h to i8259.h for APIC support.01e,17mar97,hdn	 added function declarations.01d,03jan95,vin	 added PIC_ISR_MASK, PIC_IRR_MASK, OCW301c,16aug93,hdn	 deleted PIC_BASE_ADRS macros.01b,16jun93,hdn	 updated to 5.1.01a,15may92,hdn	 written.*/#ifndef	__INCi8259h#define	__INCi8259h#ifdef __cplusplusextern "C" {#endif#include "versionPep.h"/* PEP version identifier */PEP_VERSION(i8259Pep_h,01i)/* * The macro PIC_REG_ADDR_INTERVAL must be defined * when including this header. *//* default definitions */#define	CAST#define PIC_ADRS(base,reg)   (CAST (base+(reg*PIC_REG_ADDR_INTERVAL)))/* register definitions */#define PIC_port1(base)	PIC_ADRS(base,0x00)	/* port 1. */#define PIC_port2(base)	PIC_ADRS(base,0x01)	/* port 2. *//* alias */#define PIC_IMASK(base)	PIC_port2(base)		/* Interrupt mask. */#define PIC_IACK(base)	PIC_port1(base)		/* Interrupt acknowledge. */#define PIC_ISR_MASK(base) PIC_port1(base)	/* in-service register mask */#define PIC_IRR_MASK(base) PIC_port1(base) 	/* interrupt request reg */#define OCW3_DEF	0x08			/* 3rd default control word */#define OCW3_PCB	0x04			/* Polling Control Bit */#define OCW3_ISR	0x03			/* Read in-service reg */#define OCW3_IRR	0x02			/* Read inter request reg */#define I8259_EOI	0x20			/* EOI bit in OCW2 */#ifndef _ASMLANGUAGE#if defined(__STDC__) || defined(__cplusplus)IMPORT VOID	i8259Init	(void);IMPORT int	sysIntLevel	(int arg);IMPORT VOID	sysIntLock	(void);IMPORT VOID	sysIntUnlock	(void);IMPORT VOID 	i8259IntBoi 	(int irqNo);IMPORT VOID 	i8259IntBoiEem	(int irqNo);IMPORT VOID 	i8259IntBoiSmm	(int irqNo);IMPORT VOID 	i8259IntEoiSmm	(int irqNo);IMPORT VOID 	i8259IntEoiMaster (int irqNo);IMPORT VOID 	i8259IntEoiSlave (int irqNo);IMPORT VOID 	i8259IntEoiSlaveNfnm (int irqNo);IMPORT VOID 	i8259IntEoiSlaveSfnm (int irqNo);#elseIMPORT VOID	i8259Init	();IMPORT int	sysIntLevel	();IMPORT VOID	sysIntLock	();IMPORT VOID	sysIntUnlock	();IMPORT VOID 	i8259IntBoi 	();IMPORT VOID 	i8259IntBoiEem	();IMPORT VOID 	i8259IntBoiSmm	();IMPORT VOID 	i8259IntEoiSmm	();IMPORT VOID 	i8259IntEoiMaster ();IMPORT VOID 	i8259IntEoiSlave ();IMPORT VOID 	i8259IntEoiSlaveNfnm ();IMPORT VOID 	i8259IntEoiSlaveSfnm ();#endif  /* __STDC__ */#endif	/* _ASMLANGUAGE */#ifdef __cplusplus}#endif#endif	/* __INCi8259h */

⌨️ 快捷键说明

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