?? c55xxdefs.h
字號:
typedef struct c55xx_trace
{
unsigned short trc00_63[0x40]; /* 00 */
unsigned short trc63_79[0x10]; /* 40 */
unsigned short lpoffset1; /* 50 */
unsigned short lpoffset2; /* 51 */
unsigned short ptr; /* 52 */
unsigned short cntl; /* 53 */
unsigned short id; /* 54 */
}C55XX_TRACE;
typedef ioport volatile C55XX_TRACE * PC55XX_TRACE;
/*---- Clock Mode ----------------------------------------------------------*/
typedef struct c55xx_cmod
{
unsigned short clkmd; /* Clock-mode register */
}C55XX_CMOD;
typedef ioport volatile C55XX_CMOD * PC55XX_CMOD;
/*---- Clock Mode ----------------------------------------------------------*/
typedef struct c55xx_usbcmod
{
unsigned short usbclkmd; /* Clock-mode register */
}C55XX_USBCMOD;
typedef ioport volatile C55XX_USBCMOD * PC55XX_USBCMOD;
/*---- GPIO ---------------------------------------------------------------*/
typedef struct c55xx_gpio
{
unsigned short iodir; /* 00 */
unsigned short iodata; /* 01 */
}C55XX_GPIO;
typedef ioport volatile C55XX_GPIO * PC55XX_GPIO;
/*---- Die Id --------------------------------------------------------------*/
typedef struct c55xx_did
{
unsigned short id0; /* 00 */
unsigned short id1; /* 01 */
unsigned short id2; /* 02 */
unsigned short id3; /* 03 */
}C55XX_DID;
typedef ioport volatile C55XX_DID *PC55XX_DID;
/*---- I2C ------------------------------------------------------------------*/
typedef struct c55xx_i2c
{
unsigned short icoar; /* 00 */
unsigned short icimr; /* 01 */
unsigned short icstr; /* 02 */
unsigned short icclkl; /* 03 */
unsigned short icclkh; /* 04 */
unsigned short iccnt; /* 05 */
unsigned short icdrr; /* 06 */
unsigned short icsar; /* 07 */
unsigned short icdxr; /* 08 */
unsigned short icmdr; /* 09 */
unsigned short icivr; /* 0A */
unsigned short icgpio; /* 0B */
unsigned short icpsc; /* 0C */
}C55XX_I2C;
typedef ioport volatile C55XX_I2C *PC55XX_I2C;
/*---- Media Card------------------------------------------------------------*/
typedef struct c55xx_mmc
{
unsigned short fckctl; /* 00 */
unsigned short ctl; /* 01 */
unsigned short clk; /* 02 */
unsigned short st0; /* 03 */
unsigned short st1; /* 04 */
unsigned short im; /* 05 */
unsigned short tor; /* 06 */
unsigned short tod; /* 07 */
unsigned short blen; /* 08 */
unsigned short nblk; /* 09 */
unsigned short nblc; /* 0A */
unsigned short ddr; /* 0B */
unsigned short dxr; /* 0C */
unsigned short cmd; /* 0D */
unsigned short argl; /* 0E */
unsigned short argh; /* 0F */
unsigned short rsp0; /* 10 */
unsigned short rsp1; /* 11 */
unsigned short rsp2; /* 12 */
unsigned short rsp3; /* 13 */
unsigned short rsp4; /* 14 */
unsigned short rsp5; /* 15 */
unsigned short rsp6; /* 16 */
unsigned short rsp7; /* 17 */
unsigned short drsp; /* 18 */
unsigned short etok; /* 19 */
unsigned short cidx; /* 1A */
}C55XX_MMC;
#ifdef MMC_EXTERNAL
/*-- Data pointer if external, io pointer if on-chip ----------------------*/
typedef volatile C55XX_MMC * PC55XX_MMC;
#else
typedef ioport volatile C55XX_MMC * PC55XX_MMC;
#endif
/*---- Memory Stick------------------------------------------------------------*/
typedef struct c55xx_ms
{
unsigned short cmd; /* 00 */
unsigned short stat; /* 01 */
unsigned short cntl; /* 02 */
unsigned short idata; /* 03 */
unsigned short ictl; /* 04 */
unsigned short ppctl; /* 05 */
unsigned short drr; /* 06 */
unsigned short dxr; /* 07 */
unsigned short fclk; /* 08 */
unsigned short clk; /* 09 */
unsigned short nu1; /* 0A */
unsigned short nu2; /* 0B */
unsigned short nu3; /* 0C */
unsigned short nu4; /* 0D */
unsigned short nu5; /* 0E */
unsigned short nu6; /* 0F */
unsigned short nu7; /* 10 */
unsigned short nu8; /* 11 */
unsigned short nu9; /* 12 */
unsigned short nu10; /* 13 */
unsigned short ppdata; /* 14 */
}C55XX_MS;
#ifdef MMC_EXTERNAL
/*-- Data pointer if external, io pointer if on-chip ----------------------*/
typedef volatile C55XX_MS * PC55XX_MS;
#else
typedef ioport volatile C55XX_MS * PC55XX_MS;
#endif
/*---- Cpu Revision---------------------------------------------------------*/
typedef struct c55xx_revid
{
unsigned short revid; /* 00 */
}C55XX_REVID;
typedef ioport volatile C55XX_REVID *PC55XX_REVID;
/*---- Interrupt table definition ------------------------------------------*/
typedef struct c55xx_intr
{
unsigned short ins1; /* Instruction slot 1 */
unsigned short ins2; /* Instruction slot 2 */
unsigned short ins3; /* Instruction slot 3 */
unsigned short ins4; /* Instruction slot 4 */
}C55XX_INTR;
typedef volatile C55XX_INTR * PC55XX_INTR;
typedef struct c55xx_intr_table
{
C55XX_INTR IntrSlot[32]; /* There are 32 interrupt locations */
}C55XX_INTR_TABLE;
/*---- ADC ------------------------------------------------------------------*/
typedef struct c55xx_ADC
{
unsigned short adcr; /* 00 */
unsigned short addr; /* 01 */
unsigned short adcdr; /* 02 */
unsigned short adccr; /* 03 */
}C55XX_ADC;
typedef ioport volatile C55XX_ADC *PC55XX_ADC;
/*---- External Bus Selection -----------------------------------------------*/
typedef struct c55xx_extbus
{
unsigned short exbussel; /* 00 */
}C55XX_EXTBUS;
typedef ioport volatile C55XX_EXTBUS *PC55XX_EXTBUS;
typedef volatile C55XX_INTR_TABLE * PC55XX_INTR_TABLE;
/*---- Define the base address for all the C55XX peripherals, io space-----*/
#define C55XX_RHEA_ADDR 0x0000
#define C55XX_BOOT_ADDR 0x000F
#define C55XX_EMIF_ADDR 0x0800
#define C55XX_CACHE_ADDR 0x1400
#define C55XX_DMA_GLB_ADDR 0x0E00
#define C55XX_DMA0_ADDR 0x0C00
#define C55XX_DMA1_ADDR 0x0C20
#define C55XX_DMA2_ADDR 0x0C40
#define C55XX_DMA3_ADDR 0x0C60
#define C55XX_DMA4_ADDR 0x0C80
#define C55XX_DMA5_ADDR 0x0CA0
#define C55XX_TRACE_ADDR 0x2000
#define C55XX_CLKMD_ADDR 0x1C00
#define C55XX_USBCLKMD_ADDR 0x1E00
#define C55XX_TIM0_ADDR 0x1000
#define C55XX_TIM1_ADDR 0x2400
#define C55XX_RTC_ADDR 0x1800
#define C55XX_MSP0_ADDR 0x2800
#define C55XX_MSP1_ADDR 0x2C00
#define C55XX_MSP2_ADDR 0x3000
#define C55XX_GPIO_ADDR 0x3400
#define C55XX_DIEID_ADDR 0x3800
#define C55XX_REVID_ADDR 0x3804
#define C55XX_I2C_ADDR 0x3c00
#define C55XX_ADC_ADDR 0x6800
#define C55XX_EXTBUS_ADDR 0x6C00
#define C55XX_MS0_ADDR 0x5000
#define C55XX_MS1_ADDR 0x5400
#define C55XX_MMC0_ADDR 0x4800
#define C55XX_MMC1_ADDR 0x4c00
/* Define the base address in data space for each external memory block-----*/
#define CE0_BASE ( 0x050000L >> 1 )
#define CE1_BASE ( 0x400000L >> 1 )
#define CE2_BASE ( 0x800000L >> 1 )
#define CE3_BASE ( 0xC00000L >> 1 )
/*---- Non-Maskable interrupts: Sxx are software ints-----------------------*/
#define INTR_RS 0
#define INTR_NMI 1
#define INTR_INT0 2
#define INTR_INT2 3
#define INTR_TINT0 4
#define INTR_RINT0 5
#define INTR_RINT1 6
#define INTR_XINT1 7
#define INTR_SINT8 8
#define INTR_DMAC1 9
#define INTR_DSPINT 10
#define INTR_INT3 11
#define INTR_RINT2 12
#define INTR_XINT2 13
#define INTR_DMAC4 14
#define INTR_DMAC5 15
#define INTR_INT1 16
#define INTR_XINT0 17
#define INTR_DMAC0 18
#define INTR_INT4 19
#define INTR_DMAC2 20
#define INTR_DMAC3 21
#define INTR_TINT1 22
#define INTR_INT5 23
#define INTR_BERR 24
#define INTR_DLOG 25
#define INTR_RTOS 26
#define INTR_SINT27 27
#define INTR_SINT28 28
#define INTR_SINT29 29
#define INTR_SINT30 30
#define INTR_SINT31 31
/*---- global data declarations --------------------------------------------*/
/*---- global function prototypes ------------------------------------------*/
#endif /* c55xxdefs_h ---- END OF FILE ------------------------------------*/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -