📄 trmpc860.h
字号:
unsigned short maxd2; /* maximum DMA2 length reg */
unsigned short maxd; /* rx max DMA */
unsigned short dma_cnt; /* rx dma counter */
unsigned short max_b; /* max bd byte count */
unsigned short gaddr1; /* group address filter 1 */
unsigned short gaddr2; /* group address filter 2 */
unsigned short gaddr3; /* group address filter 3 */
unsigned short gaddr4; /* group address filter 4 */
unsigned long tbuf0_data0; /* save area 0 - current frm */
unsigned long tbuf0_data1; /* save area 1 - current frm */
unsigned long tbuf0_rba0;
unsigned long tbuf0_crc;
unsigned short tbuf0_bcnt;
unsigned short paddr_h; /* physical address (MSB) */
unsigned short paddr_m; /* physical address */
unsigned short paddr_l; /* physical address (LSB) */
unsigned short p_per; /* persistence */
unsigned short rfbd_ptr; /* rx first bd pointer */
unsigned short tfbd_ptr; /* tx first bd pointer */
unsigned short tlbd_ptr; /* tx last bd pointer */
unsigned long tbuf1_data0; /* save area 0 - next frame */
unsigned long tbuf1_data1; /* save area 1 - next frame */
unsigned long tbuf1_rba0;
unsigned long tbuf1_crc;
unsigned short tbuf1_bcnt;
unsigned short tx_len; /* tx frame length counter */
unsigned short iaddr1; /* individual address filter 1*/
unsigned short iaddr2; /* individual address filter 2*/
unsigned short iaddr3; /* individual address filter 3*/
unsigned short iaddr4; /* individual address filter 4*/
unsigned short boff_cnt; /* back-off counter */
unsigned short taddr_h; /* temp address (MSB) */
unsigned short taddr_m; /* temp address */
unsigned short taddr_l; /* temp address (LSB) */
};
struct transparent_pram {
/*
* SCC parameter RAM
*/
unsigned short rbase; /* RX BD base address */
unsigned short tbase; /* TX BD base address */
unsigned char rfcr; /* Rx function code */
unsigned char tfcr; /* Tx function code */
unsigned short mrblr; /* Rx buffer length */
unsigned long rstate; /* Rx internal state */
unsigned long rptr; /* Rx internal data pointer */
unsigned short rbptr; /* rb BD Pointer */
unsigned short rcount; /* Rx internal byte count */
unsigned long rtemp; /* Rx temp */
unsigned long tstate; /* Tx internal state */
unsigned long tptr; /* Tx internal data pointer */
unsigned short tbptr; /* Tx BD pointer */
unsigned short tcount; /* Tx byte count */
unsigned long ttemp; /* Tx temp */
unsigned long rcrc; /* temp receive CRC */
unsigned long tcrc; /* temp transmit CRC */
/*
* TRANSPARENT specific parameter RAM
*/
unsigned long crc_p; /* CRC Preset */
unsigned long crc_c; /* CRC constant */
};
struct timer_pram {
/*
* RISC timers parameter RAM
*/
unsigned short tm_base; /* RISC timer table base adr */
unsigned short tm_ptr; /* RISC timer table pointer */
unsigned short r_tmr; /* RISC timer mode register */
unsigned short r_tmv; /* RISC timer valid register */
unsigned long tm_cmd; /* RISC timer cmd register */
unsigned long tm_cnt; /* RISC timer internal cnt */
};
struct i2c_pram {
/*
* I2C parameter RAM
*/
unsigned short rbase; /* RX BD base address */
unsigned short tbase; /* TX BD base address */
unsigned char rfcr; /* Rx function code */
unsigned char tfcr; /* Tx function code */
unsigned short mrblr; /* Rx buffer length */
unsigned long rstate; /* Rx internal state */
unsigned long rptr; /* Rx internal data pointer */
unsigned short rbptr; /* rb BD Pointer */
unsigned short rcount; /* Rx internal byte count */
unsigned long rtemp; /* Rx temp */
unsigned long tstate; /* Tx internal state */
unsigned long tptr; /* Tx internal data pointer */
unsigned short tbptr; /* Tx BD pointer */
unsigned short tcount; /* Tx byte count */
unsigned long ttemp; /* Tx temp */
};
/************************************************************************
* *
* MPC860 MEMORY MAP *
* *
************************************************************************/
typedef struct tsMpc860{
/*-----------------------------------*/
/* BASE + 0x0000: INTERNAL REGISTERS */
/*-----------------------------------*/
/*-----*/
/* SIU */
/*-----*/
unsigned long siu_mcr; /* module configuration reg */
unsigned long siu_sypcr; /* System protection cnt */
unsigned char RESERVED58[0x6];
unsigned short siu_swsr; /* sw service */
unsigned long siu_sipend; /* Interrupt pend reg */
unsigned long siu_simask; /* Interrupt mask reg */
unsigned long siu_siel; /* Interrupt edge level mask reg */
unsigned long siu_sivec; /* Interrupt vector */
unsigned long siu_tesr; /* Transfer error status */
unsigned char RESERVED1[0xc]; /* Reserved area */
unsigned long sdma_sdcr; /* SDMA configuration reg */
unsigned char RESERVED55[0x4c];
/*--------*/
/* PCMCIA */
/*--------*/
unsigned long pcmcia_pbr0; /* PCMCIA Base Reg: Window 0 */
unsigned long pcmcia_por0; /* PCMCIA Option Reg: Window 0 */
unsigned long pcmcia_pbr1; /* PCMCIA Base Reg: Window 1 */
unsigned long pcmcia_por1; /* PCMCIA Option Reg: Window 1 */
unsigned long pcmcia_pbr2; /* PCMCIA Base Reg: Window 2 */
unsigned long pcmcia_por2; /* PCMCIA Option Reg: Window 2 */
unsigned long pcmcia_pbr3; /* PCMCIA Base Reg: Window 3 */
unsigned long pcmcia_por3; /* PCMCIA Option Reg: Window 3 */
unsigned long pcmcia_pbr4; /* PCMCIA Base Reg: Window 4 */
unsigned long pcmcia_por4; /* PCMCIA Option Reg: Window 4 */
unsigned long pcmcia_pbr5; /* PCMCIA Base Reg: Window 5 */
unsigned long pcmcia_por5; /* PCMCIA Option Reg: Window 5 */
unsigned long pcmcia_pbr6; /* PCMCIA Base Reg: Window 6 */
unsigned long pcmcia_por6; /* PCMCIA Option Reg: Window 6 */
unsigned long pcmcia_pbr7; /* PCMCIA Base Reg: Window 7 */
unsigned long pcmcia_por7; /* PCMCIA Option Reg: Window 7 */
unsigned char RESERVED2[0x20]; /* Reserved area */
unsigned long pcmcia_pgcra; /* PCMCIA Slot A Control Reg */
unsigned long pcmcia_pgcrb; /* PCMCIA Slot B Control Reg */
unsigned long pcmcia_pscr; /* PCMCIA Status Reg */
unsigned char RESERVED2a[0x4]; /* Reserved area */
unsigned long pcmcia_pipr; /* PCMCIA Pins Value Reg */
unsigned char RESERVED2b[0x4]; /* Reserved area */
unsigned long pcmcia_per; /* PCMCIA Enable Reg */
unsigned char RESERVED2c[0x4]; /* Reserved area */
/*------*/
/* MEMC */
/*------*/
unsigned long memc_br0; /* base register 0 */
unsigned long memc_or0; /* option register 0 */
unsigned long memc_br1; /* base register 1 */
unsigned long memc_or1; /* option register 1 */
unsigned long memc_br2; /* base register 2 */
unsigned long memc_or2; /* option register 2 */
unsigned long memc_br3; /* base register 3 */
unsigned long memc_or3; /* option register 3 */
unsigned long memc_br4; /* base register 3 */
unsigned long memc_or4; /* option register 3 */
unsigned long memc_br5; /* base register 3 */
unsigned long memc_or5; /* option register 3 */
unsigned long memc_br6; /* base register 3 */
unsigned long memc_or6; /* option register 3 */
unsigned long memc_br7; /* base register 3 */
unsigned long memc_or7; /* option register 3 */
unsigned char RESERVED3[0x24]; /* Reserved area */
unsigned long memc_mar; /* Memory address */
unsigned long memc_mcr; /* Memory command */
unsigned char RESERVED4[0x4]; /* Reserved area */
unsigned long memc_mamr; /* Machine A mode */
unsigned long memc_mbmr; /* Machine B mode */
unsigned short memc_mstat; /* Memory status */
unsigned short memc_mptpr; /* Memory preidic timer prescalar */
unsigned long memc_mdr; /* Memory data */
unsigned char RESERVED5[0x80]; /* Reserved area */
/*---------------------------*/
/* SYSTEM INTEGRATION TIMERS */
/*---------------------------*/
unsigned short simt_tbscr; /* Time base stat&ctr */
unsigned char RESERVED100[0x2]; /* Reserved area */
unsigned long simt_tbreff0; /* Time base reference 0 */
unsigned long simt_tbreff1; /* Time base reference 1 */
unsigned char RESERVED6[0x14]; /* Reserved area */
unsigned short simt_rtcsc; /* Realtime clk stat&cntr 1 */
unsigned char RESERVED110[0x2]; /* Reserved area */
unsigned long simt_rtc; /* Realtime clock */
unsigned long simt_rtsec; /* Realtime alarm seconds */
unsigned long simt_rtcal; /* Realtime alarm */
unsigned char RESERVED56[0x10]; /* Reserved area */
unsigned long simt_piscr; /* PIT stat&ctrl */
unsigned long simt_pitc; /* PIT counter */
unsigned long simt_pitr; /* PIT */
unsigned char RESERVED7[0x34]; /* Reserved area */
/*---------------*/
/* CLOCKS, RESET */
/*---------------*/
unsigned long clkr_sccr; /* System clk cntrl */
unsigned long clkr_plprcr; /* PLL reset&ctrl */
unsigned long clkr_rsr; /* reset status */
unsigned char RESERVED8a[0x74]; /* Reserved area */
/*--------------------------------*/
/* System Integration Timers Keys */
/*--------------------------------*/
unsigned long simt_tbscrk; /* Timebase Status&Ctrl Key */
unsigned long simt_tbreff0k; /* Timebase Reference 0 Key */
unsigned long simt_tbreff1k; /* Timebase Reference 1 Key */
unsigned long simt_tbk; /* Timebase and Decrementer Key */
unsigned char RESERVED66b[0x10]; /* Reserved area */
unsigned long simt_rtcsck; /* Real-Time Clock Status&Ctrl Key */
unsigned long simt_rtck; /* Real-Time Clock Key */
unsigned long simt_rtseck; /* Real-Time Alarm Seconds Key */
unsigned long simt_rtcalk; /* Real-Time Alarm Key */
unsigned char RESERVED66c[0x10]; /* Reserved area */
unsigned long simt_piscrk; /* Periodic Interrupt Status&Ctrl Key */
unsigned long simt_pitck; /* Periodic Interrupt Count Key */
unsigned char RESERVED66d[0x38]; /* Reserved area */
/*----------------------*/
/* Clock and Reset Keys */
/*----------------------*/
unsigned long clkr_sccrk; /* System Clock Control Key */
unsigned long clkr_plprcrk; /* PLL, Low Power and Reset Control Key */
unsigned long clkr_rsrk; /* Reset Status Key */
unsigned char RESERVED66e[0x4d4]; /* Reserved area */
/*-----*/
/* I2C */
/*-----*/
unsigned char i2c_i2mod; /* i2c mode */
unsigned char RESERVED59[3];
unsigned char i2c_i2add; /* i2c address */
unsigned char RESERVED60[3];
unsigned char i2c_i2brg; /* i2c brg */
unsigned char RESERVED61[3];
unsigned char i2c_i2com; /* i2c command */
unsigned char RESERVED62[3];
unsigned char i2c_i2cer; /* i2c event */
unsigned char RESERVED63[3];
unsigned char i2c_i2cmr; /* i2c mask */
unsigned char RESERVED10[0x8b]; /* Reserved area */
/*-----*/
/* DMA */
/*-----*/
unsigned char RESERVED11[0x4]; /* Reserved area */
unsigned long dma_sdar; /* SDMA address reg */
unsigned char RESERVED12[0x2]; /* Reserved area */
unsigned char dma_sdsr; /* SDMA status reg */
unsigned char RESERVED13[0x3]; /* Reserved area */
unsigned char dma_sdmr; /* SDMA mask reg */
unsigned char RESERVED14[0x1]; /* Reserved area */
unsigned char dma_idsr1; /* IDMA1 status reg */
unsigned char RESERVED15[0x3]; /* Reserved area */
unsigned char dma_idmr1; /* IDMA1 mask reg */
unsigned char RESERVED16[0x3]; /* Reserved area */
unsigned char dma_idsr2; /* IDMA2 status reg */
unsigned char RESERVED17[0x3]; /* Reserved area */
unsigned char dma_idmr2; /* IDMA2 mask reg */
unsigned char RESERVED18[0x13]; /* Reserved area */
/*--------------------------*/
/* CPM Interrupt Controller */
/*--------------------------*/
unsigned short intr_civr; /* CP interrupt vector reg */
unsigned char RESERVED19[0xe]; /* Reserved area */
unsigned long intr_cicr; /* CP interrupt configuration reg */
unsigned long intr_cipr; /* CP interrupt pending reg */
unsigned long intr_cimr; /* CP interrupt mask reg */
unsigned long intr_cisr; /* CP interrupt in-service reg */
/*----------*/
/* I/O port */
/*----------*/
unsigned short pio_padir; /* port A data direction reg */
unsigned short pio_papar; /* port A pin assignment reg */
unsigned short pio_paodr; /* port A open drain reg */
unsigned short pio_padat; /* port A data register */
unsigned char RESERVED20[0x8]; /* Reserved area */
unsigned short pio_pcdir; /* port C data direction reg */
unsigned short pio_pcpar; /* port C pin assignment reg */
unsigned short pio_pcso; /* port C special options */
unsigned short pio_pcdat; /* port C data register */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -