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

📄 mpc8xx.h

📁 motorola自己开发的针对coldfire 5272的Dbug bootloader程序
💻 H
📖 第 1 页 / 共 5 页
字号:
#define MPC8XX_PCMCIA_POR_PSL_7				(0x00000380)
#define MPC8XX_PCMCIA_POR_PSL_8				(0x00000400)
#define MPC8XX_PCMCIA_POR_PSL_9				(0x00000480)
#define MPC8XX_PCMCIA_POR_PSL_10			(0x00000500)
#define MPC8XX_PCMCIA_POR_PSL_11			(0x00000580)
#define MPC8XX_PCMCIA_POR_PSL_12			(0x00000600)
#define MPC8XX_PCMCIA_POR_PSL_13			(0x00000680)
#define MPC8XX_PCMCIA_POR_PSL_14			(0x00000700)
#define MPC8XX_PCMCIA_POR_PSL_15			(0x00000780)
#define MPC8XX_PCMCIA_POR_PSL_16			(0x00000800)
#define MPC8XX_PCMCIA_POR_PSL_17			(0x00000880)
#define MPC8XX_PCMCIA_POR_PSL_18			(0x00000900)
#define MPC8XX_PCMCIA_POR_PSL_19			(0x00000980)
#define MPC8XX_PCMCIA_POR_PSL_20			(0x00000A00)
#define MPC8XX_PCMCIA_POR_PSL_21			(0x00000A80)
#define MPC8XX_PCMCIA_POR_PSL_22			(0x00000B00)
#define MPC8XX_PCMCIA_POR_PSL_23			(0x00000B80)
#define MPC8XX_PCMCIA_POR_PSL_24			(0x00000C00)
#define MPC8XX_PCMCIA_POR_PSL_25			(0x00000C80)
#define MPC8XX_PCMCIA_POR_PSL_26			(0x00000D00)
#define MPC8XX_PCMCIA_POR_PSL_27			(0x00000D80)
#define MPC8XX_PCMCIA_POR_PSL_28			(0x00000E00)
#define MPC8XX_PCMCIA_POR_PSL_29			(0x00000E80)
#define MPC8XX_PCMCIA_POR_PSL_30			(0x00000F00)
#define MPC8XX_PCMCIA_POR_PSL_31			(0x00000F80)
#define MPC8XX_PCMCIA_POR_PSL_32			(0x00000000)
#define MPC8XX_PCMCIA_POR_PPS_8				(0x00000000)
#define MPC8XX_PCMCIA_POR_PPS_16			(0x00000040)
#define MPC8XX_PCMCIA_POR_PRS_MEM			(0x00000000)
#define MPC8XX_PCMCIA_POR_PRS_AMEM			(0x00000010)
#define MPC8XX_PCMCIA_POR_PRS_IO			(0x00000018)
#define MPC8XX_PCMCIA_POR_PRS_DMA			(0x00000020)
#define MPC8XX_PCMCIA_POR_PRS_LAST_DMA		(0x00000028)
#define MPC8XX_PCMCIA_POR_PSLOT_A			(0x00000000)
#define MPC8XX_PCMCIA_POR_PSLOT_B			(0x00000004)
#define MPC8XX_PCMCIA_POR_WP				(0x00000002)
#define MPC8XX_PCMCIA_POR_PV				(0x00000001)

#define MPC8XX_PCMCIA_PGCR_IREQLVL(a)	(((a)&0x00FF)<<24)
#define MPC8XX_PCMCIA_PGCR_SCHLVL(a)	(((a)&0x00FF)<<16)
#define MPC8XX_PCMCIA_PGCR_DREQ_NONE	(0x00000000)
#define MPC8XX_PCMCIA_PGCR_DREQ_IOIS16	(0x00008000)
#define MPC8XX_PCMCIA_PGCR_DREQ_SPKR	(0x0000C000)
#define MPC8XX_PCMCIA_PGCR_OE			(0x00000080)
#define MPC8XX_PCMCIA_PGCR_RESET		(0x00000040)

#define MPC8XX_PCMCIA_PSCR_CAVS1_C		(0x80000000)
#define MPC8XX_PCMCIA_PSCR_CAVS2_C		(0x40000000)
#define MPC8XX_PCMCIA_PSCR_CAWP_C		(0x20000000)
#define MPC8XX_PCMCIA_PSCR_CACD2_C		(0x10000000)
#define MPC8XX_PCMCIA_PSCR_CACD1_C		(0x08000000)
#define MPC8XX_PCMCIA_PSCR_CABVD2_C		(0x04000000)
#define MPC8XX_PCMCIA_PSCR_CABVD1_C		(0x02000000)
#define MPC8XX_PCMCIA_PSCR_CARDY_L		(0x00800000)
#define MPC8XX_PCMCIA_PSCR_CARDY_H		(0x00400000)
#define MPC8XX_PCMCIA_PSCR_CARDY_R		(0x00200000)
#define MPC8XX_PCMCIA_PSCR_CARDY_F		(0x00100000)
#define MPC8XX_PCMCIA_PSCR_CBVS1_C		(0x00008000)
#define MPC8XX_PCMCIA_PSCR_CBVS2_C		(0x00004000)
#define MPC8XX_PCMCIA_PSCR_CBWP_C		(0x00002000)
#define MPC8XX_PCMCIA_PSCR_CBCD2_C		(0x00001000)
#define MPC8XX_PCMCIA_PSCR_CBCD1_C		(0x00000800)
#define MPC8XX_PCMCIA_PSCR_CBBVD2_C		(0x00000400)
#define MPC8XX_PCMCIA_PSCR_CBBVD1_C		(0x00000200)
#define MPC8XX_PCMCIA_PSCR_CBRDY_L		(0x00000080)
#define MPC8XX_PCMCIA_PSCR_CBRDY_H		(0x00000040)
#define MPC8XX_PCMCIA_PSCR_CBRDY_R		(0x00000020)
#define MPC8XX_PCMCIA_PSCR_CBRDY_F		(0x00000010)
#define MPC8XX_PCMCIA_PSCR_CARD_A_MASK	(0xFFFF0000)
#define MPC8XX_PCMCIA_PSCR_CARD_B_MASK	(0x0000FFFF)

#define MPC8XX_PCMCIA_PIPR_CAVS1		(0x80000000)
#define MPC8XX_PCMCIA_PIPR_CAVS2		(0x40000000)
#define MPC8XX_PCMCIA_PIPR_CAWP			(0x20000000)
#define MPC8XX_PCMCIA_PIPR_CACD2		(0x10000000)
#define MPC8XX_PCMCIA_PIPR_CACD1		(0x08000000)
#define MPC8XX_PCMCIA_PIPR_CABVD2		(0x04000000)
#define MPC8XX_PCMCIA_PIPR_CABVD1		(0x02000000)
#define MPC8XX_PCMCIA_PIPR_CARDY		(0x01000000)
#define MPC8XX_PCMCIA_PIPR_CBVS1		(0x00008000)
#define MPC8XX_PCMCIA_PIPR_CBVS2		(0x00004000)
#define MPC8XX_PCMCIA_PIPR_CBWP			(0x00002000)
#define MPC8XX_PCMCIA_PIPR_CBCD2		(0x00001000)
#define MPC8XX_PCMCIA_PIPR_CBCD1		(0x00000800)
#define MPC8XX_PCMCIA_PIPR_CBBVD2		(0x00000400)
#define MPC8XX_PCMCIA_PIPR_CBBVD1		(0x00000200)
#define MPC8XX_PCMCIA_PIPR_CBRDY		(0x00000100)
#define MPC8XX_PCMCIA_PIPR_CARD_A_MASK	(0xFFFF0000)
#define MPC8XX_PCMCIA_PIPR_CARD_B_MASK	(0x0000FFFF)

#define MPC8XX_PCMCIA_PER_CA_EVS1		(0x80000000)
#define MPC8XX_PCMCIA_PER_CA_EVS2		(0x40000000)
#define MPC8XX_PCMCIA_PER_CA_EWP		(0x20000000)
#define MPC8XX_PCMCIA_PER_CA_ECD2		(0x10000000)
#define MPC8XX_PCMCIA_PER_CA_ECD1		(0x08000000)
#define MPC8XX_PCMCIA_PER_CA_EBVD2		(0x04000000)
#define MPC8XX_PCMCIA_PER_CA_EBVD1		(0x02000000)
#define MPC8XX_PCMCIA_PER_CA_ERDY_L		(0x00800000)
#define MPC8XX_PCMCIA_PER_CA_ERDY_H		(0x00400000)
#define MPC8XX_PCMCIA_PER_CA_ERDY_R		(0x00200000)
#define MPC8XX_PCMCIA_PER_CA_ERDY_F		(0x00100000)
#define MPC8XX_PCMCIA_PER_CB_EVS1		(0x00008000)
#define MPC8XX_PCMCIA_PER_CB_EVS2		(0x00004000)
#define MPC8XX_PCMCIA_PER_CB_EWP		(0x00002000)
#define MPC8XX_PCMCIA_PER_CB_ECD2		(0x00001000)
#define MPC8XX_PCMCIA_PER_CB_ECD1		(0x00000800)
#define MPC8XX_PCMCIA_PER_CB_EBVD2		(0x00000400)
#define MPC8XX_PCMCIA_PER_CB_EBVD1		(0x00000200)
#define MPC8XX_PCMCIA_PER_CB_ERDY_L		(0x00000080)
#define MPC8XX_PCMCIA_PER_CB_ERDY_H		(0x00000040)
#define MPC8XX_PCMCIA_PER_CB_ERDY_R		(0x00000020)
#define MPC8XX_PCMCIA_PER_CB_ERDY_F		(0x00000010)

#endif /* Mpc8xx_pcmcia */

/***********************************************************************/

#ifdef Mpc8xx_memc
/*
 * Memory Controller, MEMC
 */
typedef volatile struct
{
	uint32	BR0;		/* Base Register						*/
	uint32	OR0;		/* Option Register						*/
	uint32	BR1;		/* Base Register						*/
	uint32	OR1;		/* Option Register						*/
	uint32	BR2;		/* Base Register						*/
	uint32	OR2;		/* Option Register						*/
	uint32	BR3;		/* Base Register						*/
	uint32	OR3;		/* Option Register						*/
	uint32	BR4;		/* Base Register						*/
	uint32	OR4;		/* Option Register						*/
	uint32	BR5;		/* Base Register						*/
	uint32	OR5;		/* Option Register						*/
	uint32	BR6;		/* Base Register						*/
	uint32	OR6;		/* Option Register						*/
	uint32	BR7;		/* Base Register						*/
	uint32	OR7;		/* Option Register						*/
	uint32	reserved1[(1+0x163-0x140)/4];
	uint32	MAR;		/* Memory Address Register				*/
	uint32	MCR;		/* Memory Command Register				*/
	uint32	reserved2;
	uint32	MAMR;		/* Machine A Mode Register				*/
	uint32	MBMR;		/* Machine B Mode Register				*/
	uint16	MSTAT;		/* Memory Status Register				*/
	uint16	MPTPR;		/* Memory Periodic Timer Prescaler		*/
	uint32	MDR;		/* Memory Data Register					*/
	uint32	reserved3[(1+0x1ff-0x180)/4];
} MPC8XX_MEMC;

#define MPC8XX_MEMC_BR_BA(ADDR)		((ADDR)&0xFFFF8000)
#define MPC8XX_MEMC_BR_BA_MASK		(0xFFFF8000)
#define MPC8XX_MEMC_BR_AT_xxx		(0x00000000)	/* FIX !!! */
#define MPC8XX_MEMC_BR_PS_N(N)		((N) == 8  ? 0x00000400 :	\
									 (N) == 16 ? 0x00000800 :	\
									             0x00000000)
#define MPC8XX_MEMC_BR_PS_8			(0x00000400)
#define MPC8XX_MEMC_BR_PS_16		(0x00000800)
#define MPC8XX_MEMC_BR_PS_32		(0x00000000)
#define MPC8XX_MEMC_BR_PARE			(0x00000200)
#define MPC8XX_MEMC_BR_WP			(0x00000100)
#define MPC8XX_MEMC_BR_MS_GPCM		(0x00000000)
#define MPC8XX_MEMC_BR_MS_UPMA		(0x00000080)
#define MPC8XX_MEMC_BR_MS_UPMB		(0x000000C0)
#define MPC8XX_MEMC_BR_V			(0x00000001)

#define MPC8XX_MEMC_OR_AM_MASK		(0xFFFF8000)
#define MPC8XX_MEMC_OR_ATM_MASK		(0x00007000)
#define MPC8XX_MEMC_OR_CSNT			(0x00000800)
#define MPC8XX_MEMC_OR_SAM			(0x00000800)
#define MPC8XX_MEMC_OR_ACS_0		(0x00000000)
#define MPC8XX_MEMC_OR_ACS_Q		(0x00000400)
#define MPC8XX_MEMC_OR_ACS_H		(0x00000600)
#define MPC8XX_MEMC_OR_BI			(0x00000100)
#define MPC8XX_MEMC_OR_SCY_0		(0x00000000)
#define MPC8XX_MEMC_OR_SCY_1		(0x00000010)
#define MPC8XX_MEMC_OR_SCY_2		(0x00000020)
#define MPC8XX_MEMC_OR_SCY_3		(0x00000030)
#define MPC8XX_MEMC_OR_SCY_4		(0x00000040)
#define MPC8XX_MEMC_OR_SCY_5		(0x00000050)
#define MPC8XX_MEMC_OR_SCY_6		(0x00000060)
#define MPC8XX_MEMC_OR_SCY_7		(0x00000070)
#define MPC8XX_MEMC_OR_SCY_8		(0x00000080)
#define MPC8XX_MEMC_OR_SCY_9		(0x00000090)
#define MPC8XX_MEMC_OR_SCY_A		(0x000000A0)
#define MPC8XX_MEMC_OR_SCY_B		(0x000000B0)
#define MPC8XX_MEMC_OR_SCY_C		(0x000000C0)
#define MPC8XX_MEMC_OR_SCY_D		(0x000000D0)
#define MPC8XX_MEMC_OR_SCY_E		(0x000000E0)
#define MPC8XX_MEMC_OR_SCY_F		(0x000000F0)
#define MPC8XX_MEMC_OR_SETA			(0x00000008)
#define MPC8XX_MEMC_OR_TRLX			(0x00000004)
#define MPC8XX_MEMC_OR_EHTR			(0x00000002)

#define MPC8XX_MEMC_OR_AM_4GIG		(0x00000000)
#define MPC8XX_MEMC_OR_AM_2GIG		(0x80000000)
#define MPC8XX_MEMC_OR_AM_1GIG		(0xC0000000)
#define MPC8XX_MEMC_OR_AM_512M		(0xE0000000)
#define MPC8XX_MEMC_OR_AM_256M		(0xF0000000)
#define MPC8XX_MEMC_OR_AM_128M		(0xF8000000)
#define MPC8XX_MEMC_OR_AM_64M		(0xFC000000)
#define MPC8XX_MEMC_OR_AM_32M		(0xFE000000)
#define MPC8XX_MEMC_OR_AM_16M		(0xFF000000)
#define MPC8XX_MEMC_OR_AM_8M		(0xFF800000)
#define MPC8XX_MEMC_OR_AM_4M		(0xFFC00000)
#define MPC8XX_MEMC_OR_AM_2M		(0xFFE00000)
#define MPC8XX_MEMC_OR_AM_1M		(0xFFF00000)
#define MPC8XX_MEMC_OR_AM_512K		(0xFFF80000)
#define MPC8XX_MEMC_OR_AM_256K		(0xFFFC0000)
#define MPC8XX_MEMC_OR_AM_128K		(0xFFFE0000)
#define MPC8XX_MEMC_OR_AM_64K		(0xFFFF0000)
#define MPC8XX_MEMC_OR_AM_32K		(0xFFFF8000)

#define MPC8XX_MEMC_MCR_OP_WRITE	(0x00000000)
#define MPC8XX_MEMC_MCR_OP_READ		(0x40000000)
#define MPC8XX_MEMC_MCR_OP_RUN		(0x80000000)
#define MPC8XX_MEMC_MCR_UM_UPMA		(0x00000000)
#define MPC8XX_MEMC_MCR_UM_UPMB		(0x00800000)
#define MPC8XX_MEMC_MCR_MB_CS_N(N)	(((N) & 0X7) << 13)
#define MPC8XX_MEMC_MCR_MB_CS0		(0x00000000)
#define MPC8XX_MEMC_MCR_MB_CS1		(0x00002000)
#define MPC8XX_MEMC_MCR_MB_CS2		(0x00004000)
#define MPC8XX_MEMC_MCR_MB_CS3		(0x00006000)
#define MPC8XX_MEMC_MCR_MB_CS4		(0x00008000)
#define MPC8XX_MEMC_MCR_MB_CS5		(0x0000A000)
#define MPC8XX_MEMC_MCR_MB_CS6		(0x0000C000)
#define MPC8XX_MEMC_MCR_MB_CS7		(0x0000E000)
#define MPC8XX_MEMC_MCR_MCLF_N(N)	((N) == 0 ? (1 << 8) : 	\
									 ((N) == 16 ? 0 : 		\
									  (((N) & 0XF) << 8)))
#define MPC8XX_MEMC_MCR_MCLF_1		(0x00000100)
#define MPC8XX_MEMC_MCR_MCLF_2		(0x00000200)
#define MPC8XX_MEMC_MCR_MCLF_3		(0x00000300)
#define MPC8XX_MEMC_MCR_MCLF_4		(0x00000400)
#define MPC8XX_MEMC_MCR_MCLF_5		(0x00000500)
#define MPC8XX_MEMC_MCR_MCLF_6		(0x00000600)
#define MPC8XX_MEMC_MCR_MCLF_7		(0x00000700)
#define MPC8XX_MEMC_MCR_MCLF_8		(0x00000800)
#define MPC8XX_MEMC_MCR_MCLF_9		(0x00000900)
#define MPC8XX_MEMC_MCR_MCLF_10		(0x00000A00)
#define MPC8XX_MEMC_MCR_MCLF_11		(0x00000B00)
#define MPC8XX_MEMC_MCR_MCLF_12		(0x00000C00)
#define MPC8XX_MEMC_MCR_MCLF_13		(0x00000D00)
#define MPC8XX_MEMC_MCR_MCLF_14		(0x00000E00)
#define MPC8XX_MEMC_MCR_MCLF_15		(0x00000F00)
#define MPC8XX_MEMC_MCR_MCLF_16		(0x00000000)
#define MPC8XX_MEMC_MCR_MAD_N(N)	((N) & 0x3F)

