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

📄 cslr_venc_001.h

📁 TI达芬奇dm644x各硬件模块测试代码
💻 H
📖 第 1 页 / 共 5 页
字号:
#ifndef _CSLR_VENC_1_H_
#define _CSLR_VENC_1_H_
/*********************************************************************
 * Copyright (C) 2003-2004 Texas Instruments Incorporated. 
 * All Rights Reserved 
 *********************************************************************/
 /** \file cslr_venc_1.h
 * 
 * \brief This file contains the Register Desciptions for VENC
 * 
 *********************************************************************/

#include <cslr.h>

#include <tistdtypes.h>

/**************************************************************************\
* Register Overlay Structure
\**************************************************************************/
typedef struct  {
    volatile Uint32 VMOD;
    volatile Uint32 VIDCTL;
    volatile Uint32 VDPRO;
    volatile Uint32 SYNCCTL;
    volatile Uint32 HSPLS;
    volatile Uint32 VSPLS;
    volatile Uint32 HINT;
    volatile Uint32 HSTART;
    volatile Uint32 HVALID;
    volatile Uint32 VINT;
    volatile Uint32 VSTART;
    volatile Uint32 VVALID;
    volatile Uint32 HSDLY;
    volatile Uint32 VSDLY;
    volatile Uint32 YCCCTL;
    volatile Uint32 RGBCTL;
    volatile Uint32 RGBCLP;
    volatile Uint32 LINECTL;
    volatile Uint32 CULLLINE;
    volatile Uint32 LCDOUT;
    volatile Uint32 BRTS;
    volatile Uint32 BRTW;
    volatile Uint32 ACCTL;
    volatile Uint32 PWMP;
    volatile Uint32 PWMW;
    volatile Uint32 DCLKCTL;
    volatile Uint32 DCLKPTN0;
    volatile Uint32 DCLKPTN1;
    volatile Uint32 DCLKPTN2;
    volatile Uint32 DCLKPTN3;
    volatile Uint32 DCLKPTN0A;
    volatile Uint32 DCLKPTN1A;
    volatile Uint32 DCLKPTN2A;
    volatile Uint32 DCLKPTN3A;
    volatile Uint32 DCLKHS;
    volatile Uint32 DCLKHSA;
    volatile Uint32 DCLKHR;
    volatile Uint32 DCLKVS;
    volatile Uint32 DCLKVR;
    volatile Uint32 CAPCTL;
    volatile Uint32 CAPDO;
    volatile Uint32 CAPDE;
    volatile Uint32 ATR0;
    volatile Uint32 ATR1;
    volatile Uint32 ATR2;
    volatile Uint32 EPSON_LCDCTL;
    volatile Uint32 VSTAT;
    volatile Uint32 RAMADR;
    volatile Uint32 RAMPORT;
    volatile Uint32 DACTST;
    volatile Uint32 YCOLVL;
    volatile Uint32 SCPROG;
    volatile Uint32 RSV1;
    volatile Uint32 RSV2;
    volatile Uint32 RSV3;
    volatile Uint32 CVBS;
    volatile Uint32 CMPNT;
    volatile Uint32 ETMG0;
    volatile Uint32 ETMG1;
    volatile Uint32 ETMG2;
    volatile Uint32 ETMG3;
    volatile Uint32 DACSEL;
    volatile Uint32 RSV4;
    volatile Uint32 RSV5;
    volatile Uint32 ARGBX0;
    volatile Uint32 ARGBX1;
    volatile Uint32 ARGBX2;
    volatile Uint32 ARGBX3;
    volatile Uint32 ARGBX4;
    volatile Uint32 DRGBX0;
    volatile Uint32 DRGBX1;
    volatile Uint32 DRGBX2;
    volatile Uint32 DRGBX3;
    volatile Uint32 DRGBX4;
    volatile Uint32 VSTARTA;
    volatile Uint32 OSDCLK0;
    volatile Uint32 OSDCLK1;
    volatile Uint32 HVLDCL0;
    volatile Uint32 HVLDCL1;
    volatile Uint32 OSDHADV;
    volatile Uint32 SCTEST0;
    volatile Uint32 SCTEST1;
    volatile Uint32 SCTEST2;
    volatile Uint32 VTEST0;
    volatile Uint32 VTEST1;
    volatile Uint32 VTEST2;
} CSL_VencRegs;

/******The following 3 #defines are intended to overcome CSL 3.x limitations**/
/* EPSON_LCDCTL and CASIO_LCDCTL have the same offset */
#define  CASIO_LCDCTL  EPSON_LCDCTL
/* EPSON_LCDCTL and UDISP_LCDCTL have the same offset */
#define  UDISP_LCDCTL  EPSON_LCDCTL
/* EPSON_LCDCTL and STN_LCDCTL have the same offset */
#define  STN_LCDCTL  EPSON_LCDCTL

/**************************************************************************\
* Field Definition Macros
\**************************************************************************/

/* VMOD */

#define CSL_VENC_VMOD_VDMD_MASK          (0x0000F000u)
#define CSL_VENC_VMOD_VDMD_SHIFT         (0x0000000Cu)
#define CSL_VENC_VMOD_VDMD_RESETVAL      (0x00000000u)

/*----VDMD Tokens----*/
#define CSL_VENC_VMOD_VDMD_YCBCR_16BIT   (0x00000000u)
#define CSL_VENC_VMOD_VDMD_YCBCR_8BIT    (0x00000001u)
#define CSL_VENC_VMOD_VDMD_RGB666_18BIT  (0x00000002u)
#define CSL_VENC_VMOD_VDMD_RGB8_8BIT     (0x00000003u)
#define CSL_VENC_VMOD_VDMD_EPSON         (0x00000004u)
#define CSL_VENC_VMOD_VDMD_CASIO         (0x00000005u)
#define CSL_VENC_VMOD_VDMD_UDISP_QVGA    (0x00000006u)
#define CSL_VENC_VMOD_VDMD_STN_LCD       (0x00000007u)

#define CSL_VENC_VMOD_ITLCL_MASK         (0x00000800u)
#define CSL_VENC_VMOD_ITLCL_SHIFT        (0x0000000Bu)
#define CSL_VENC_VMOD_ITLCL_RESETVAL     (0x00000000u)

/*----ITLCL Tokens----*/
#define CSL_VENC_VMOD_ITLCL_262NTSC_312PAL (0x00000000u)
#define CSL_VENC_VMOD_ITLCL_263NTSC_313PAL (0x00000001u)

#define CSL_VENC_VMOD_ITLC_MASK          (0x00000400u)
#define CSL_VENC_VMOD_ITLC_SHIFT         (0x0000000Au)
#define CSL_VENC_VMOD_ITLC_RESETVAL      (0x00000000u)

/*----ITLC Tokens----*/
#define CSL_VENC_VMOD_ITLC_INTERLACE     (0x00000000u)
#define CSL_VENC_VMOD_ITLC_NON_INTERLACE (0x00000001u)

#define CSL_VENC_VMOD_NSIT_MASK          (0x00000200u)
#define CSL_VENC_VMOD_NSIT_SHIFT         (0x00000009u)
#define CSL_VENC_VMOD_NSIT_RESETVAL      (0x00000000u)

/*----NSIT Tokens----*/
#define CSL_VENC_VMOD_NSIT_PROGRESSIVE   (0x00000000u)
#define CSL_VENC_VMOD_NSIT_INTERLACE     (0x00000001u)

#define CSL_VENC_VMOD_HDMD_MASK          (0x00000100u)
#define CSL_VENC_VMOD_HDMD_SHIFT         (0x00000008u)
#define CSL_VENC_VMOD_HDMD_RESETVAL      (0x00000000u)

/*----HDMD Tokens----*/
#define CSL_VENC_VMOD_HDMD_SDTV          (0x00000000u)
#define CSL_VENC_VMOD_HDMD_HDTV          (0x00000001u)

#define CSL_VENC_VMOD_TYTYP_MASK         (0x000000C0u)
#define CSL_VENC_VMOD_TYTYP_SHIFT        (0x00000006u)
#define CSL_VENC_VMOD_TYTYP_RESETVAL     (0x00000000u)

/*----TYTYP Tokens----*/
#define CSL_VENC_VMOD_TYTYP_SDTV_NTSC    (0x00000000u)
#define CSL_VENC_VMOD_TYTYP_SDTV_PAL     (0x00000001u)
#define CSL_VENC_VMOD_TYTYP_SDTV_RESERVEDS1 (0x00000002u)
#define CSL_VENC_VMOD_TYTYP_SDTV_RESERVEDS2 (0x00000003u)
#define CSL_VENC_VMOD_TYTYP_HDTV_525P    (0x00000000u)
#define CSL_VENC_VMOD_TYTYP_HDTV_625P    (0x00000001u)
#define CSL_VENC_VMOD_TYTYP_HDTV_RESERVEDH1 (0x00000002u)
#define CSL_VENC_VMOD_TYTYP_HDTV_RESERVEDH2 (0x00000003u)

#define CSL_VENC_VMOD_SLAVE_MASK         (0x00000020u)
#define CSL_VENC_VMOD_SLAVE_SHIFT        (0x00000005u)
#define CSL_VENC_VMOD_SLAVE_RESETVAL     (0x00000000u)

/*----SLAVE Tokens----*/
#define CSL_VENC_VMOD_SLAVE_MASTERMODE   (0x00000000u)
#define CSL_VENC_VMOD_SLAVE_SLAVEMODE    (0x00000001u)

#define CSL_VENC_VMOD_VMD_MASK           (0x00000010u)
#define CSL_VENC_VMOD_VMD_SHIFT          (0x00000004u)
#define CSL_VENC_VMOD_VMD_RESETVAL       (0x00000000u)

/*----VMD Tokens----*/
#define CSL_VENC_VMOD_VMD_NTSC_PALTIMING (0x00000000u)
#define CSL_VENC_VMOD_VMD_NOTNTSC_PALTIMING (0x00000001u)

#define CSL_VENC_VMOD_BLNK_MASK          (0x00000008u)
#define CSL_VENC_VMOD_BLNK_SHIFT         (0x00000003u)
#define CSL_VENC_VMOD_BLNK_RESETVAL      (0x00000000u)

/*----BLNK Tokens----*/
#define CSL_VENC_VMOD_BLNK_NORMAL        (0x00000000u)
#define CSL_VENC_VMOD_BLNK_FORCEBLANKING (0x00000001u)

#define CSL_VENC_VMOD_VIE_MASK           (0x00000002u)
#define CSL_VENC_VMOD_VIE_SHIFT          (0x00000001u)
#define CSL_VENC_VMOD_VIE_RESETVAL       (0x00000000u)

/*----VIE Tokens----*/
#define CSL_VENC_VMOD_VIE_FIXED_L_LEVEL_OUT (0x00000000u)
#define CSL_VENC_VMOD_VIE_NORMAL_COMPOSITE_OUT (0x00000001u)

#define CSL_VENC_VMOD_VENC_MASK          (0x00000001u)
#define CSL_VENC_VMOD_VENC_SHIFT         (0x00000000u)
#define CSL_VENC_VMOD_VENC_RESETVAL      (0x00000000u)

/*----VENC Tokens----*/
#define CSL_VENC_VMOD_VENC_DISABLE       (0x00000000u)
#define CSL_VENC_VMOD_VENC_ENABLE        (0x00000001u)

#define CSL_VENC_VMOD_RESETVAL           (0x00000000u)

/* VIDCTL */

#define CSL_VENC_VIDCTL_VCLKP_MASK       (0x00004000u)
#define CSL_VENC_VIDCTL_VCLKP_SHIFT      (0x0000000Eu)
#define CSL_VENC_VIDCTL_VCLKP_RESETVAL   (0x00000000u)

/*----VCLKP Tokens----*/
#define CSL_VENC_VIDCTL_VCLKP_NON_INVERSE (0x00000000u)
#define CSL_VENC_VIDCTL_VCLKP_INVERSE    (0x00000001u)

#define CSL_VENC_VIDCTL_VCLKE_MASK       (0x00002000u)
#define CSL_VENC_VIDCTL_VCLKE_SHIFT      (0x0000000Du)
#define CSL_VENC_VIDCTL_VCLKE_RESETVAL   (0x00000000u)

/*----VCLKE Tokens----*/
#define CSL_VENC_VIDCTL_VCLKE_OFF        (0x00000000u)
#define CSL_VENC_VIDCTL_VCLKE_ON         (0x00000001u)

#define CSL_VENC_VIDCTL_VCLKZ_MASK       (0x00001000u)
#define CSL_VENC_VIDCTL_VCLKZ_SHIFT      (0x0000000Cu)
#define CSL_VENC_VIDCTL_VCLKZ_RESETVAL   (0x00000001u)

/*----VCLKZ Tokens----*/
#define CSL_VENC_VIDCTL_VCLKZ_OUTPUT     (0x00000000u)
#define CSL_VENC_VIDCTL_VCLKZ_HIGHIMPEDENCE (0x00000001u)

#define CSL_VENC_VIDCTL_SYDIR_MASK       (0x00000100u)
#define CSL_VENC_VIDCTL_SYDIR_SHIFT      (0x00000008u)
#define CSL_VENC_VIDCTL_SYDIR_RESETVAL   (0x00000001u)

/*----SYDIR Tokens----*/
#define CSL_VENC_VIDCTL_SYDIR_OUTPUT     (0x00000000u)
#define CSL_VENC_VIDCTL_SYDIR_INPUT      (0x00000001u)

#define CSL_VENC_VIDCTL_DOMD_MASK        (0x00000030u)
#define CSL_VENC_VIDCTL_DOMD_SHIFT       (0x00000004u)
#define CSL_VENC_VIDCTL_DOMD_RESETVAL    (0x00000000u)

/*----DOMD Tokens----*/
#define CSL_VENC_VIDCTL_DOMD_NORMAL_OUT  (0x00000000u)
#define CSL_VENC_VIDCTL_DOMD_INVERSE_OUT (0x00000001u)
#define CSL_VENC_VIDCTL_DOMD_L_LEVEL_OUT (0x00000002u)
#define CSL_VENC_VIDCTL_DOMD_H_LEVEL_OUT (0x00000003u)

#define CSL_VENC_VIDCTL_YCSWAP_MASK      (0x00000008u)
#define CSL_VENC_VIDCTL_YCSWAP_SHIFT     (0x00000003u)
#define CSL_VENC_VIDCTL_YCSWAP_RESETVAL  (0x00000000u)

/*----YCSWAP Tokens----*/
#define CSL_VENC_VIDCTL_YCSWAP_NORMAL    (0x00000000u)
#define CSL_VENC_VIDCTL_YCSWAP_SWAP_YC   (0x00000001u)

#define CSL_VENC_VIDCTL_YCOL_MASK        (0x00000004u)
#define CSL_VENC_VIDCTL_YCOL_SHIFT       (0x00000002u)
#define CSL_VENC_VIDCTL_YCOL_RESETVAL    (0x00000000u)

/*----YCOL Tokens----*/
#define CSL_VENC_VIDCTL_YCOL_NORMAL_OUT  (0x00000000u)
#define CSL_VENC_VIDCTL_YCOL_DCLEVEL_OUT (0x00000001u)

#define CSL_VENC_VIDCTL_YCOMD_MASK       (0x00000002u)
#define CSL_VENC_VIDCTL_YCOMD_SHIFT      (0x00000001u)
#define CSL_VENC_VIDCTL_YCOMD_RESETVAL   (0x00000000u)

/*----YCOMD Tokens----*/
#define CSL_VENC_VIDCTL_YCOMD_DIGITAL_VIDEO_OUT (0x00000000u)
#define CSL_VENC_VIDCTL_YCOMD_YC_INPUT_PASSTHRU (0x00000001u)

#define CSL_VENC_VIDCTL_YCDIR_MASK       (0x00000001u)
#define CSL_VENC_VIDCTL_YCDIR_SHIFT      (0x00000000u)
#define CSL_VENC_VIDCTL_YCDIR_RESETVAL   (0x00000001u)

/*----YCDIR Tokens----*/
#define CSL_VENC_VIDCTL_YCDIR_OUTPUT     (0x00000000u)
#define CSL_VENC_VIDCTL_YCDIR_INPUT      (0x00000001u)

#define CSL_VENC_VIDCTL_RESETVAL         (0x00001101u)

/* VDPRO */

#define CSL_VENC_VDPRO_PFLTC_MASK        (0x0000C000u)
#define CSL_VENC_VDPRO_PFLTC_SHIFT       (0x0000000Eu)
#define CSL_VENC_VDPRO_PFLTC_RESETVAL    (0x00000000u)

/*----PFLTC Tokens----*/
#define CSL_VENC_VDPRO_PFLTC_NOFILTER    (0x00000000u)
#define CSL_VENC_VDPRO_PFLTC_1_1         (0x00000001u)
#define CSL_VENC_VDPRO_PFLTC_1_2_1       (0x00000002u)
#define CSL_VENC_VDPRO_PFLTC_RESERVED    (0x00000003u)

#define CSL_VENC_VDPRO_PFLTY_MASK        (0x00003000u)
#define CSL_VENC_VDPRO_PFLTY_SHIFT       (0x0000000Cu)
#define CSL_VENC_VDPRO_PFLTY_RESETVAL    (0x00000000u)

/*----PFLTY Tokens----*/
#define CSL_VENC_VDPRO_PFLTY_NOFILTER    (0x00000000u)
#define CSL_VENC_VDPRO_PFLTY_1_1         (0x00000001u)
#define CSL_VENC_VDPRO_PFLTY_1_2_1       (0x00000002u)
#define CSL_VENC_VDPRO_PFLTY_RESERVED    (0x00000003u)

#define CSL_VENC_VDPRO_PFLTR_MASK        (0x00000800u)
#define CSL_VENC_VDPRO_PFLTR_SHIFT       (0x0000000Bu)
#define CSL_VENC_VDPRO_PFLTR_RESETVAL    (0x00000000u)

/*----PFLTR Tokens----*/
#define CSL_VENC_VDPRO_PFLTR_ENCCLOCK_2  (0x00000000u)
#define CSL_VENC_VDPRO_PFLTR_ENCCLOCK    (0x00000001u)

#define CSL_VENC_VDPRO_CBTYP_MASK        (0x00000200u)
#define CSL_VENC_VDPRO_CBTYP_SHIFT       (0x00000009u)
#define CSL_VENC_VDPRO_CBTYP_RESETVAL    (0x00000000u)

/*----CBTYP Tokens----*/
#define CSL_VENC_VDPRO_CBTYP_75PCT       (0x00000000u)
#define CSL_VENC_VDPRO_CBTYP_100PCT      (0x00000001u)

#define CSL_VENC_VDPRO_CBMD_MASK         (0x00000100u)
#define CSL_VENC_VDPRO_CBMD_SHIFT        (0x00000008u)
#define CSL_VENC_VDPRO_CBMD_RESETVAL     (0x00000000u)

/*----CBMD Tokens----*/
#define CSL_VENC_VDPRO_CBMD_NORMAL       (0x00000000u)
#define CSL_VENC_VDPRO_CBMD_COLORBAR     (0x00000001u)

#define CSL_VENC_VDPRO_ATRGB_MASK        (0x00000040u)
#define CSL_VENC_VDPRO_ATRGB_SHIFT       (0x00000006u)
#define CSL_VENC_VDPRO_ATRGB_RESETVAL    (0x00000000u)

/*----ATRGB Tokens----*/
#define CSL_VENC_VDPRO_ATRGB_NOATTENUATION (0x00000000u)
#define CSL_VENC_VDPRO_ATRGB_REC601_LVL  (0x00000001u)

#define CSL_VENC_VDPRO_ATYCC_MASK        (0x00000020u)
#define CSL_VENC_VDPRO_ATYCC_SHIFT       (0x00000005u)
#define CSL_VENC_VDPRO_ATYCC_RESETVAL    (0x00000000u)

/*----ATYCC Tokens----*/

⌨️ 快捷键说明

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