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

📄 mpc105.h

📁 IXP425的BSP代码
💻 H
📖 第 1 页 / 共 2 页
字号:
/* mpc105.h - Motorola MPC105 PCI Bridge/Memory Controller *//* Copyright 1984-1996 Wind River Systems, Inc. *//*modification history--------------------01b,10oct96,tam  added missing macros.01a,03apr96,tpr  written.*//*This file contains the related constants for the MPC105.*/#ifndef __INCmpc105h#define __INCmpc105h#ifdef __cplusplusextern "C" {#endif#define MPC105_VEND_ID		0x00	/* Vendor ID Reg */#define MPC105_DEV_ID		0x02	/* Device ID Reg */#define MPC105_CMD		0x04	/* Pci Command Reg */#define MPC105_STAT		0x06	/* Pci Status Reg */#define MPC105_PMCR		0x70	/* Power Management Configuration Reg */#define MPC105_MSAR1		0x80	/* Memory Starting Address Register 1 */#define MPC105_MSAR2		0x84	/* Memory Starting Address Register 2 */#define MPC105_EMSAR1		0x88	/* Extended Memory Start Addr Reg 1 */#define MPC105_EMSAR2		0x8c	/* Extended Memory Start Addr Reg 2 */#define MPC105_MEAR1		0x90	/* Memory Ending Address Register 1 */#define MPC105_MEAR2		0x94	/* Memory Ending Address Register 2 */#define MPC105_EMEAR1		0x98	/* Extended Memory Ending Addr Reg 1 */#define MPC105_EMEAR2		0x9c	/* Extended Memory Ending Addr Reg 2 */#define MPC105_MBER		0xa0	/* Memory Bank Enable Register */#define MPC105_PICR1		0xa8	/* Processor Interface Config. Reg 1 */#define MPC105_PICR2		0xac	/* Processor Interface Config. Reg 2 */#define MPC105_OS_VPR1		0xba	/* OS Visible Parameters Register 1 */	#define MPC105_OS_VPR2		0xbb	/* OS Visible Parameters Register 2 */	#define MPC105_ERR_EN_R1	0xc0	/* Error Enable Register 1 */#define MPC105_ERR_DR1		0xc1	/* Error Detection Register 1 */#define MPC105_60X_BESR		0xc3	/* 60x Bus Error Status Register */#define MPC105_ERR_EN_R2	0xc4	/* Error Enable Register 2 */#define MPC105_ERR_DR2		0xc5	/* Error Detection Register 2 */#define MPC105_PCI_BESR		0xc7	/* PCI Bus Error Status Register */#define MPC105_60XPCI_EAR	0xc8	/* 60x/PCI Error Address Register */#define MPC105_MCCR1		0xf0	/* Memory Control Configuration Reg 1 */#define MPC105_MCCR2		0xf4	/* Memory Control Configuration Reg 2 */#define MPC105_MCCR3		0xf8	/* Memory Control Configuration Reg 3 */#define MPC105_MCCR4		0xfc	/* Memory Control Configuration Reg 4 *//* External Configuration Registers - Address Map A */#define MPC105_ECR1		0x80000092 /* External Configuration Reg 1 */#define MPC105_ECR2		0x8000081c /* External Configuration Reg 2 */#define MPC105_ECR3		0x80000850 /* External Configuration Reg 3 *//* Other registers are accessed indirectly via the registers below */#define	MPC105_REG_SELECT	(int *)0x80000cf8 /* register select */#define	MPC105_REG_DATA		(int *)0x80000cfc /* register data */#define	MPC105_REG(nn)		((nn << 24) | 0x80)/* Pci Command Reg (CMD) - 0x04 */#define CMD_SERR		0x0100	/* enable SERR signal */#define CMD_PAR_ERR		0x0040	/* respond to parity errors */#define CMD_PCI_MASTER		0x0004	/* generate pci mem. accesses */#define CMD_PCI_SLAVE		0x0002	/* respond to pci mem. accesses *//* Pci Status Reg (STAT) - 0x6 */#define STAT_PAR_ERR		0x8000	/* parity error detected */#define STAT_SERR		0x4000	/* SERR is asserted */#define STAT_MASTER_MST_ABORT	0x2000	/* transaction using master-abort */#define STAT_MASTER_TGT_ABORT	0x1000	/* transaction using master-abort */#define STAT_TARGET_TGT_ABORT	0x0800	/* transaction using master-abort */#define STAT_DATA_PAR_ERR	0x0100	/* data parity error detected */#define STAT_NO_RSV_BITS	0xf900	/* non reserved or non hardwired bits *//* Power Management Configuration Register (PMCR) - 0x70 */#define PMCR_NO_NAP_MSG		0x8000	/* HALT command broadcast */#define PMCR_NO_SLEEP_MSG	0x4000	/* Sleep message broadcast */#define PMCR_SLEEP_MSG_TYPE	0x2000	/* Sleep message type */#define PMCR_LP_REF_EN		0x1000	/* Low-power refresh enable */#define PMCR_NO_604_RUN		0x0800	/* Do not assert QACK (PPC604 only) */#define PMCR_601_NEED_QREQ	0x0400	/* QREQ requested (PPC601 only) */#define PMCR_SUSP_QACK		0x0200	/* Suspend mode will assert QACK */#define PMCR_PM			0x0080	/* Power Management enable */#define PMCR_DOZE		0x0020	/* Doze mode enable */#define PMCR_NAP		0x0010	/* Nap mode enable */#define PMCR_SLEEP		0x0008	/* Sleep mode enable */#define PMCR_CKO_EN		0x0004	/* test clock output driver enable */#define PMCR_CKO_SEL		0x0002	/* Selects the clock source */#define PMCR_BR1_WAKE		0x0001	/* Enable awareness of a second CPU *//* Memory Starting Address Register 1 - 0x80 */#define MSAR1_BANK3_MSK		0xff000000	/* Starting addr for bank 3 */#define MSAR1_BANK2_MSK		0x00ff0000	/* Starting addr for bank 2 */#define MSAR1_BANK1_MSK		0x0000ff00	/* Starting addr for bank 1 */#define MSAR1_BANK0_MSK		0x000000ff	/* Starting addr for bank 0 *//* Memory Starting Address Register 2 - 0x84 */#define MSAR2_BANK7_MSK		0xff000000	/* Starting addr for bank 7 */#define MSAR2_BANK6_MSK		0x00ff0000	/* Starting addr for bank 6 */#define MSAR2_BANK5_MSK		0x0000ff00	/* Starting addr for bank 5 */#define MSAR2_BANK4_MSK		0x000000ff	/* Starting addr for bank 4 *//* Extended Memory Start Address Register 1 - 0x88 */#define EMSAR1_BANK3_MSK	0x03000000	/* Extended starting addr 3 */ #define EMSAR1_BANK2_MSK	0x00030000	/* Extended starting addr 2 */ #define EMSAR1_BANK1_MSK	0x00000300	/* Extended starting addr 1 */ #define EMSAR1_BANK0_MSK	0x00000003	/* Extended starting addr 0 */ /* Extended Memory Start Address Register 2 - 0x8c */#define EMSAR2_BANK7_MSK	0x03000000	/* Extended starting addr 7 */ #define EMSAR2_BANK6_MSK	0x00030000	/* Extended starting addr 6 */ #define EMSAR2_BANK5_MSK	0x00000300	/* Extended starting addr 5 */ #define EMSAR2_BANK4_MSK	0x00000003	/* Extended starting addr 4 */ /* Memory Ending Address Register 1 - 0x90 */#define MEAR1_BANK3_MSK         0xff000000      /* Ending addr for bank 3 */#define MEAR1_BANK2_MSK         0x00ff0000      /* Ending addr for bank 2 */#define MEAR1_BANK1_MSK         0x0000ff00      /* Ending addr for bank 1 */#define MEAR1_BANK0_MSK         0x000000ff      /* Ending addr for bank 0 *//* Memory Ending Address Register 2 - 0x94 */#define MEAR2_BANK7_MSK         0xff000000      /* Ending addr for bank 7 */#define MEAR2_BANK6_MSK         0x00ff0000      /* Ending addr for bank 6 */#define MEAR2_BANK5_MSK         0x0000ff00      /* Ending addr for bank 5 */#define MEAR2_BANK4_MSK         0x000000ff      /* Ending addr for bank 4 *//* Extended Memory Ending Address Register 1 - 0x98 */#define EMEAR1_BANK3_MSK	0x03000000	/* Extended ending addr 3 */ #define EMEAR1_BANK2_MSK	0x00030000	/* Extended ending addr 2 */ #define EMEAR1_BANK1_MSK	0x00000300	/* Extended ending addr 1 */ #define EMEAR1_BANK0_MSK	0x00000003	/* Extended ending addr 0 */ /* Extended Memory Ending Address Register 2 - 0x9c */#define EMEAR2_BANK7_MSK	0x03000000	/* Extended ending addr 7 */ #define EMEAR2_BANK6_MSK	0x00030000	/* Extended ending addr 6 */ #define EMEAR2_BANK5_MSK	0x00000300	/* Extended ending addr 5 */ #define EMEAR2_BANK4_MSK	0x00000003	/* Extended ending addr 4 */ /* Memory Bank Enable Register - 0xa0 */#define MBER_BANK7		0x80		/* Enable/disable bank 7 */#define MBER_BANK6		0x40		/* Enable/disable bank 6 */#define MBER_BANK5		0x20		/* Enable/disable bank 5 */#define MBER_BANK4		0x10		/* Enable/disable bank 4 */#define MBER_BANK3		0x08		/* Enable/disable bank 3 */#define MBER_BANK2		0x04		/* Enable/disable bank 2 */#define MBER_BANK1		0x02		/* Enable/disable bank 1 */#define MBER_BANK0		0x01		/* Enable/disable bank 0 *//* Processor Interface Configuration Register 1 (PICR1) - 0xa8 */#define PICR1_CF_CBA_MASK	0xff000000	/* L2 copy-back address mask */#define PICR1_CF_CBA(n)		((n)<<24)#define PICR1_CF_BREAD_WS(n)	((n)<<22)	/* Burst read wait states */#define PICR1_CF_CACHE_1G	0x00200000	/* L2 cache 0-1Gbyte only */#define PICR1_RCS0 		0x00100000	/* ROM location: PCI or 60x */#define PICR1_XIO_MODE 		0x00080000	/* Discontigous IO mode map A */#define PICR1_PROC_TYPE_MASK 	0x00060000	/* Processor type */#define PICR1_PROC_TYPE_601 	0x00000000	/* Processor type */#define PICR1_PROC_TYPE_603 	0x00040000	/* Processor type */#define PICR1_PROC_TYPE_604 	0x00060000	/* Processor type */#define PICR1_XATS		0x00010000	/* Address map: A or B */#define PICR1_CF_MP_ID		0x00008000	/* Multiprocessor id */#define PICR1_CF_LBA_EN		0x00002000	/* Local bus slave access en */#define PICR1_FLASH_WR_EN	0x00001000	/* Flash writes enable */#define PICR1_MCP_EN		0x00000800	/* Machine check enable */#define PICR1_TEA_EN		0x00000400	/* Transfer error enable */ #define PICR1_CF_DPARK		0x00000200	/* 60x parked on data bus */#define PICR1_NO_PORT_REGS	0x00000080	/* No ext configuration reg */ #define PICR1_ST_GATH_EN	0x00000040	/* Store gathering of writes */#define PICR1_LE_MODE		0x00000020	/* Little-Endian mode */#define PICR1_CF_LOOP_SNOOP	0x00000010	/* Snoop looping enable */#define PICR1_CF_APARK		0x00000008	/* 60x parked on address bus */#define PICR1_SPEC_PCI_READ	0x00000004	/* Speculative PCI reads en */#define PICR1_CF_L2_CACHE_MASK	0x00000003	/* L2/multiprocessor config. */#define	PICR1_CF_L2_NOCACHE	0x00000000#define	PICR1_CF_L2_WRITE_THROUGH 0x00000001#define	PICR1_CF_L2_COPY_BACK	0x00000002#define	PICR1_CF_L2_MP		0x00000003/* Processor Interface Configuration Register 2 (PICR2) - 0xac */#define PICR2_L2_UPDATE_EN	    0x80000000	/* Update cache misses */#define PICR2_L2_EN		    0x40000000	/* L2 cache enable */#define PICR2_CF_FLUSH_L2	    0x10000000	/* Initiate L2 cache flush */#define PICR2_CF_BYTE_DECODE	    0x02000000	/* on-chip byte-write decode */#define PICR2_CF_FAST_L2_MODE	    0x01000000	/* Fast L2 mode timing */#define PICR2_CF_DATA_RAM_TYPE	    0x00c00000	/* L2 data RAM type */#define	PICR2_CF_DATA_RAM_SYNC	    0x00000000#define	PICR2_CF_DATA_RAM_ASYNC	    0x00800000#define PICR2_CF_WMODE		    0x00300000	/* SRAM write timing */#define	PICR2_CF_WMODE_NORMAL	    0x00100000#define	PICR2_CF_WMODE_DELAY	    0x00200000#define	PICR2_CF_WMODE_EARLY	    0x00300000#define PICR2_CF_SNOOP_WS(n)	    ((n)<<18)	/* Snoop wait states */#define PICR2_CF_MOD_HIGH	    0x00020000	/* Cache mod. signal polarity */

⌨️ 快捷键说明

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