#define MPC8XX_MEMC_MMR_PT(a)		(((a)&0x00FF)<<24)
#define MPC8XX_MEMC_MMR_PTE			(0x00800000)
#define MPC8XX_MEMC_MMR_AM_MASK		(0x00700000)
#define MPC8XX_MEMC_MMR_AM_000		(0x00000000)
#define MPC8XX_MEMC_MMR_AM_001		(0x00100000)
#define MPC8XX_MEMC_MMR_AM_010		(0x00200000)
#define MPC8XX_MEMC_MMR_AM_011		(0x00300000)
#define MPC8XX_MEMC_MMR_AM_100		(0x00400000)
#define MPC8XX_MEMC_MMR_AM_101		(0x00500000)
#define MPC8XX_MEMC_MMR_DS_1		(0x00000000)
#define MPC8XX_MEMC_MMR_DS_2		(0x00020000)
#define MPC8XX_MEMC_MMR_DS_3		(0x00040000)
#define MPC8XX_MEMC_MMR_DS_4		(0x00060000)
#define MPC8XX_MEMC_MMR_G0CL_A12	(0x00000000)
#define MPC8XX_MEMC_MMR_G0CL_A11	(0x00002000)
#define MPC8XX_MEMC_MMR_G0CL_A10	(0x00004000)
#define MPC8XX_MEMC_MMR_G0CL_A9		(0x00006000)
#define MPC8XX_MEMC_MMR_G0CL_A8		(0x00008000)
#define MPC8XX_MEMC_MMR_G0CL_A7		(0x0000A000)
#define MPC8XX_MEMC_MMR_G0CL_A6		(0x0000C000)
#define MPC8XX_MEMC_MMR_G0CL_A5		(0x0000E000)
#define MPC8XX_MEMC_MMR_GPL_4DIS	(0x00001000)
#define MPC8XX_MEMC_MMR_RLF_1		(0x00000100)
#define MPC8XX_MEMC_MMR_RLF_2		(0x00000200)
#define MPC8XX_MEMC_MMR_RLF_3		(0x00000300)
#define MPC8XX_MEMC_MMR_RLF_4		(0x00000400)
#define MPC8XX_MEMC_MMR_RLF_5		(0x00000500)
#define MPC8XX_MEMC_MMR_RLF_6		(0x00000600)
#define MPC8XX_MEMC_MMR_RLF_7		(0x00000700)
#define MPC8XX_MEMC_MMR_RLF_8		(0x00000800)
#define MPC8XX_MEMC_MMR_RLF_9		(0x00000900)
#define MPC8XX_MEMC_MMR_RLF_10		(0x00000A00)
#define MPC8XX_MEMC_MMR_RLF_11		(0x00000B00)
#define MPC8XX_MEMC_MMR_RLF_12		(0x00000C00)
#define MPC8XX_MEMC_MMR_RLF_13		(0x00000D00)
#define MPC8XX_MEMC_MMR_RLF_14		(0x00000E00)
#define MPC8XX_MEMC_MMR_RLF_15		(0x00000F00)
#define MPC8XX_MEMC_MMR_RLF_16		(0x00000000)
#define MPC8XX_MEMC_MMR_WLF_1		(0x00000010)
#define MPC8XX_MEMC_MMR_WLF_2		(0x00000020)
#define MPC8XX_MEMC_MMR_WLF_3		(0x00000030)
#define MPC8XX_MEMC_MMR_WLF_4		(0x00000040)
#define MPC8XX_MEMC_MMR_WLF_5		(0x00000050)
#define MPC8XX_MEMC_MMR_WLF_6		(0x00000060)
#define MPC8XX_MEMC_MMR_WLF_7		(0x00000070)
#define MPC8XX_MEMC_MMR_WLF_8		(0x00000080)
#define MPC8XX_MEMC_MMR_WLF_9		(0x00000090)
#define MPC8XX_MEMC_MMR_WLF_10		(0x000000A0)
#define MPC8XX_MEMC_MMR_WLF_11		(0x000000B0)
#define MPC8XX_MEMC_MMR_WLF_12		(0x000000C0)
#define MPC8XX_MEMC_MMR_WLF_13		(0x000000D0)
#define MPC8XX_MEMC_MMR_WLF_14		(0x000000E0)
#define MPC8XX_MEMC_MMR_WLF_15		(0x000000F0)
#define MPC8XX_MEMC_MMR_WLF_16		(0x00000000)
#define MPC8XX_MEMC_MMR_TLF_1		(0x00000001)
#define MPC8XX_MEMC_MMR_TLF_2		(0x00000002)
#define MPC8XX_MEMC_MMR_TLF_3		(0x00000003)
#define MPC8XX_MEMC_MMR_TLF_4		(0x00000004)
#define MPC8XX_MEMC_MMR_TLF_5		(0x00000005)
#define MPC8XX_MEMC_MMR_TLF_6		(0x00000006)
#define MPC8XX_MEMC_MMR_TLF_7		(0x00000007)
#define MPC8XX_MEMC_MMR_TLF_8		(0x00000008)
#define MPC8XX_MEMC_MMR_TLF_9		(0x00000009)
#define MPC8XX_MEMC_MMR_TLF_10		(0x0000000A)
#define MPC8XX_MEMC_MMR_TLF_11		(0x0000000B)
#define MPC8XX_MEMC_MMR_TLF_12		(0x0000000C)
#define MPC8XX_MEMC_MMR_TLF_13		(0x0000000D)
#define MPC8XX_MEMC_MMR_TLF_14		(0x0000000E)
#define MPC8XX_MEMC_MMR_TLF_15		(0x0000000F)
#define MPC8XX_MEMC_MMR_TLF_16		(0x00000000)

#define MPC8XX_MEMC_MSTAT_PER0		(0x8000)
#define MPC8XX_MEMC_MSTAT_PER1		(0x4000)
#define MPC8XX_MEMC_MSTAT_PER2		(0x2000)

⌨️ 快捷键说明

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