www.pudn.com > MPC8241BSP.rar > mpc8240Epic.h


/* mpc8240Epic.h - Mpc8240 EPIC register definitions */ 
 
/* Copyright 1984-2000 Wind River Systems, Inc. */ 
/* Copyright 1996-2000 Motorola, Inc. */ 
 
/* 
modification history 
-------------------- 
01a,25feb00,rhk  Created from 01b, MV2100 BSP. 
*/ 
 
/* 
DESCRIPTION 
 
Contains structure typedefs and device-specific defines for the Mpc8240 EPIC. 
*/ 
 
 
#ifndef	INCmpc8240Epich 
#define	INCmpc8240Epich 
 
#ifdef __cplusplus 
extern "C" { 
#endif 
 
/* structures */ 
 
typedef struct intHandlerDesc           /* interrupt handler desciption */ 
    { 
    VOIDFUNCPTR                 vec;    /* interrupt vector */ 
    int                         arg;    /* interrupt handler argument */ 
    struct intHandlerDesc *     next;   /* next interrupt handler & argument */ 
    } INT_HANDLER_DESC; 
 
typedef struct localIntData 
    { 
    UCHAR		epicVec; 
    UCHAR		ibcVec; 
    INT8		cpuCtrlReg; 
    int			temp; 
    UINT32		regAddr; 
    UINT32		regVal; 
    } LOCAL_INT_DATA; 
 
/* Mpc8240 EPIC bit masks and settings for the registers */ 
 
#define TIMER_INHIBIT		0x80000000 
#define INT_MASK_BIT		0x80000000 
#define HIGH_POLARITY		0x00800000 
#define LOW_POLARITY		0x00000000 
#define LEVEL_SENSE		0x00400000 
#define EDGE_SENSE		0x00000000 
#define VECTOR_MASK		0x000000ff 
 
#define PRIORITY_MASK		0x000f0000 
#define PRIORITY_LVL0		0x00000000 
#define PRIORITY_LVL1		0x00010000 
#define PRIORITY_LVL2		0x00020000 
#define PRIORITY_LVL3		0x00030000 
#define PRIORITY_LVL4		0x00040000 
#define PRIORITY_LVL5		0x00050000 
#define PRIORITY_LVL6		0x00060000 
#define PRIORITY_LVL7		0x00070000 
#define PRIORITY_LVL8		0x00080000 
#define PRIORITY_LVL9		0x00090000 
#define PRIORITY_LVL10		0x000a0000 
#define PRIORITY_LVL11		0x000b0000 
#define PRIORITY_LVL12		0x000c0000 
#define PRIORITY_LVL13		0x000d0000 
#define PRIORITY_LVL14		0x000e0000 
#define PRIORITY_LVL15		0x000f0000 
 
#define EPIC_INV_PRIO_ERROR	 ((ULONG)(-1)) 
 
 
/* miscellaneous defines */ 
 
#define REG_OFFSET		0x10 
 
#ifdef __cplusplus 
} 
#endif 
 
#endif	/* INCmpc8240Epich */