📄 mcf548x_pci.h
字号:
/*
* File: mcf548x_pci.h
* Purpose: Register and bit definitions for the MCF548X
*
* Notes:
*
*/
#ifndef __MCF548X_PCI_H__
#define __MCF548X_PCI_H__
/*********************************************************************
*
* PCI Bus Controller (PCI)
*
*********************************************************************/
/* Register read/write macros */
#define MCF_PCI_PCIIDR (*(vuint32*)(void*)(&__MBAR[0x000B00]))
#define MCF_PCI_PCISCR (*(vuint32*)(void*)(&__MBAR[0x000B04]))
#define MCF_PCI_PCICCRIR (*(vuint32*)(void*)(&__MBAR[0x000B08]))
#define MCF_PCI_PCICR1 (*(vuint32*)(void*)(&__MBAR[0x000B0C]))
#define MCF_PCI_PCIBAR0 (*(vuint32*)(void*)(&__MBAR[0x000B10]))
#define MCF_PCI_PCIBAR1 (*(vuint32*)(void*)(&__MBAR[0x000B14]))
#define MCF_PCI_PCICR2 (*(vuint32*)(void*)(&__MBAR[0x000B3C]))
#define MCF_PCI_PCIGSCR (*(vuint32*)(void*)(&__MBAR[0x000B60]))
#define MCF_PCI_PCITBATR0 (*(vuint32*)(void*)(&__MBAR[0x000B64]))
#define MCF_PCI_PCITBATR1 (*(vuint32*)(void*)(&__MBAR[0x000B68]))
#define MCF_PCI_PCITCR (*(vuint32*)(void*)(&__MBAR[0x000B6C]))
#define MCF_PCI_PCIIW0BTAR (*(vuint32*)(void*)(&__MBAR[0x000B70]))
#define MCF_PCI_PCIIW1BTAR (*(vuint32*)(void*)(&__MBAR[0x000B74]))
#define MCF_PCI_PCIIW2BTAR (*(vuint32*)(void*)(&__MBAR[0x000B78]))
#define MCF_PCI_PCIIWCR (*(vuint32*)(void*)(&__MBAR[0x000B80]))
#define MCF_PCI_PCIICR (*(vuint32*)(void*)(&__MBAR[0x000B84]))
#define MCF_PCI_PCIISR (*(vuint32*)(void*)(&__MBAR[0x000B88]))
#define MCF_PCI_PCICAR (*(vuint32*)(void*)(&__MBAR[0x000BF8]))
#define MCF_PCI_PCITPSR (*(vuint32*)(void*)(&__MBAR[0x008400]))
#define MCF_PCI_PCITSAR (*(vuint32*)(void*)(&__MBAR[0x008404]))
#define MCF_PCI_PCITTCR (*(vuint32*)(void*)(&__MBAR[0x008408]))
#define MCF_PCI_PCITER (*(vuint32*)(void*)(&__MBAR[0x00840C]))
#define MCF_PCI_PCITNAR (*(vuint32*)(void*)(&__MBAR[0x008410]))
#define MCF_PCI_PCITLWR (*(vuint32*)(void*)(&__MBAR[0x008414]))
#define MCF_PCI_PCITDCR (*(vuint32*)(void*)(&__MBAR[0x008418]))
#define MCF_PCI_PCITSR (*(vuint32*)(void*)(&__MBAR[0x00841C]))
#define MCF_PCI_PCITFDR (*(vuint32*)(void*)(&__MBAR[0x008440]))
#define MCF_PCI_PCITFSR (*(vuint32*)(void*)(&__MBAR[0x008444]))
#define MCF_PCI_PCITFCR (*(vuint32*)(void*)(&__MBAR[0x008448]))
#define MCF_PCI_PCITFAR (*(vuint32*)(void*)(&__MBAR[0x00844C]))
#define MCF_PCI_PCITFRPR (*(vuint32*)(void*)(&__MBAR[0x008450]))
#define MCF_PCI_PCITFWPR (*(vuint32*)(void*)(&__MBAR[0x008454]))
#define MCF_PCI_PCIRPSR (*(vuint32*)(void*)(&__MBAR[0x008480]))
#define MCF_PCI_PCIRSAR (*(vuint32*)(void*)(&__MBAR[0x008484]))
#define MCF_PCI_PCIRTCR (*(vuint32*)(void*)(&__MBAR[0x008488]))
#define MCF_PCI_PCIRER (*(vuint32*)(void*)(&__MBAR[0x00848C]))
#define MCF_PCI_PCIRNAR (*(vuint32*)(void*)(&__MBAR[0x008490]))
#define MCF_PCI_PCIRDCR (*(vuint32*)(void*)(&__MBAR[0x008498]))
#define MCF_PCI_PCIRSR (*(vuint32*)(void*)(&__MBAR[0x00849C]))
#define MCF_PCI_PCIRFDR (*(vuint32*)(void*)(&__MBAR[0x0084C0]))
#define MCF_PCI_PCIRFSR (*(vuint32*)(void*)(&__MBAR[0x0084C4]))
#define MCF_PCI_PCIRFCR (*(vuint32*)(void*)(&__MBAR[0x0084C8]))
#define MCF_PCI_PCIRFAR (*(vuint32*)(void*)(&__MBAR[0x0084CC]))
#define MCF_PCI_PCIRFRPR (*(vuint32*)(void*)(&__MBAR[0x0084D0]))
#define MCF_PCI_PCIRFWPR (*(vuint32*)(void*)(&__MBAR[0x0084D4]))
/* Bit definitions and macros for MCF_PCI_PCIIDR */
#define MCF_PCI_PCIIDR_VENDORID(x) (((x)&0x0000FFFF)<<0)
#define MCF_PCI_PCIIDR_DEVICEID(x) (((x)&0x0000FFFF)<<16)
/* Bit definitions and macros for MCF_PCI_PCISCR */
#define MCF_PCI_PCISCR_M (0x00000002)
#define MCF_PCI_PCISCR_B (0x00000004)
#define MCF_PCI_PCISCR_SP (0x00000008)
#define MCF_PCI_PCISCR_MW (0x00000010)
#define MCF_PCI_PCISCR_PER (0x00000040)
#define MCF_PCI_PCISCR_S (0x00000100)
#define MCF_PCI_PCISCR_F (0x00000200)
#define MCF_PCI_PCISCR_C (0x00100000)
#define MCF_PCI_PCISCR_66M (0x00200000)
#define MCF_PCI_PCISCR_R (0x00400000)
#define MCF_PCI_PCISCR_FC (0x00800000)
#define MCF_PCI_PCISCR_DP (0x01000000)
#define MCF_PCI_PCISCR_DT(x) (((x)&0x00000003)<<25)
#define MCF_PCI_PCISCR_TS (0x08000000)
#define MCF_PCI_PCISCR_TR (0x10000000)
#define MCF_PCI_PCISCR_MA (0x20000000)
#define MCF_PCI_PCISCR_SE (0x40000000)
#define MCF_PCI_PCISCR_PE (0x80000000)
/* Bit definitions and macros for MCF_PCI_PCICCRIR */
#define MCF_PCI_PCICCRIR_REVID(x) (((x)&0x000000FF)<<0)
#define MCF_PCI_PCICCRIR_CLASSCODE(x) (((x)&0x00FFFFFF)<<8)
/* Bit definitions and macros for MCF_PCI_PCICR1 */
#define MCF_PCI_PCICR1_CACHELINESIZE(x) (((x)&0x0000000F)<<0)
#define MCF_PCI_PCICR1_LATTIMER(x) (((x)&0x000000FF)<<8)
#define MCF_PCI_PCICR1_HEADERTYPE(x) (((x)&0x000000FF)<<16)
#define MCF_PCI_PCICR1_BIST(x) (((x)&0x000000FF)<<24)
/* Bit definitions and macros for MCF_PCI_PCIBAR0 */
#define MCF_PCI_PCIBAR0_IO (0x00000001)
#define MCF_PCI_PCIBAR0_RANGE(x) (((x)&0x00000003)<<1)
#define MCF_PCI_PCIBAR0_PREF (0x00000008)
#define MCF_PCI_PCIBAR0_BAR0(x) (((x)&0x00003FFF)<<18)
/* Bit definitions and macros for MCF_PCI_PCIBAR1 */
#define MCF_PCI_PCIBAR1_IO (0x00000001)
#define MCF_PCI_PCIBAR1_PREF (0x00000008)
#define MCF_PCI_PCIBAR1_BAR1(x) (((x)&0x00000003)<<30)
/* Bit definitions and macros for MCF_PCI_PCICR2 */
#define MCF_PCI_PCICR2_INTLINE(x) (((x)&0x000000FF)<<0)
#define MCF_PCI_PCICR2_INTPIN(x) (((x)&0x000000FF)<<8)
#define MCF_PCI_PCICR2_MINGNT(x) (((x)&0x000000FF)<<16)
#define MCF_PCI_PCICR2_MAXLAT(x) (((x)&0x000000FF)<<24)
/* Bit definitions and macros for MCF_PCI_PCIGSCR */
#define MCF_PCI_PCIGSCR_PR (0x00000001)
#define MCF_PCI_PCIGSCR_SEE (0x00001000)
#define MCF_PCI_PCIGSCR_PEE (0x00002000)
#define MCF_PCI_PCIGSCR_SE (0x10000000)
#define MCF_PCI_PCIGSCR_PE (0x20000000)
/* Bit definitions and macros for MCF_PCI_PCITBATR0 */
#define MCF_PCI_PCITBATR0_EN (0x00000001)
#define MCF_PCI_PCITBATR0_BAT0(x) (((x)&0x00003FFF)<<18)
/* Bit definitions and macros for MCF_PCI_PCITBATR1 */
#define MCF_PCI_PCITBATR1_EN (0x00000001)
#define MCF_PCI_PCITBATR1_BAT1(x) (((x)&0x00000003)<<30)
/* Bit definitions and macros for MCF_PCI_PCITCR */
#define MCF_PCI_PCITCR_P (0x00010000)
#define MCF_PCI_PCITCR_LD (0x01000000)
/* Bit definitions and macros for MCF_PCI_PCIIW0BTAR */
#define MCF_PCI_PCIIW0BTAR_WTA0(x) (((x)&0x000000FF)<<8)
#define MCF_PCI_PCIIW0BTAR_WAM0(x) (((x)&0x000000FF)<<16)
#define MCF_PCI_PCIIW0BTAR_WBA0(x) (((x)&0x000000FF)<<24)
/* Bit definitions and macros for MCF_PCI_PCIIW1BTAR */
#define MCF_PCI_PCIIW1BTAR_WTA1(x) (((x)&0x000000FF)<<8)
#define MCF_PCI_PCIIW1BTAR_WAM1(x) (((x)&0x000000FF)<<16)
#define MCF_PCI_PCIIW1BTAR_WBA1(x) (((x)&0x000000FF)<<24)
/* Bit definitions and macros for MCF_PCI_PCIIW2BTAR */
#define MCF_PCI_PCIIW2BTAR_WTA2(x) (((x)&0x000000FF)<<8)
#define MCF_PCI_PCIIW2BTAR_WAM2(x) (((x)&0x000000FF)<<16)
#define MCF_PCI_PCIIW2BTAR_WBA2(x) (((x)&0x000000FF)<<24)
/* Bit definitions and macros for MCF_PCI_PCIIWCR */
#define MCF_PCI_PCIIWCR_WINCTRL2(x) (((x)&0x0000000F)<<8)
#define MCF_PCI_PCIIWCR_WINCTRL1(x) (((x)&0x0000000F)<<16)
#define MCF_PCI_PCIIWCR_WINCTRL0(x) (((x)&0x0000000F)<<24)
#define MCF_PCI_PCIIWCR_WINCTRL0_MEMREAD (0x01000000)
#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDLINE (0x03000000)
#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDMUL (0x05000000)
#define MCF_PCI_PCIIWCR_WINCTRL0_IO (0x09000000)
#define MCF_PCI_PCIIWCR_WINCTRL1_MEMREAD (0x00010000)
#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDLINE (0x00030000)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -