mpc8xx.h

来自「WinCE 3.0 BSP, 包含Inter SA1110, Intel_815」· C头文件 代码 · 共 1,115 行 · 第 1/4 页

H
1,115
字号
    unsigned short  rbptr;      /* rb BD Pointer */
    unsigned long   rtemp;      /* Rx temp */
    unsigned long   tstate;     /* Tx internal state */
    unsigned long   tptr;       /* Tx internal data pointer */
    unsigned short  tcount;     /* Tx byte count */
    unsigned short  tbptr;      /* Tx BD pointer */
    unsigned long   ttemp;      /* Tx temp */
    unsigned long   ttemp2;     /* Tx temp2 */
    unsigned short  resv;       /* Reserved */
    unsigned short  rpbase;     /* Relocatable PRAM Base*/
};

typedef struct smc_uart_pram {
    unsigned short  tbase;      /* Tx BD Base Address */
    unsigned short  rbase;      /* Rx BD Base Address */
    unsigned short  mrblr;      /* Rx buffer length */
    unsigned char   tfcr;       /* Tx function code */
    unsigned char   rfcr;       /* Rx function code */
    unsigned long   rstate;     /* Rx internal state */
    unsigned long   rptr;       /* Rx internal data pointer */
    unsigned short  rcount;     /* Rx internal byte count */
    unsigned short  rbptr;      /* rb BD Pointer */
    unsigned long   rtemp;      /* Rx temp */
    unsigned long   tstate;     /* Tx internal state */
    unsigned long   tptr;       /* Tx internal data pointer */
    unsigned short  tcount;     /* Tx byte count */
    unsigned short  tbptr;      /* Tx BD pointer */
    unsigned long   ttemp;      /* Tx temp */
                                         /* Protocol specific */
    unsigned short  idlc;       /* Temporary IDLE Counter */
    unsigned short  max_idl;    /* Maximum IDLE Characters */
    unsigned short  brkec;      /* Rx Break Condition Counter */
    unsigned short  brkln;      /* Last Rx Break Length */
    unsigned short  r_mask;     /* Temporary bit mask */
    unsigned short  brkcr;      /* Break Count Register (Tx) */
} smc_uart_pram;

typedef struct smc_trnsp_pram {
    unsigned short  tbase;      /* Tx BD Base Address */
    unsigned short  rbase;      /* Rx BD Base Address */
    unsigned short  mrblr;      /* Rx buffer length */
    unsigned char   tfcr;       /* Tx function code */
    unsigned char   rfcr;       /* Rx function code */
    unsigned long   rstate;     /* Rx internal state */
    unsigned long   rptr;       /* Rx internal data pointer */
    unsigned short  rcount;     /* Rx internal byte count */
    unsigned short  rbptr;      /* rb BD Pointer */
    unsigned long   rtemp;      /* Rx temp */
    unsigned long   tstate;     /* Tx internal state */
    unsigned long   tptr;       /* Tx internal data pointer */
    unsigned short  tcount;     /* Tx byte count */
    unsigned short  tbptr;      /* Tx BD pointer */
    unsigned long   ttemp;      /* Tx temp */
    unsigned short  reserved[6];    /* Reserved */
} smc_trnsp_pram;

typedef struct centronics_pram {
    unsigned short  tbase;      /* Tx BD Base Address */
    unsigned short  rbase;      /* Rx BD Base Address */
    unsigned short  mrblr;      /* Rx buffer length */
    unsigned char   smask;      /* Status Mask */
    unsigned char   fcr;        /* function code */
    unsigned long   rstate;     /* Rx internal state */
    unsigned long   rptr;       /* Rx internal data pointer */
    unsigned short  rcount;     /* Rx internal byte count */
    unsigned short  rbptr;      /* rb BD Pointer */
    unsigned long   rtemp;      /* Rx temp */
    unsigned long   tstate;     /* Tx internal state */
    unsigned long   tptr;       /* Tx internal data pointer */
    unsigned short  tcount;     /* Tx byte count */
    unsigned short  tbptr;      /* Tx BD pointer */
    unsigned long   ttemp;      /* Tx temp */
    unsigned short  sl_cnt;     /* Silence Counter */
    unsigned short  max_sl;     /* Maximum Silence period */
    unsigned short  char2;      /* CONTROL char 2 */
    unsigned short  char1;      /* CONTROL char 1 */
    unsigned short  char4;      /* CONTROL char 4 */
    unsigned short  char3;      /* CONTROL char 3 */
    unsigned short  char6;      /* CONTROL char 6 */
    unsigned short  char5;      /* CONTROL char 5 */
    unsigned short  char8;      /* CONTROL char 8 */
    unsigned short  char7;      /* CONTROL char 7 */
    unsigned short  rccr;       /* Rx Char Control Register */
    unsigned short  rccm;       /* Rx Control Char Mask */
} centronics_pram;

struct idma_pram {
    unsigned short  ibptr;  /* IDMA buffer descriptor pointer */
    unsigned short  ibase;  /* IDMA BD Base Address */
    unsigned long   istate; /* IDMA internal state */
    unsigned long   itemp;  /* IDMA temp */
};

struct ethernet_pram {
    /*
     * SCC parameter RAM
     */
    unsigned short  tbase;      /* TX BD base address */
    unsigned short  rbase;      /* RX BD base address */
    unsigned short  mrblr;      /* Rx buffer length */
    unsigned char   tfcr;       /* Tx function code */
    unsigned char   rfcr;       /* Rx function code */
    unsigned long   rstate;     /* Rx internal state */
    unsigned long   rptr;       /* Rx internal data pointer */
    unsigned short  rcount;     /* Rx internal byte count */
    unsigned short  rbptr;      /* rb BD Pointer */
    unsigned long   rtemp;      /* Rx temp */
    unsigned long   tstate;     /* Tx internal state */
    unsigned long   tptr;       /* Tx internal data pointer */
    unsigned short  tcount;     /* Tx byte count */
    unsigned short  tbptr;      /* Tx BD pointer */
    unsigned long   ttemp;      /* Tx temp */
    unsigned long   rcrc;       /* temp receive CRC */
    unsigned long   tcrc;       /* temp transmit CRC */

    /*
     * ETHERNET specific parameter RAM
     */
    unsigned long   c_pres;     /* preset CRC */
    unsigned long   c_mask;     /* constant mask for CRC */
    unsigned long   crcec;      /* CRC error counter */
    unsigned long   alec;       /* alighnment error counter */
    unsigned long   disfc;      /* discard frame counter */
    unsigned short  ret_lim;    /* retry limit threshold */
    unsigned short  pads;       /* short frame PAD characters */
    unsigned short  mflr;       /* maximum frame length reg */
    unsigned short  ret_cnt;    /* retry limit counter */
    unsigned short  maxd1;      /* maximum DMA1 length reg */
    unsigned short  minflr;     /* minimum frame length reg */
    unsigned short  maxd;       /* rx max DMA */
    unsigned short  maxd2;      /* maximum DMA2 length reg */
    unsigned short  max_b;      /* max bd byte count */
    unsigned short  dma_cnt;    /* rx dma counter */
    unsigned short  gaddr2;     /* group address filter 2 */
    unsigned short  gaddr1;     /* group address filter 1 */
    unsigned short  gaddr4;     /* group address filter 4 */
    unsigned short  gaddr3;     /* group address filter 3 */
    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  paddr_h;    /* physical address (MSB) */
    unsigned short  tbuf0_bcnt;
    unsigned short  paddr_l;    /* physical address (LSB) */
    unsigned short  paddr_m;    /* physical address */
    unsigned short  rfbd_ptr;   /* rx first bd pointer */
    unsigned short  p_per;      /* persistence */
    unsigned short  tlbd_ptr;   /* tx last bd pointer */
    unsigned short  tfbd_ptr;   /* tx first 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  tx_len;     /* tx frame length counter */
    unsigned short  tbuf1_bcnt;
    unsigned short  iaddr2;     /* individual address filter 2*/
    unsigned short  iaddr1;     /* individual address filter 1*/
    unsigned short  iaddr4;     /* individual address filter 4*/
    unsigned short  iaddr3;     /* individual address filter 3*/
    unsigned short  taddr_h;    /* temp address (MSB) */
    unsigned short  boff_cnt;   /* back-off counter */
    unsigned short  taddr_l;    /* temp address (LSB) */
    unsigned short  taddr_m;    /* temp address */
};

struct transparent_pram {
    /*
     * SCC parameter RAM
     */
    unsigned short  tbase;      /* TX BD base address */
    unsigned short  rbase;      /* RX BD base address */
    unsigned short  mrblr;      /* Rx buffer length */
    unsigned char   tfcr;       /* Tx function code */
    unsigned char   rfcr;       /* Rx function code */
    unsigned long   rstate;     /* Rx internal state */
    unsigned long   rptr;       /* Rx internal data pointer */
    unsigned short  rcount;     /* Rx internal byte count */
    unsigned short  rbptr;      /* rb BD Pointer */
    unsigned long   rtemp;      /* Rx temp */
    unsigned long   tstate;     /* Tx internal state */
    unsigned long   tptr;       /* Tx internal data pointer */
    unsigned short  tcount;     /* Tx byte count */
    unsigned short  tbptr;      /* Tx BD pointer */
    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_ptr;     /* RISC timer table pointer */
    unsigned short  tm_base;    /* RISC timer table base adr */
    unsigned short  r_tmv;      /* RISC timer valid register */
    unsigned short  r_tmr;      /* RISC timer mode register */
    unsigned long   tm_cmd;     /* RISC timer cmd register */
    unsigned long   tm_cnt;     /* RISC timer internal cnt */
};

struct ucode_pram {
    /*
     * RISC ucode parameter RAM
     */
    unsigned short  d_ptr;      /* MISC Dump area pointer */
    unsigned short  rev_num;    /* Ucode Revision Number */
    unsigned long   temp1;      /* MISC Temp1 */
    unsigned long   temp2;      /* MISC Temp2 */
};

struct i2c_pram {
    /*
     * I2C parameter RAM
     */
    unsigned short  tbase;      /* TX BD base address */
    unsigned short  rbase;      /* RX BD base address */
    unsigned short  mrblr;      /* Rx buffer length */
    unsigned char   tfcr;       /* Tx function code */
    unsigned char   rfcr;       /* Rx function code */
    unsigned long   rstate;     /* Rx internal state */
    unsigned long   rptr;       /* Rx internal data pointer */
    unsigned short  rcount;     /* Rx internal byte count */
    unsigned short  rbptr;      /* rb BD Pointer */
    unsigned long   rtemp;      /* Rx temp */
    unsigned long   tstate;     /* Tx internal state */
    unsigned long   tptr;       /* Tx internal data pointer */
    unsigned short  tcount;     /* Tx byte count */
    unsigned short  tbptr;      /* Tx BD pointer */
    unsigned long   ttemp;      /* Tx Temp */
    unsigned long   ttemp2;     /* Tx temp2 */
    unsigned short  resv;       /* Reserved */
    unsigned short  rpbase;     /* Relocatable PRAM Base*/
};

struct dsp_pram {
    /*
     * DSP parameter RAM (for 860)
     */
    unsigned long   fdbase; /* FD table base address           */
    unsigned long   fdptr;      /* FD pointer                      */
    unsigned long   dstate;    /* DSP state                       */
    unsigned short  iterations;/* FD number of iterations         */
    unsigned short  dstatus;   /* FD status                       */
    unsigned short  cbase;     /* FD cbase                        */
    unsigned short  tap;       /* FD number of TAPs               */
    unsigned short  xptr;      /* FD pointer to sample pointer    */
    unsigned short  RESERVED_18;
    unsigned short  yptr;      /* FD pointer to output buffer ptr */
    unsigned short  RESERVED_1C;
    unsigned short  RESERVED_22;
    unsigned short  M;         /* FD sample buffer size - 1       */
    unsigned short  RESERVED_26;
    unsigned short  N;         /* FD output buffer size - 1       */
    unsigned short  RESERVED_2A;
    unsigned short  K;         /* FD Coefficient buffer size - 1  */
};


/*
 * definitions of IMM (internal memory map) structures
 */

typedef struct _imm {                 /* BASE + 0x0000: INTERNAL REGISTERS */

/* SIU */
    volatile unsigned long  siu_mcr;    /* module configuration reg */
    volatile unsigned long  siu_sypcr;  /* System protection cnt */
    volatile unsigned char  RESERVED58a[0x4];
    volatile unsigned short siu_swsr;   /* sw service */
    volatile unsigned char  RESERVED58b[0x2];
    volatile unsigned long  siu_sipend; /* Interrupt pend reg */
    volatile unsigned long  siu_simask; /* Interrupt mask reg */
    volatile unsigned long  siu_siel;   /* Interrupt edge level mask reg */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?