📄 mcf5282.h
字号:
/*
* File: mcf5282.h
* Purpose: MCF5282 definitions
*
* Notes: This file automatically included.
* __IPSBAR must be defined in dbug/proj/<board>/src/<board>.h
*/
#ifndef _CPU_MCF5282_H
#define _CPU_MCF5282_H
/*********************************************************************
*
* System Control Module (SCM)
*
*********************************************************************/
/* Read/Write access macros for general use */
#define MCF5282_SCM_IPSBAR (*(vuint32 *)(void *)(&__IPSBAR[0x0000]))
#define MCF5282_SCM_RAMBAR (*(vuint32 *)(void *)(&__IPSBAR[0x0004]))
#define MCF5282_SCM_FLASHBAR (*(vuint32 *)(void *)(&__IPSBAR[0x0008]))
#define MCF5282_SCM_CRSR (*(vuint8 *)(void *)(&__IPSBAR[0x0010]))
#define MCF5282_SCM_CWCR (*(vuint8 *)(void *)(&__IPSBAR[0x0011]))
#define MCF5282_SCM_LPICR (*(vuint8 *)(void *)(&__IPSBAR[0x0012]))
#define MCF5282_SCM_CWSR (*(vuint8 *)(void *)(&__IPSBAR[0x0013]))
#define MCF5282_SCM_DMAREQC (*(vuint32 *)(void *)(&__IPSBAR[0x0014]))
#define MCF5282_SCM_MPARK (*(vuint32 *)(void *)(&__IPSBAR[0x001C]))
#define MCF5282_SCM_MPR (*(vuint8 *)(void *)(&__IPSBAR[0x0020]))
#define MCF5282_SCM_PACR0 (*(vuint8 *)(void *)(&__IPSBAR[0x0024]))
#define MCF5282_SCM_PACR1 (*(vuint8 *)(void *)(&__IPSBAR[0x0025]))
#define MCF5282_SCM_PACR2 (*(vuint8 *)(void *)(&__IPSBAR[0x0026]))
#define MCF5282_SCM_PACR3 (*(vuint8 *)(void *)(&__IPSBAR[0x0027]))
#define MCF5282_SCM_PACR4 (*(vuint8 *)(void *)(&__IPSBAR[0x0028]))
#define MCF5282_SCM_PACR5 (*(vuint8 *)(void *)(&__IPSBAR[0x002A]))
#define MCF5282_SCM_PACR6 (*(vuint8 *)(void *)(&__IPSBAR[0x002B]))
#define MCF5282_SCM_PACR7 (*(vuint8 *)(void *)(&__IPSBAR[0x002C]))
#define MCF5282_SCM_PACR8 (*(vuint8 *)(void *)(&__IPSBAR[0x002E]))
#define MCF5282_SCM_GPACR0 (*(vuint8 *)(void *)(&__IPSBAR[0x0030]))
#define MCF5282_SCM_GPACR1 (*(vuint8 *)(void *)(&__IPSBAR[0x0031]))
/* Bit level definitions and macros */
#define MCF5282_SCM_IPSBAR_BA(x) ((x)&0xC0000000)
#define MCF5282_SCM_IPSBAR_V (0x00000001)
#define MCF5282_SCM_RAMBAR_BA(x) ((x)&0xFFFF0000)
#define MCF5282_SCM_RAMBAR_BDE (0x00000200)
#define MCF5282_SCM_FLASHBAR_BA(x) ((x)&0xFFF80000)
#define MCF5282_SCM_FLASHBAR_BDE (0x00000200)
#define MCF5282_SCM_CRSR_EXT (0x80)
#define MCF5282_SCM_CRSR_CWDR (0x20)
#define MCF5282_SCM_CWCR_CWE (0x80)
#define MCF5282_SCM_CWCR_CWRI (0x40)
#define MCF5282_SCM_CWCR_CWT(x) (((x)&0x03)<<3)
#define MCF5282_SCM_CWCR_CWTA (0x04)
#define MCF5282_SCM_CWCR_CWTAVAL (0x02)
#define MCF5282_SCM_CWCR_CWTIC (0x01)
#define MCF5282_SCM_LPICR_ENBSTOP (0x80)
#define MCF5282_SCM_LPICR_XSTOP_IPL(x) (((x)&0x07)<<4)
#define MCF5282_SCM_CWSR_SEQ1 (0x55)
#define MCF5282_SCM_CWSR_SEQ2 (0xAA)
#define MCF5282_SCM_DMAREQC_DMAC3(x) (((x)&0x000F)<<12)
#define MCF5282_SCM_DMAREQC_DMAC2(x) (((x)&0x000F)<<8)
#define MCF5282_SCM_DMAREQC_DMAC1(x) (((x)&0x000F)<<4)
#define MCF5282_SCM_DMAREQC_DMAC0(x) (((x)&0x000F))
#define MCF5282_SCM_DMAREQC_DMATIMER0 (0x4)
#define MCF5282_SCM_DMAREQC_DMATIMER1 (0x5)
#define MCF5282_SCM_DMAREQC_DMATIMER2 (0x6)
#define MCF5282_SCM_DMAREQC_DMATIMER3 (0x7)
#define MCF5282_SCM_DMAREQC_UART0 (0x8)
#define MCF5282_SCM_DMAREQC_UART1 (0x9)
#define MCF5282_SCM_DMAREQC_UART2 (0xA)
#define MCF5282_SCM_MPARK_M2_P_EN (0x02000000)
#define MCF5282_SCM_MPARK_BCR24BIT (0x01000000)
#define MCF5282_SCM_MPARK_M3_PRTY(x) (((x)&0x03)<<22)
#define MCF5282_SCM_MPARK_M2_PRTY(x) (((x)&0x03)<<20)
#define MCF5282_SCM_MPARK_M0_PRTY(x) (((x)&0x03)<<18)
#define MCF5282_SCM_MPARK_M1_PRTY(x) (((x)&0x03)<<16)
#define MCF5282_SCM_MPARK_FIXED (0x00040000)
#define MCF5282_SCM_MPARK_TIMEOUT (0x00020000)
#define MCF5282_SCM_MPARK_PRK_LAST (0x00010000)
#define MCF5282_SCM_MPARK_LCKOUT_TIME(x) (((x)&0x000F)<<8)
#define MCF5282_SCM_MPARK_MX_PRTY_FIRST (0x3)
#define MCF5282_SCM_MPARK_MX_PRTY_SECOND (0x2)
#define MCF5282_SCM_MPARK_MX_PRTY_THIRD (0x1)
#define MCF5282_SCM_MPARK_MX_PRTY_FOURTH (0x0)
#define MCF5282_SCM_MPR_MPR(x) (((x)&0x0F))
#define MCF5282_SCM_PACR_LOCK1 (0x80)
#define MCF5282_SCM_PACR_ACCESSCTRL1 (((x)&0x07)<<4)
#define MCF5282_SCM_PACR_LOCK0 (0x08)
#define MCF5282_SCM_PACR_ACCESSCTRL0 (((x)&0x07))
#define MCF5282_SCM_PACR_RW_NA (0x0)
#define MCF5282_SCM_PACR_R_NA (0x1)
#define MCF5282_SCM_PACR_R_R (0x2)
#define MCF5282_SCM_PACR_RW_RW (0x4)
#define MCF5282_SCM_PACR_RW_R (0x5)
#define MCF5282_SCM_PACR_NA_NA (0x7)
#define MCF5282_SCM_GPACR_LOCK (0x80)
#define MCF5282_SCM_GPACR_ACCESSCTRL (((x)&0x0F))
#define MCF5282_SCM_GPACR_ACCESSCTRL_RW_NA (0x0)
#define MCF5282_SCM_GPACR_ACCESSCTRL_R_NA (0x1)
#define MCF5282_SCM_GPACR_ACCESSCTRL_R_R (0x2)
#define MCF5282_SCM_GPACR_ACCESSCTRL_RW_RW (0x4)
#define MCF5282_SCM_GPACR_ACCESSCTRL_RW_R (0x5)
#define MCF5282_SCM_GPACR_ACCESSCTRL_NA_NA (0x7)
#define MCF5282_SCM_GPACR_ACCESSCTRL_RWE_NA (0x8)
#define MCF5282_SCM_GPACR_ACCESSCTRL_RE_NA (0x9)
#define MCF5282_SCM_GPACR_ACCESSCTRL_RE_RE (0xA)
#define MCF5282_SCM_GPACR_ACCESSCTRL_E_NA (0xB)
#define MCF5282_SCM_GPACR_ACCESSCTRL_RWE_RWE (0xC)
#define MCF5282_SCM_GPACR_ACCESSCTRL_RWE_RE (0xD)
#define MCF5282_SCM_GPACR_ACCESSCTRL_RWE_E (0xF)
/*********************************************************************
*
* SDRAM Controller Module
*
*********************************************************************/
/* Read/Write access macros for general use */
#define MCF5282_SDRAMC_DCR (*(vuint16 *)(void *)(&__IPSBAR[0x0040]))
#define MCF5282_SDRAMC_DACR0 (*(vuint32 *)(void *)(&__IPSBAR[0x0048]))
#define MCF5282_SDRAMC_DMR0 (*(vuint32 *)(void *)(&__IPSBAR[0x004C]))
#define MCF5282_SDRAMC_DACR1 (*(vuint32 *)(void *)(&__IPSBAR[0x0050]))
#define MCF5282_SDRAMC_DMR1 (*(vuint32 *)(void *)(&__IPSBAR[0x0054]))
/* Bit level definitions and macros */
#define MCF5282_SDRAMC_DCR_NAM (0x2000)
#define MCF5282_SDRAMC_DCR_COC (0x1000)
#define MCF5282_SDRAMC_DCR_IS (0x0800)
#define MCF5282_SDRAMC_DCR_RTIM_3 (0x0000)
#define MCF5282_SDRAMC_DCR_RTIM_6 (0x0200)
#define MCF5282_SDRAMC_DCR_RTIM_9 (0x0400)
#define MCF5282_SDRAMC_DCR_RC(x) ((x)&0x01FF)
#define MCF5282_SDRAMC_DACR_BASE(x) ((x)&0xFFFC0000)
#define MCF5282_SDRAMC_DACR_RE (0x00008000)
#define MCF5282_SDRAMC_DACR_CASL(x) (((x)&0x03)<<12)
#define MCF5282_SDRAMC_DACR_CBM(x) (((x)&0x07)<<8)
#define MCF5282_SDRAMC_DACR_PS_32 (0x00000000)
#define MCF5282_SDRAMC_DACR_PS_8 (0x00000010)
#define MCF5282_SDRAMC_DACR_PS_16 (0x00000020)
#define MCF5282_SDRAMC_DACR_IMRS (0x00000040)
#define MCF5282_SDRAMC_DACR_IP (0x00000008)
#define MCF5282_SDRAMC_DMR_BAM_4G (0xFFFC0000)
#define MCF5282_SDRAMC_DMR_BAM_2G (0x7FFC0000)
#define MCF5282_SDRAMC_DMR_BAM_1G (0x3FFC0000)
#define MCF5282_SDRAMC_DMR_BAM_1024M (0x3FFC0000)
#define MCF5282_SDRAMC_DMR_BAM_512M (0x1FFC0000)
#define MCF5282_SDRAMC_DMR_BAM_256M (0x0FFC0000)
#define MCF5282_SDRAMC_DMR_BAM_128M (0x07FC0000)
#define MCF5282_SDRAMC_DMR_BAM_64M (0x03FC0000)
#define MCF5282_SDRAMC_DMR_BAM_32M (0x01FC0000)
#define MCF5282_SDRAMC_DMR_BAM_16M (0x00FC0000)
#define MCF5282_SDRAMC_DMR_BAM_8M (0x007C0000)
#define MCF5282_SDRAMC_DMR_BAM_4M (0x003C0000)
#define MCF5282_SDRAMC_DMR_BAM_2M (0x001C0000)
#define MCF5282_SDRAMC_DMR_BAM_1M (0x000C0000)
#define MCF5282_SDRAMC_DMR_BAM_1024K (0x000C0000)
#define MCF5282_SDRAMC_DMR_BAM_512K (0x00040000)
#define MCF5282_SDRAMC_DMR_BAM_256K (0x00000000)
#define MCF5282_SDRAMC_DMR_WP (0x00000100)
#define MCF5282_SDRAMC_DMR_CI (0x00000040)
#define MCF5282_SDRAMC_DMR_AM (0x00000020)
#define MCF5282_SDRAMC_DMR_SC (0x00000010)
#define MCF5282_SDRAMC_DMR_SD (0x00000008)
#define MCF5282_SDRAMC_DMR_UC (0x00000004)
#define MCF5282_SDRAMC_DMR_UD (0x00000002)
#define MCF5282_SDRAMC_DMR_V (0x00000001)
/*********************************************************************
*
* Chip Select Module
*
*********************************************************************/
/* Read/Write access macros for general use */
#define MCF5282_CS0_CSAR (*(vuint16 *)(void *)(&__IPSBAR[0x0080]))
#define MCF5282_CS0_CSMR (*(vuint32 *)(void *)(&__IPSBAR[0x0084]))
#define MCF5282_CS0_CSCR (*(vuint16 *)(void *)(&__IPSBAR[0x008A]))
#define MCF5282_CS1_CSAR (*(vuint16 *)(void *)(&__IPSBAR[0x008C]))
#define MCF5282_CS1_CSMR (*(vuint32 *)(void *)(&__IPSBAR[0x0090]))
#define MCF5282_CS1_CSCR (*(vuint16 *)(void *)(&__IPSBAR[0x0096]))
#define MCF5282_CS2_CSAR (*(vuint16 *)(void *)(&__IPSBAR[0x0098]))
#define MCF5282_CS2_CSMR (*(vuint32 *)(void *)(&__IPSBAR[0x009C]))
#define MCF5282_CS2_CSCR (*(vuint16 *)(void *)(&__IPSBAR[0x00A2]))
#define MCF5282_CS3_CSAR (*(vuint16 *)(void *)(&__IPSBAR[0x00A4]))
#define MCF5282_CS3_CSMR (*(vuint32 *)(void *)(&__IPSBAR[0x00A8]))
#define MCF5282_CS3_CSCR (*(vuint16 *)(void *)(&__IPSBAR[0x00AE]))
#define MCF5282_CS4_CSAR (*(vuint16 *)(void *)(&__IPSBAR[0x00B0]))
#define MCF5282_CS4_CSMR (*(vuint32 *)(void *)(&__IPSBAR[0x00B4]))
#define MCF5282_CS4_CSCR (*(vuint16 *)(void *)(&__IPSBAR[0x00BA]))
#define MCF5282_CS5_CSAR (*(vuint16 *)(void *)(&__IPSBAR[0x00BC]))
#define MCF5282_CS5_CSMR (*(vuint32 *)(void *)(&__IPSBAR[0x00C0]))
#define MCF5282_CS5_CSCR (*(vuint16 *)(void *)(&__IPSBAR[0x00C6]))
#define MCF5282_CS6_CSAR (*(vuint16 *)(void *)(&__IPSBAR[0x00C8]))
#define MCF5282_CS6_CSMR (*(vuint32 *)(void *)(&__IPSBAR[0x00CC]))
#define MCF5282_CS6_CSCR (*(vuint16 *)(void *)(&__IPSBAR[0x00D2]))
#define MCF5282_CS_CSAR(x) (*(vuint16 *)(void *)(&__IPSBAR[0x0080+(x*0x0C)]))
#define MCF5282_CS_CSMR(x) (*(vuint32 *)(void *)(&__IPSBAR[0x0084+(x*0x0C)]))
#define MCF5282_CS_CSCR(x) (*(vuint16 *)(void *)(&__IPSBAR[0x008A+(x*0x0C)]))
/* Bit level definitions and macros */
#define MCF5282_CS_CSAR_BA(a) (uint16)(((a)&0xFFFF0000)>>16)
#define MCF5282_CS_CSMR_BAM_4G (0xFFFF0000)
#define MCF5282_CS_CSMR_BAM_2G (0x7FFF0000)
#define MCF5282_CS_CSMR_BAM_1G (0x3FFF0000)
#define MCF5282_CS_CSMR_BAM_1024M (0x3FFF0000)
#define MCF5282_CS_CSMR_BAM_512M (0x1FFF0000)
#define MCF5282_CS_CSMR_BAM_256M (0x0FFF0000)
#define MCF5282_CS_CSMR_BAM_128M (0x07FF0000)
#define MCF5282_CS_CSMR_BAM_64M (0x03FF0000)
#define MCF5282_CS_CSMR_BAM_32M (0x01FF0000)
#define MCF5282_CS_CSMR_BAM_16M (0x00FF0000)
#define MCF5282_CS_CSMR_BAM_8M (0x007F0000)
#define MCF5282_CS_CSMR_BAM_4M (0x003F0000)
#define MCF5282_CS_CSMR_BAM_2M (0x001F0000)
#define MCF5282_CS_CSMR_BAM_1M (0x000F0000)
#define MCF5282_CS_CSMR_BAM_1024K (0x000F0000)
#define MCF5282_CS_CSMR_BAM_512K (0x00070000)
#define MCF5282_CS_CSMR_BAM_256K (0x00030000)
#define MCF5282_CS_CSMR_BAM_128K (0x00010000)
#define MCF5282_CS_CSMR_BAM_64K (0x00000000)
#define MCF5282_CS_CSMR_WP (0x00000100)
#define MCF5282_CS_CSMR_AM (0x00000040)
#define MCF5282_CS_CSMR_CI (0x00000020)
#define MCF5282_CS_CSMR_SC (0x00000010)
#define MCF5282_CS_CSMR_SD (0x00000008)
#define MCF5282_CS_CSMR_UC (0x00000004)
#define MCF5282_CS_CSMR_UD (0x00000002)
#define MCF5282_CS_CSMR_V (0x00000001)
#define MCF5282_CS_CSCR_WS(x) (((x)&0x0F)<<10)
#define MCF5282_CS_CSCR_AA (0x0100)
#define MCF5282_CS_CSCR_PS_8 (0x0040)
#define MCF5282_CS_CSCR_PS_16 (0x0080)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -