📄 ppc405.h
字号:
#define maltxctp29r (MAL_DCR_BASE+0x3D) /* TX 29 Channel table ptr reg */#define maltxctp30r (MAL_DCR_BASE+0x3E) /* TX 30 Channel table ptr reg */#define maltxctp31r (MAL_DCR_BASE+0x3F) /* TX 31 Channel table ptr reg */#define malrxctp0r (MAL_DCR_BASE+0x40) /* RX 0 Channel table ptr reg */#define malrxctp1r (MAL_DCR_BASE+0x41) /* RX 1 Channel table ptr reg */#define malrxctp2r (MAL_DCR_BASE+0x42) /* RX 2 Channel table ptr reg */#define malrxctp3r (MAL_DCR_BASE+0x43) /* RX 3 Channel table ptr reg */#define malrxctp4r (MAL_DCR_BASE+0x44) /* RX 4 Channel table ptr reg */#define malrxctp5r (MAL_DCR_BASE+0x45) /* RX 5 Channel table ptr reg */#define malrxctp6r (MAL_DCR_BASE+0x46) /* RX 6 Channel table ptr reg */#define malrxctp7r (MAL_DCR_BASE+0x47) /* RX 7 Channel table ptr reg */#define malrxctp8r (MAL_DCR_BASE+0x48) /* RX 8 Channel table ptr reg */#define malrxctp9r (MAL_DCR_BASE+0x49) /* RX 9 Channel table ptr reg */#define malrxctp10r (MAL_DCR_BASE+0x4A) /* RX 10 Channel table ptr reg */#define malrxctp11r (MAL_DCR_BASE+0x4B) /* RX 11 Channel table ptr reg */#define malrxctp12r (MAL_DCR_BASE+0x4C) /* RX 12 Channel table ptr reg */#define malrxctp13r (MAL_DCR_BASE+0x4D) /* RX 13 Channel table ptr reg */#define malrxctp14r (MAL_DCR_BASE+0x4E) /* RX 14 Channel table ptr reg */#define malrxctp15r (MAL_DCR_BASE+0x4F) /* RX 15 Channel table ptr reg */#define malrxctp16r (MAL_DCR_BASE+0x50) /* RX 16 Channel table ptr reg */#define malrxctp17r (MAL_DCR_BASE+0x51) /* RX 17 Channel table ptr reg */#define malrxctp18r (MAL_DCR_BASE+0x52) /* RX 18 Channel table ptr reg */#define malrxctp19r (MAL_DCR_BASE+0x53) /* RX 19 Channel table ptr reg */#define malrxctp20r (MAL_DCR_BASE+0x54) /* RX 20 Channel table ptr reg */#define malrxctp21r (MAL_DCR_BASE+0x55) /* RX 21 Channel table ptr reg */#define malrxctp22r (MAL_DCR_BASE+0x56) /* RX 22 Channel table ptr reg */#define malrxctp23r (MAL_DCR_BASE+0x57) /* RX 23 Channel table ptr reg */#define malrxctp24r (MAL_DCR_BASE+0x58) /* RX 24 Channel table ptr reg */#define malrxctp25r (MAL_DCR_BASE+0x59) /* RX 25 Channel table ptr reg */#define malrxctp26r (MAL_DCR_BASE+0x5A) /* RX 26 Channel table ptr reg */#define malrxctp27r (MAL_DCR_BASE+0x5B) /* RX 27 Channel table ptr reg */#define malrxctp28r (MAL_DCR_BASE+0x5C) /* RX 28 Channel table ptr reg */#define malrxctp29r (MAL_DCR_BASE+0x5D) /* RX 29 Channel table ptr reg */#define malrxctp30r (MAL_DCR_BASE+0x5E) /* RX 30 Channel table ptr reg */#define malrxctp31r (MAL_DCR_BASE+0x5F) /* RX 31 Channel table ptr reg */#define malrcbs0 (MAL_DCR_BASE+0x60) /* RX 0 Channel buffer size reg */#define malrcbs1 (MAL_DCR_BASE+0x61) /* RX 1 Channel buffer size reg */#define malrcbs2 (MAL_DCR_BASE+0x62) /* RX 2 Channel buffer size reg */#define malrcbs3 (MAL_DCR_BASE+0x63) /* RX 3 Channel buffer size reg */#define malrcbs4 (MAL_DCR_BASE+0x64) /* RX 4 Channel buffer size reg */#define malrcbs5 (MAL_DCR_BASE+0x65) /* RX 5 Channel buffer size reg */#define malrcbs6 (MAL_DCR_BASE+0x66) /* RX 6 Channel buffer size reg */#define malrcbs7 (MAL_DCR_BASE+0x67) /* RX 7 Channel buffer size reg */#define malrcbs8 (MAL_DCR_BASE+0x68) /* RX 8 Channel buffer size reg */#define malrcbs9 (MAL_DCR_BASE+0x69) /* RX 9 Channel buffer size reg */#define malrcbs10 (MAL_DCR_BASE+0x6A) /* RX 10 Channel buffer size reg */#define malrcbs11 (MAL_DCR_BASE+0x6B) /* RX 11 Channel buffer size reg */#define malrcbs12 (MAL_DCR_BASE+0x6C) /* RX 12 Channel buffer size reg */#define malrcbs13 (MAL_DCR_BASE+0x6D) /* RX 13 Channel buffer size reg */#define malrcbs14 (MAL_DCR_BASE+0x6E) /* RX 14 Channel buffer size reg */#define malrcbs15 (MAL_DCR_BASE+0x6F) /* RX 15 Channel buffer size reg */#define malrcbs16 (MAL_DCR_BASE+0x70) /* RX 16 Channel buffer size reg */#define malrcbs17 (MAL_DCR_BASE+0x71) /* RX 17 Channel buffer size reg */#define malrcbs18 (MAL_DCR_BASE+0x72) /* RX 18 Channel buffer size reg */#define malrcbs19 (MAL_DCR_BASE+0x73) /* RX 19 Channel buffer size reg */#define malrcbs20 (MAL_DCR_BASE+0x74) /* RX 20 Channel buffer size reg */#define malrcbs21 (MAL_DCR_BASE+0x75) /* RX 21 Channel buffer size reg */#define malrcbs22 (MAL_DCR_BASE+0x76) /* RX 22 Channel buffer size reg */#define malrcbs23 (MAL_DCR_BASE+0x77) /* RX 23 Channel buffer size reg */#define malrcbs24 (MAL_DCR_BASE+0x78) /* RX 24 Channel buffer size reg */#define malrcbs25 (MAL_DCR_BASE+0x79) /* RX 25 Channel buffer size reg */#define malrcbs26 (MAL_DCR_BASE+0x7A) /* RX 26 Channel buffer size reg */#define malrcbs27 (MAL_DCR_BASE+0x7B) /* RX 27 Channel buffer size reg */#define malrcbs28 (MAL_DCR_BASE+0x7C) /* RX 28 Channel buffer size reg */#define malrcbs29 (MAL_DCR_BASE+0x7D) /* RX 29 Channel buffer size reg */#define malrcbs30 (MAL_DCR_BASE+0x7E) /* RX 30 Channel buffer size reg */#define malrcbs31 (MAL_DCR_BASE+0x7F) /* RX 31 Channel buffer size reg */#else /* !defined(CONFIG_405EZ) */#define MAL_DCR_BASE 0x180#define malmcr (MAL_DCR_BASE+0x00) /* MAL Config reg */#define malesr (MAL_DCR_BASE+0x01) /* Error Status reg (Read/Clear) */#define malier (MAL_DCR_BASE+0x02) /* Interrupt enable reg */#define maldbr (MAL_DCR_BASE+0x03) /* Mal Debug reg (Read only) */#define maltxcasr (MAL_DCR_BASE+0x04) /* TX Channel active reg (set) */#define maltxcarr (MAL_DCR_BASE+0x05) /* TX Channel active reg (Reset) */#define maltxeobisr (MAL_DCR_BASE+0x06) /* TX End of buffer int status reg */#define maltxdeir (MAL_DCR_BASE+0x07) /* TX Descr. Error Int reg */#define malrxcasr (MAL_DCR_BASE+0x10) /* RX Channel active reg (set) */#define malrxcarr (MAL_DCR_BASE+0x11) /* RX Channel active reg (Reset) */#define malrxeobisr (MAL_DCR_BASE+0x12) /* RX End of buffer int status reg */#define malrxdeir (MAL_DCR_BASE+0x13) /* RX Descr. Error Int reg */#define maltxctp0r (MAL_DCR_BASE+0x20) /* TX 0 Channel table pointer reg */#define maltxctp1r (MAL_DCR_BASE+0x21) /* TX 1 Channel table pointer reg */#define maltxctp2r (MAL_DCR_BASE+0x22) /* TX 2 Channel table pointer reg */#define malrxctp0r (MAL_DCR_BASE+0x40) /* RX 0 Channel table pointer reg */#define malrxctp1r (MAL_DCR_BASE+0x41) /* RX 1 Channel table pointer reg */#define malrcbs0 (MAL_DCR_BASE+0x60) /* RX 0 Channel buffer size reg */#define malrcbs1 (MAL_DCR_BASE+0x61) /* RX 1 Channel buffer size reg */#endif /* defined(CONFIG_405EZ) *//*-----------------------------------------------------------------------------| IIC Register Offsets'----------------------------------------------------------------------------*/#define IICMDBUF 0x00#define IICSDBUF 0x02#define IICLMADR 0x04#define IICHMADR 0x05#define IICCNTL 0x06#define IICMDCNTL 0x07#define IICSTS 0x08#define IICEXTSTS 0x09#define IICLSADR 0x0A#define IICHSADR 0x0B#define IICCLKDIV 0x0C#define IICINTRMSK 0x0D#define IICXFRCNT 0x0E#define IICXTCNTLSS 0x0F#define IICDIRECTCNTL 0x10/*-----------------------------------------------------------------------------| UART Register Offsets'----------------------------------------------------------------------------*/#define DATA_REG 0x00#define DL_LSB 0x00#define DL_MSB 0x01#define INT_ENABLE 0x01#define FIFO_CONTROL 0x02#define LINE_CONTROL 0x03#define MODEM_CONTROL 0x04#define LINE_STATUS 0x05#define MODEM_STATUS 0x06#define SCRATCH 0x07/****************************************************************************** * On Chip Memory ******************************************************************************/#if defined(CONFIG_405EZ)#define OCM_DCR_BASE 0x020#define ocmplb3cr1 (OCM_DCR_BASE+0x00) /* OCM PLB3 Bank 1 Config Reg */#define ocmplb3cr2 (OCM_DCR_BASE+0x01) /* OCM PLB3 Bank 2 Config Reg */#define ocmplb3bear (OCM_DCR_BASE+0x02) /* OCM PLB3 Bus Error Add Reg */#define ocmplb3besr0 (OCM_DCR_BASE+0x03) /* OCM PLB3 Bus Error Stat Reg 0 */#define ocmplb3besr1 (OCM_DCR_BASE+0x04) /* OCM PLB3 Bus Error Stat Reg 1 */#define ocmcid (OCM_DCR_BASE+0x05) /* OCM Core ID */#define ocmrevid (OCM_DCR_BASE+0x06) /* OCM Revision ID */#define ocmplb3dpc (OCM_DCR_BASE+0x07) /* OCM PLB3 Data Parity Check */#define ocmdscr1 (OCM_DCR_BASE+0x08) /* OCM D-side Bank 1 Config Reg */#define ocmdscr2 (OCM_DCR_BASE+0x09) /* OCM D-side Bank 2 Config Reg */#define ocmiscr1 (OCM_DCR_BASE+0x0A) /* OCM I-side Bank 1 Config Reg */#define ocmiscr2 (OCM_DCR_BASE+0x0B) /* OCM I-side Bank 2 Config Reg */#define ocmdsisdpc (OCM_DCR_BASE+0x0C) /* OCM D-side/I-side Data Par Chk*/#define ocmdsisbear (OCM_DCR_BASE+0x0D) /* OCM D-side/I-side Bus Err Addr*/#define ocmdsisbesr (OCM_DCR_BASE+0x0E) /* OCM D-side/I-side Bus Err Stat*/#else#define OCM_DCR_BASE 0x018#define ocmisarc (OCM_DCR_BASE+0x00) /* OCM I-side address compare reg */#define ocmiscntl (OCM_DCR_BASE+0x01) /* OCM I-side control reg */#define ocmdsarc (OCM_DCR_BASE+0x02) /* OCM D-side address compare reg */#define ocmdscntl (OCM_DCR_BASE+0x03) /* OCM D-side control reg */#endif /* CONFIG_405EZ *//****************************************************************************** * GPIO macro register defines ******************************************************************************/#if defined(CONFIG_405EZ)/* Only the 405EZ has 2 GPIOs */#define GPIO_BASE 0xEF600700#define GPIO0_OR (GPIO_BASE+0x0)#define GPIO0_TCR (GPIO_BASE+0x4)#define GPIO0_OSRL (GPIO_BASE+0x8)#define GPIO0_OSRH (GPIO_BASE+0xC)#define GPIO0_TSRL (GPIO_BASE+0x10)#define GPIO0_TSRH (GPIO_BASE+0x14)#define GPIO0_ODR (GPIO_BASE+0x18)#define GPIO0_IR (GPIO_BASE+0x1C)#define GPIO0_RR1 (GPIO_BASE+0x20)#define GPIO0_RR2 (GPIO_BASE+0x24)#define GPIO0_RR3 (GPIO_BASE+0x28)#define GPIO0_ISR1L (GPIO_BASE+0x30)#define GPIO0_ISR1H (GPIO_BASE+0x34)#define GPIO0_ISR2L (GPIO_BASE+0x38)#define GPIO0_ISR2H (GPIO_BASE+0x3C)#define GPIO0_ISR3L (GPIO_BASE+0x40)#define GPIO0_ISR3H (GPIO_BASE+0x44)#define GPIO1_BASE 0xEF600800#define GPIO1_OR (GPIO1_BASE+0x0)#define GPIO1_TCR (GPIO1_BASE+0x4)#define GPIO1_OSRL (GPIO1_BASE+0x8)#define GPIO1_OSRH (GPIO1_BASE+0xC)#define GPIO1_TSRL (GPIO1_BASE+0x10)#define GPIO1_TSRH (GPIO1_BASE+0x14)#define GPIO1_ODR (GPIO1_BASE+0x18)#define GPIO1_IR (GPIO1_BASE+0x1C)#define GPIO1_RR1 (GPIO1_BASE+0x20)#define GPIO1_RR2 (GPIO1_BASE+0x24)#define GPIO1_RR3 (GPIO1_BASE+0x28)#define GPIO1_ISR1L (GPIO1_BASE+0x30)#define GPIO1_ISR1H (GPIO1_BASE+0x34)#define GPIO1_ISR2L (GPIO1_BASE+0x38)#define GPIO1_ISR2H (GPIO1_BASE+0x3C)#define GPIO1_ISR3L (GPIO1_BASE+0x40)#define GPIO1_ISR3H (GPIO1_BASE+0x44)#else /* !405EZ */#define GPIO_BASE 0xEF600700#define GPIO0_OR (GPIO_BASE+0x0)#define GPIO0_TCR (GPIO_BASE+0x4)#define GPIO0_OSRH (GPIO_BASE+0x8)#define GPIO0_OSRL (GPIO_BASE+0xC)#define GPIO0_TSRH (GPIO_BASE+0x10)#define GPIO0_TSRL (GPIO_BASE+0x14)#define GPIO0_ODR (GPIO_BASE+0x18)#define GPIO0_IR (GPIO_BASE+0x1C)#define GPIO0_RR1 (GPIO_BASE+0x20)#define GPIO0_RR2 (GPIO_BASE+0x24)#define GPIO0_ISR1H (GPIO_BASE+0x30)#define GPIO0_ISR1L (GPIO_BASE+0x34)#define GPIO0_ISR2H (GPIO_BASE+0x38)#define GPIO0_ISR2L (GPIO_BASE+0x3C)#endif /* CONFIG_405EZ *//* * Macro for accessing the indirect EBC register */#define mtebc(reg, data) mtdcr(ebccfga,reg);mtdcr(ebccfgd,data)#define mfebc(reg, data) mtdcr(ebccfga,reg);data = mfdcr(ebccfgd)#define mtsdram(reg, data) do { mtdcr(memcfga,reg);mtdcr(memcfgd,data); } while (0)#define mfsdram(reg, data) do { mtdcr(memcfga,reg);data = mfdcr(memcfgd); } while (0)#ifndef __ASSEMBLY__typedef struct{ unsigned long pllFwdDiv; unsigned long pllFwdDivB; unsigned long pllFbkDiv; unsigned long pllPlbDiv; unsigned long pllPciDiv; unsigned long pllExtBusDiv; unsigned long pllOpbDiv; unsigned long freqVCOMhz; /* in MHz */ unsigned long freqProcessor; unsigned long freqPLB; unsigned long freqPCI; unsigned long pciIntArbEn; /* Internal PCI arbiter is enabled */ unsigned long pciClkSync; /* PCI clock is synchronous */ unsigned long freqVCOHz;} PPC405_SYS_INFO;#endif /* _ASMLANGUAGE */#define RESET_VECTOR 0xfffffffc#define CACHELINE_MASK (CFG_CACHELINE_SIZE - 1) /* Address mask for cache line aligned data. */#endif /* __PPC405_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -