⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csl_xbushal.h

📁 SEED的VPM642测试程序-板级支持库
💻 H
📖 第 1 页 / 共 2 页
字号:
/******************************************************************************\

*           Copyright (C) 2000 Texas Instruments Incorporated.

*                           All Rights Reserved

*------------------------------------------------------------------------------

* FILENAME...... csl_xbushal.h

* DATE CREATED.. 06/12/2000 

* LAST MODIFIED. 10/03/2000 

*------------------------------------------------------------------------------

* REGISTERS

*

* XBGC     - global control register

* XCECTL0  - space control register 0

* XCECTL1  - space control register 1

* XCECTL2  - space control register 2

* XCECTL3  - space control register 3

* XBHC     - host port interface control register

* XBIMA    - internal master address register

* XBEA     - external address register

*

\******************************************************************************/

#ifndef _CSL_XBUSHAL_H_

#define _CSL_XBUSHAL_H_



#include <csl_stdinc.h>

#include <csl_chip.h>





#if (XBUS_SUPPORT)

/******************************************************************************\

* MISC section

\******************************************************************************/

#define _XBUS_BASE_GLOBAL   0x01880000u





/******************************************************************************\

* module level register/field access macros

\******************************************************************************/



  /* ----------------- */

  /* FIELD MAKE MACROS */

  /* ----------------- */



  #define XBUS_FMK(REG,FIELD,x)\

    _PER_FMK(XBUS,##REG,##FIELD,x)



  #define XBUS_FMKS(REG,FIELD,SYM)\

    _PER_FMKS(XBUS,##REG,##FIELD,##SYM)





  /* -------------------------------- */

  /* RAW REGISTER/FIELD ACCESS MACROS */

  /* -------------------------------- */



  #define XBUS_ADDR(REG)\

    _XBUS_##REG##_ADDR



  #define XBUS_RGET(REG)\

    _PER_RGET(_XBUS_##REG##_ADDR,XBUS,##REG)



  #define XBUS_RSET(REG,x)\

    _PER_RSET(_XBUS_##REG##_ADDR,XBUS,##REG,x)



  #define XBUS_FGET(REG,FIELD)\

    _XBUS_##REG##_FGET(##FIELD)



  #define XBUS_FSET(REG,FIELD,x)\

    _XBUS_##REG##_FSET(##FIELD,##x)



  #define XBUS_FSETS(REG,FIELD,SYM)\

    _XBUS_##REG##_FSETS(##FIELD,##SYM)





  /* ------------------------------------------ */

  /* ADDRESS BASED REGISTER/FIELD ACCESS MACROS */

  /* ------------------------------------------ */



  #define XBUS_RGETA(addr,REG)\

    _PER_RGET(addr,XBUS,##REG)



  #define XBUS_RSETA(addr,REG,x)\

    _PER_RSET(addr,XBUS,##REG,x)



  #define XBUS_FGETA(addr,REG,FIELD)\

    _PER_FGET(addr,XBUS,##REG,##FIELD)



  #define XBUS_FSETA(addr,REG,FIELD,x)\

    _PER_FSET(addr,XBUS,##REG,##FIELD,x)



  #define XBUS_FSETSA(addr,REG,FIELD,SYM)\

    _PER_FSETS(addr,XBUS,##REG,##FIELD,##SYM)





/******************************************************************************\

* _____________________

* |                   |

* |  X B G C          |

* |___________________|

*

* XBGC - global control register

*

* FIELDS (msb -> lsb)

* (r)  FMOD

* (rw) XFCEN

* (rw) XFRAT

* (r)  XARB

*

\******************************************************************************/

  #define _XBUS_XBGC_OFFSET                0

  

  #define _XBUS_XBGC_ADDR                  0x01880000u



  #define _XBUS_XBGC_FMOD_MASK             0x00008000u

  #define _XBUS_XBGC_FMOD_SHIFT            0x0000000Fu

  #define  XBUS_XBGC_FMOD_DEFAULT          0x00000000u

  #define  XBUS_XBGC_FMOD_OF(x)            _VALUEOF(x)

  #define  XBUS_XBGC_FMOD_GLUE             0x00000000u

  #define  XBUS_XBGC_FMOD_GLUELESS         0x00000001u



  #define _XBUS_XBGC_XFCEN_MASK            0x00004000u

  #define _XBUS_XBGC_XFCEN_SHIFT           0x0000000Eu

  #define  XBUS_XBGC_XFCEN_DEFAULT         0x00000000u

  #define  XBUS_XBGC_XFCEN_OF(x)           _VALUEOF(x)

  #define  XBUS_XBGC_XFCEN_DISABLE         0x00000000u

  #define  XBUS_XBGC_XFCEN_ENABLE          0x00000001u



  #define _XBUS_XBGC_XFRAT_MASK            0x00003000u

  #define _XBUS_XBGC_XFRAT_SHIFT           0x0000000Cu

  #define  XBUS_XBGC_XFRAT_DEFAULT         0x00000000u

  #define  XBUS_XBGC_XFRAT_OF(x)           _VALUEOF(x)

  #define  XBUS_XBGC_XFRAT_ONEEIGHTH       0x00000000u

  #define  XBUS_XBGC_XFRAT_ONESIXTH        0x00000001u

  #define  XBUS_XBGC_XFRAT_ONEFOURTH       0x00000002u

  #define  XBUS_XBGC_XFRAT_ONEHALF         0x00000003u



  #define _XBUS_XBGC_XARB_MASK             0x00000800u

  #define _XBUS_XBGC_XARB_SHIFT            0x0000000Bu

  #define  XBUS_XBGC_XARB_DEFAULT          0x00000000u

  #define  XBUS_XBGC_XARB_OF(x)            _VALUEOF(x)

  #define  XBUS_XBGC_XARB_DISABLE          0x00000000u

  #define  XBUS_XBGC_XARB_ENABLE           0x00000001u



  #define  XBUS_XBGC_OF(x)                 _VALUEOF(x)



  #define XBUS_XBGC_DEFAULT (Uint32)( \

     _PER_FDEFAULT(XBUS,XBGC,FMOD) \

    |_PER_FDEFAULT(XBUS,XBGC,XFCEN) \

    |_PER_FDEFAULT(XBUS,XBGC,XFRAT) \

    |_PER_FDEFAULT(XBUS,XBGC,XARB) \

  )



  #define XBUS_XBGC_RMK(xfcen,xfrat) (Uint32)( \

     _PER_FMK(XBUS,XBGC,XFCEN,xfcen) \

    |_PER_FMK(XBUS,XBGC,XFRAT,xfrat) \

  )



  #define _XBUS_XBGC_FGET(FIELD)\

    _PER_FGET(_XBUS_XBGC_ADDR,XBUS,XBGC,##FIELD)



  #define _XBUS_XBGC_FSET(FIELD,field)\

    _PER_FSET(_XBUS_XBGC_ADDR,XBUS,XBGC,##FIELD,field)



  #define _XBUS_XBGC_FSETS(FIELD,SYM)\

    _PER_FSETS(_XBUS_XBGC_ADDR,XBUS,XBGC,##FIELD,##SYM)





/******************************************************************************\

* _____________________

* |                   |

* |  X C E C T L      |

* |___________________|

*

* XCECTL0  - XCE space control register 0

* XCECTL1  - XCE space control register 1

* XCECTL2  - XCE space control register 2

* XCECTL3  - XCE space control register 3

*

* FIELDS (msb -> lsb)

* (rw) WRSETUP

* (rw) WRSTROBE

* (rw) WRHOLD

* (rw) RDSETUP

* (rw) RDSTROBE

* (rw) MTYPE

* (rw) RDHOLD

*

\******************************************************************************/

  #define _XBUS_XCECTL0_OFFSET             2

  #define _XBUS_XCECTL1_OFFSET             1

  #define _XBUS_XCECTL2_OFFSET             4

  #define _XBUS_XCECTL3_OFFSET             5



  #define _XBUS_XCECTL0_ADDR               0x01880008u

  #define _XBUS_XCECTL1_ADDR               0x01880004u

  #define _XBUS_XCECTL2_ADDR               0x01880010u

  #define _XBUS_XCECTL3_ADDR               0x01880014u



  #define _XBUS_XCECTL_WRSETUP_MASK        0xF0000000u

  #define _XBUS_XCECTL_WRSETUP_SHIFT       0x0000001Cu

  #define  XBUS_XCECTL_WRSETUP_DEFAULT     0x0000000Fu

  #define  XBUS_XCECTL_WRSETUP_OF(x)       _VALUEOF(x)



  #define _XBUS_XCECTL_WRSTRB_MASK       0x0FC00000u

  #define _XBUS_XCECTL_WRSTRB_SHIFT      0x00000016u

  #define  XBUS_XCECTL_WRSTRB_DEFAULT    0x0000003Fu

  #define  XBUS_XCECTL_WRSTRB_OF(x)      _VALUEOF(x)



  #define _XBUS_XCECTL_WRHLD_MASK         0x00300000u

  #define _XBUS_XCECTL_WRHLD_SHIFT        0x00000014u

  #define  XBUS_XCECTL_WRHLD_DEFAULT      0x00000003u

  #define  XBUS_XCECTL_WRHLD_OF(x)        _VALUEOF(x)



  #define _XBUS_XCECTL_RDSETUP_MASK        0x000F0000u

  #define _XBUS_XCECTL_RDSETUP_SHIFT       0x00000010u

  #define  XBUS_XCECTL_RDSETUP_DEFAULT     0x0000000Fu

  #define  XBUS_XCECTL_RDSETUP_OF(x)       _VALUEOF(x)



  #define _XBUS_XCECTL_RDSTRB_MASK       0x00003F00u

  #define _XBUS_XCECTL_RDSTRB_SHIFT      0x00000008u

  #define  XBUS_XCECTL_RDSTRB_DEFAULT    0x0000003Fu

  #define  XBUS_XCECTL_RDSTRB_OF(x)      _VALUEOF(x)



  #define _XBUS_XCECTL_MTYPE_MASK          0x00000070u

⌨️ 快捷键说明

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