m68360_quicc.h

来自「Linux Kernel 2.6.9 for OMAP1710」· C头文件 代码 · 共 363 行 · 第 1/2 页

H
363
字号
/*********************************** * $Id: m68360_quicc.h,v 1.1 2002/03/02 15:01:07 gerg Exp $ *********************************** * *************************************** * Definitions of QUICC memory structures *************************************** */#ifndef __M68360_QUICC_H#define __M68360_QUICC_H/* * include registers and * parameter ram definitions files */#include <asm/m68360_regs.h>#include <asm/m68360_pram.h>/* Buffer Descriptors */typedef struct quicc_bd {    volatile unsigned short     status;    volatile unsigned short     length;    volatile unsigned char      *buf;     /* WARNING: This is only true if *char is 32 bits */} QUICC_BD;#ifdef MOTOROLA_ORIGINALstruct user_data {    /* BASE + 0x000: user data memory */    volatile unsigned char      udata_bd_ucode[0x400]; /*user data bd's Ucode*/    volatile unsigned char      udata_bd[0x200];       /*user data Ucode     */    volatile unsigned char      ucode_ext[0x100];      /*Ucode Extention ram */    volatile unsigned char      RESERVED1[0x500];      /* Reserved area      */};#elsestruct user_data {    /* BASE + 0x000: user data memory */    volatile unsigned char      udata_bd_ucode[0x400]; /* user data, bds, Ucode*/    volatile unsigned char      udata_bd1[0x200];       /* user, bds */    volatile unsigned char      ucode_bd_scratch[0x100]; /* user, bds, ucode scratch */    volatile unsigned char      udata_bd2[0x100];       /* user, bds */    volatile unsigned char      RESERVED1[0x400];      /* Reserved area      */};#endif/* * internal ram */typedef struct quicc {	union {		struct quicc32_pram ch_pram_tbl[32];	/* 32*64(bytes) per channel */			struct user_data		u;	}ch_or_u;	/* multipul or user space */    /* BASE + 0xc00: PARAMETER RAM */	union {		struct scc_pram {			union {				struct hdlc_pram        h;				struct uart_pram        u;				struct bisync_pram      b;				struct transparent_pram t;				unsigned char   RESERVED66[0x70];			} pscc;               /* scc parameter area (protocol dependent) */			union {				struct {					unsigned char       RESERVED70[0x10];					struct spi_pram     spi;					unsigned char       RESERVED72[0x8];					struct timer_pram   timer;				} timer_spi;				struct {					struct idma_pram idma;					unsigned char       RESERVED67[0x4];					union {						struct smc_uart_pram u;						struct smc_trnsp_pram t;					} psmc;				} idma_smc;			} pothers;		} scc;		struct ethernet_pram    enet_scc;		struct global_multi_pram        m;		unsigned char   pr[0x100];	} pram[4];    /* reserved */    /* BASE + 0x1000: INTERNAL REGISTERS */    /* SIM */    volatile unsigned long      sim_mcr;        /* module configuration reg */    volatile unsigned short     sim_simtr;      /* module test register     */    volatile unsigned char      RESERVED2[0x2]; /* Reserved area            */    volatile unsigned char      sim_avr;        /* auto vector reg          */    volatile unsigned char      sim_rsr;        /* reset status reg         */    volatile unsigned char      RESERVED3[0x2]; /* Reserved area            */    volatile unsigned char      sim_clkocr;     /* CLCO control register    */    volatile unsigned char      RESERVED62[0x3];        /* Reserved area    */    volatile unsigned short     sim_pllcr;      /* PLL control register     */    volatile unsigned char      RESERVED63[0x2];        /* Reserved area    */    volatile unsigned short     sim_cdvcr;      /* Clock devider control register */    volatile unsigned short     sim_pepar;      /* Port E pin assignment register */    volatile unsigned char      RESERVED64[0xa];        /* Reserved area    */    volatile unsigned char      sim_sypcr;      /* system protection control*/    volatile unsigned char      sim_swiv;       /* software interrupt vector*/    volatile unsigned char      RESERVED6[0x2]; /* Reserved area            */    volatile unsigned short     sim_picr;       /* periodic interrupt control reg */    volatile unsigned char      RESERVED7[0x2]; /* Reserved area            */    volatile unsigned short     sim_pitr;       /* periodic interrupt timing reg */    volatile unsigned char      RESERVED8[0x3]; /* Reserved area            */    volatile unsigned char      sim_swsr;       /* software service         */    volatile unsigned long      sim_bkar;       /* breakpoint address register*/    volatile unsigned long      sim_bkcr;       /* breakpoint control register*/    volatile unsigned char      RESERVED10[0x8];        /* Reserved area    */    /* MEMC */    volatile unsigned long      memc_gmr;       /* Global memory register   */    volatile unsigned short     memc_mstat;     /* MEMC status register     */    volatile unsigned char      RESERVED11[0xa];        /* Reserved area    */    volatile unsigned long      memc_br0;       /* base register 0          */    volatile unsigned long      memc_or0;       /* option register 0        */    volatile unsigned char      RESERVED12[0x8];        /* Reserved area    */    volatile unsigned long      memc_br1;       /* base register 1          */    volatile unsigned long      memc_or1;       /* option register 1        */    volatile unsigned char      RESERVED13[0x8];        /* Reserved area    */    volatile unsigned long      memc_br2;       /* base register 2          */    volatile unsigned long      memc_or2;       /* option register 2        */    volatile unsigned char      RESERVED14[0x8];        /* Reserved area    */    volatile unsigned long      memc_br3;       /* base register 3          */    volatile unsigned long      memc_or3;       /* option register 3        */    volatile unsigned char      RESERVED15[0x8];        /* Reserved area    */    volatile unsigned long      memc_br4;       /* base register 3          */    volatile unsigned long      memc_or4;       /* option register 3        */    volatile unsigned char      RESERVED16[0x8];        /* Reserved area    */    volatile unsigned long      memc_br5;       /* base register 3          */    volatile unsigned long      memc_or5;       /* option register 3        */    volatile unsigned char      RESERVED17[0x8];        /* Reserved area    */    volatile unsigned long      memc_br6;       /* base register 3          */    volatile unsigned long      memc_or6;       /* option register 3        */    volatile unsigned char      RESERVED18[0x8];        /* Reserved area    */    volatile unsigned long      memc_br7;       /* base register 3          */    volatile unsigned long      memc_or7;       /* option register 3        */    volatile unsigned char      RESERVED9[0x28];        /* Reserved area    */    /* TEST */    volatile unsigned short     test_tstmra;    /* master shift a           */    volatile unsigned short     test_tstmrb;    /* master shift b           */    volatile unsigned short     test_tstsc;     /* shift count              */    volatile unsigned short     test_tstrc;     /* repetition counter       */    volatile unsigned short     test_creg;      /* control                  */    volatile unsigned short     test_dreg;      /* destributed register     */    volatile unsigned char      RESERVED58[0x404];      /* Reserved area    */    /* IDMA1 */    volatile unsigned short     idma_iccr;      /* channel configuration reg*/    volatile unsigned char      RESERVED19[0x2];        /* Reserved area    */    volatile unsigned short     idma1_cmr;      /* dma mode reg             */    volatile unsigned char      RESERVED68[0x2];        /* Reserved area    */    volatile unsigned long      idma1_sapr;     /* dma source addr ptr      */    volatile unsigned long      idma1_dapr;     /* dma destination addr ptr */    volatile unsigned long      idma1_bcr;      /* dma byte count reg       */    volatile unsigned char      idma1_fcr;      /* function code reg        */    volatile unsigned char      RESERVED20;     /* Reserved area            */    volatile unsigned char      idma1_cmar;     /* channel mask reg         */    volatile unsigned char      RESERVED21;     /* Reserved area            */    volatile unsigned char      idma1_csr;      /* channel status reg       */    volatile unsigned char      RESERVED22[0x3];        /* Reserved area    */    /* SDMA */    volatile unsigned char      sdma_sdsr;      /* status reg               */    volatile unsigned char      RESERVED23;     /* Reserved area            */    volatile unsigned short     sdma_sdcr;      /* configuration reg        */    volatile unsigned long      sdma_sdar;      /* address reg              */    /* IDMA2 */    volatile unsigned char      RESERVED69[0x2];        /* Reserved area    */    volatile unsigned short     idma2_cmr;      /* dma mode reg             */    volatile unsigned long      idma2_sapr;     /* dma source addr ptr      */    volatile unsigned long      idma2_dapr;     /* dma destination addr ptr */    volatile unsigned long      idma2_bcr;      /* dma byte count reg       */    volatile unsigned char      idma2_fcr;      /* function code reg        */    volatile unsigned char      RESERVED24;     /* Reserved area            */    volatile unsigned char      idma2_cmar;     /* channel mask reg         */

⌨️ 快捷键说明

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