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

📄 tvpsundialmem.h

📁 ti的数字电视芯片 tvp9000的源码
💻 H
📖 第 1 页 / 共 2 页
字号:
/***************************************************************************** 
*    Property of Texas Instruments Incorporated, Copyright 2004
*    All rights reserved
******************************************************************************/
/*********************************************************************
*
* Description:
*  TvpSundialMem.h contains private declarations related to the Sundial 
*  module that are shared by both RTSL and FW.
*  
*  Contents:
*      Memory definitions
*      Control structures
*   
**********************************************************************/
/*********************************************************************
*
* $Revision: $
*
* $History: TvpSundialMem.h $
* 
*********************************************************************/
#ifndef TVP_SUNDIAL_MEM_DOT_H_IS_DEFINED
#define TVP_SUNDIAL_MEM_DOT_H_IS_DEFINED

/*******************************************************************************
*                         Sundial Memory Map                                   *
*******************************************************************************/

/*************************************************/
/*  PES PARSER Memory Map                        */
/*************************************************/
#define TVP_PP_IRQ_STAT		(volatile unsigned long*)(TVP_PS_BASE+0x0)  // 0x110000
#define TVP_PP_IRQ_MASK		(volatile unsigned long*)(TVP_PS_BASE+0x1)  // 0x110004
#define TVP_PP_CTRL    		(volatile unsigned long*)(TVP_PS_BASE+0x2)  // 0x110008
#define TVP_PP_MPEG_AUDIO  (volatile unsigned long*)(TVP_PS_BASE+0x3)  // 0x11000c
#define TVP_PP_STC_REG 		(volatile unsigned long*)(TVP_PS_BASE+0x4)  // 0x110010
#define TVP_PP_WDOG_TIM		(volatile unsigned long*)(TVP_PS_BASE+0x5)  // 0x110014
#define TVP_PP_AUD_SYNC		(volatile unsigned long*)(TVP_PS_BASE+0x6)  // 0x110018
#define TVP_PP_GE_THRESH	(volatile unsigned long*)(TVP_PS_BASE+0x7)  // 0x11001c
#define TVP_PP_LE_THRESH	(volatile unsigned long*)(TVP_PS_BASE+0x8)  // 0x110020
#define TVP_PP_READ_PTR		(volatile unsigned long*)(TVP_PS_BASE+0x9)  // 0x110024
#define TVP_PP_WRITE_PTR	(volatile unsigned long*)(TVP_PS_BASE+0xa)  // 0x110028
#define TVP_PP_BUF_SIZE		(volatile unsigned long*)(TVP_PS_BASE+0xb)  // 0x11002c
#define TVP_PP_PTS_REG 		(volatile unsigned long*)(TVP_PS_BASE+0xc)  // 0x110030
#define TVP_PP_PTS_TMP 		(volatile unsigned long*)(TVP_PS_BASE+0xd)  // 0x110034
#define TVP_PP_PTS_INT 		(volatile unsigned long*)(TVP_PS_BASE+0xe)  // 0x110038
#define TVP_PP_PTS_PSTART  (volatile unsigned long*)(TVP_PS_BASE+0xf)  // 0x11003c

/*************************************************/
/*  Video Decoder Memory Map                     */
/*************************************************/
#define TVP_VD_IRQ_STAT		(volatile unsigned long*)(TVP_VD_BASE+0x1)  // 0x120004
#define TVP_VD_IRQ_MASK		(volatile unsigned long*)(TVP_VD_BASE+0x2)  // 0x120008
#define TVP_VD_ERROR   		(volatile unsigned long*)(TVP_VD_BASE+0x3)  // 0x12000c
#define TVP_VD_SEQ_SIZE		(volatile unsigned long*)(TVP_VD_BASE+0x4)  // 0x120010
#define TVP_VD_BIT_RATE		(volatile unsigned long*)(TVP_VD_BASE+0x5)  // 0x120014
#define TVP_VD_VBV_SIZE		(volatile unsigned long*)(TVP_VD_BASE+0x6)  // 0x120018
#define TVP_VD_SEQ_EXT 		(volatile unsigned long*)(TVP_VD_BASE+0x7)  // 0x12001c
#define TVP_VD_COLOR   		(volatile unsigned long*)(TVP_VD_BASE+0x8)  // 0x120020
#define TVP_VD_GOP     		(volatile unsigned long*)(TVP_VD_BASE+0x9)  // 0x120024
#define TVP_VD_TEMP_REF		(volatile unsigned long*)(TVP_VD_BASE+0xa)  // 0x120028
#define TVP_VD_FIELD_RPT	(volatile unsigned long*)(TVP_VD_BASE+0xb)  // 0x12002c
#define TVP_VD_DSPLY_EXT	(volatile unsigned long*)(TVP_VD_BASE+0xc)  // 0x120030

#define TVP_VD_SPLICE_CODE (volatile unsigned long*)(TVP_VD_BASE+0xf)  // 0x12003c
#define TVP_VD_MC_CTRL 		(volatile unsigned long*)(TVP_VD_BASE+0x10) // 0x120040

#define TVP_VD_MC_DATA 		(volatile unsigned long*)(TVP_VD_BASE+0x13) // 0x12004c
#define TVP_VD_MC_CHSUM		(volatile unsigned long*)(TVP_VD_BASE+0x14) // 0x120050
#define TVP_VD_CMD     		(volatile unsigned long*)(TVP_VD_BASE+0x15) // 0x120054

#define TVP_VD_HOST_REG    (volatile unsigned long*)(TVP_VD_BASE+0x18) // 0x120060
#define TVP_VC_CFG         (volatile unsigned long*)(TVP_VD_BASE+0x18) // 0x120060
#define TVP_VC_CATALOG     (volatile unsigned long*)(TVP_VD_BASE+0x19) // 0x120064
#define TVP_VC_TRICK1      (volatile unsigned long*)(TVP_VD_BASE+0x1a) // 0x120068
#define TVP_VC_TRICK2      (volatile unsigned long*)(TVP_VD_BASE+0x1b) // 0x12006c
#define TVP_VC_TRICK3      (volatile unsigned long*)(TVP_VD_BASE+0x1c) // 0x120070

#define TVP_VC_HINT_MODE   (volatile unsigned long*)(TVP_VD_BASE+0x1d) // 0x120074
#define TVP_VC_HINT_DATA   (volatile unsigned long*)(TVP_VD_BASE+0x1e) // 0x120078
#define TVP_VC_SYNC_WINDOW (volatile unsigned long*)(TVP_VD_BASE+0x1f) // 0x12007c

#define TVP_DP_COEFBASE_H  (volatile unsigned long*)(TVP_DP_BASE+0x0b) // 0x18002c
#define TVP_DP_COEFBASE_VY (volatile unsigned long*)(TVP_DP_BASE+0x0c) // 0x180030
#define TVP_DP_COEFBASE_VC (volatile unsigned long*)(TVP_DP_BASE+0x0d) // 0x180034

/*************************************************/
/*  Background Memory Map                        */
/*************************************************/
#define TVP_BG_CTRL			(volatile unsigned long*)(TVP_BG_BASE+0x0)  // 0x130000
#define TVP_BG_OFFSET  		(volatile unsigned long*)(TVP_BG_BASE+0x1)  // 0x130004
#define TVP_BG_GT_UPDATE	(volatile unsigned long*)(TVP_BG_BASE+0x2)  // 0x130008
#define TVP_BG_COLOR		   (volatile unsigned long*)(TVP_BG_BASE+0x3)  // 0x13000c
#define TVP_BG_VID_SIZE		(volatile unsigned long*)(TVP_BG_BASE+0x4)  // 0x130010
#define TVP_BG_DP_SIZE     (volatile unsigned long*)(TVP_BG_BASE+0x5)  // 0x130014

#define TVP_TB_DESCRIPT		(volatile unsigned long*)(TVP_BG_BASE+0x7)  // 0x13001c

/*************************************************/
/*  Memory Interface Memory Map                  */
/*************************************************/
#define TVP_MI_CTRL 	      (volatile unsigned long*)(TVP_MI_BASE+0x0)  // 0x100000        
#define TVP_MI_PRI0    		(volatile unsigned long*)(TVP_MI_BASE+0x1)  // 0x100004
#define TVP_MI_PRI1    		(volatile unsigned long*)(TVP_MI_BASE+0x2)  // 0x100008
#define TVP_MI_PRI2   		(volatile unsigned long*)(TVP_MI_BASE+0x3)  // 0x10000c
#define TVP_MI_PRI3		   (volatile unsigned long*)(TVP_MI_BASE+0x4)  // 0x100010
#define TVP_MI_STRT_INIT   (volatile unsigned long*)(TVP_MI_BASE+0x5)  // 0x100014
#define TVP_MI_ACK_CNT1   	(volatile unsigned long*)(TVP_MI_BASE+0x6)  // 0x100018
#define TVP_MI_ACK_CNT2   	(volatile unsigned long*)(TVP_MI_BASE+0x7)  // 0x10001c
#define TVP_MI_ACK_CNT3   	(volatile unsigned long*)(TVP_MI_BASE+0x8)  // 0x100020
#define TVP_MI_ACK_CNT4   	(volatile unsigned long*)(TVP_MI_BASE+0x9)  // 0x100024
#define TVP_MI_ACK_CNT5   	(volatile unsigned long*)(TVP_MI_BASE+0xa)  // 0x100028
#define TVP_MI_ACK_CNT6   	(volatile unsigned long*)(TVP_MI_BASE+0xb)  // 0x10002c
#define TVP_MI_ACK_CNT7   	(volatile unsigned long*)(TVP_MI_BASE+0xc)  // 0x100030
#define TVP_MI_ACK_CNT8   	(volatile unsigned long*)(TVP_MI_BASE+0xd)  // 0x100034
#define TVP_MI_ACK_CNT9   	(volatile unsigned long*)(TVP_MI_BASE+0xe)  // 0x100038
#define TVP_MI_ACK_CNT10  	(volatile unsigned long*)(TVP_MI_BASE+0xf)  // 0x10003c
#define TVP_MI_BASE_REG1   (volatile unsigned long*)(TVP_MI_BASE+0x10) // 0x100040
#define TVP_MI_BASE_REG2   (volatile unsigned long*)(TVP_MI_BASE+0x11) // 0x100044
#define TVP_MI_BASE_REG3   (volatile unsigned long*)(TVP_MI_BASE+0x12) // 0x100048
#define TVP_MI_BASE_REG4   (volatile unsigned long*)(TVP_MI_BASE+0x13) // 0x10004c

#define TVP_MI_BASE_REG6   (volatile unsigned long*)(TVP_MI_BASE+0x15) // 0x100054
#define TVP_MI_BASE_REG7   (volatile unsigned long*)(TVP_MI_BASE+0x16) // 0x100058

#define TVP_MI_BASE_REG9   (volatile unsigned long*)(TVP_MI_BASE+0x18) // 0x100060
#define TVP_MI_BASE_REG10  (volatile unsigned long*)(TVP_MI_BASE+0x19) // 0x100064
#define TVP_MI_BASE_REG11  (volatile unsigned long*)(TVP_MI_BASE+0x1a) // 0x100068
#define TVP_MI_BASE_REG12  (volatile unsigned long*)(TVP_MI_BASE+0x1b) // 0x10006c
#define TVP_MI_BASE_REG13  (volatile unsigned long*)(TVP_MI_BASE+0x1c) // 0x100070

/*************************************************/
/*  Audio Decoder Memory Map                     */
/*************************************************/
#define TVP_AD_DNLD_CRC    (volatile unsigned long*)(TVP_AD_BASE+0x0)  // 0x140000        
#define TVP_AD_IRQ_STAT  	(volatile unsigned long*)(TVP_AD_BASE+0x1)  // 0x140004        
#define TVP_AD_IRQ_MASK  	(volatile unsigned long*)(TVP_AD_BASE+0x2)  // 0x140008        
#define TVP_AD_MK_CTRL  	(volatile unsigned long*)(TVP_AD_BASE+0x3)  // 0x14000c        
#define TVP_AD_DNLD_CTRL 	(volatile unsigned long*)(TVP_AD_BASE+0x4)  // 0x140010        
#define TVP_AD_DNLD_DATA 	(volatile unsigned long*)(TVP_AD_BASE+0x5)  // 0x140014        
#define TVP_AD_MISC_CTRL 	(volatile unsigned long*)(TVP_AD_BASE+0x6)  // 0x140018        
#define TVP_AD_CHAN_SIZ  	(volatile unsigned long*)(TVP_AD_BASE+0x7)  // 0x14001c        
#define TVP_AD_AOC_CMD0  	(volatile unsigned long*)(TVP_AD_BASE+0x8)  // 0x140020        
#define TVP_AD_AOC_CMD1  	(volatile unsigned long*)(TVP_AD_BASE+0x9)  // 0x140024        
#define TVP_AD_AOC_CMD2  	(volatile unsigned long*)(TVP_AD_BASE+0xa)  // 0x140028        
#define TVP_AD_AOC_CMD3  	(volatile unsigned long*)(TVP_AD_BASE+0xb)  // 0x14002c        
#define TVP_AD_DSP_CMD0  	(volatile unsigned long*)(TVP_AD_BASE+0xc)  // 0x140030        
#define TVP_AD_DSP_CMD1  	(volatile unsigned long*)(TVP_AD_BASE+0xd)  // 0x140034        
#define TVP_AD_DSP_CMD2  	(volatile unsigned long*)(TVP_AD_BASE+0xe)  // 0x140038        
#define TVP_AD_DSP_CMD3  	(volatile unsigned long*)(TVP_AD_BASE+0xf)  // 0x14003c        

#define TVP_NUM_AUD_REGS   16

/*************************************************/
/*   EBI DMA Memory Map                          */
/*************************************************/
#define TVP_DM_CR          (volatile unsigned long*)(TVP_DMA_BASE+0x0)  // 0x160000        
#define TVP_DM_IRQ_STAT    (volatile unsigned long*)(TVP_DMA_BASE+0x1)  // 0x160004        
#define TVP_DM_IRQ_MASK    (volatile unsigned long*)(TVP_DMA_BASE+0x2)  // 0x160008        
#define TVP_DM_PIO_STAT    (volatile unsigned long*)(TVP_DMA_BASE+0x3)  // 0x16000c        
#define TVP_DM_PIO_DATA    (volatile unsigned long*)(TVP_DMA_BASE+0x4)  // 0x160010        

#define TVP_DM_CMD0_MSW    (volatile unsigned long*)(TVP_DMA_BASE+0x8)  // 0x160020        
#define TVP_DM_CMD0_ASW    (volatile unsigned long*)(TVP_DMA_BASE+0x9)  // 0x160024        
#define TVP_DM_CMD0_LSW    (volatile unsigned long*)(TVP_DMA_BASE+0xa)  // 0x160028        

#define TVP_DM_CMD1_MSW    (volatile unsigned long*)(TVP_DMA_BASE+0xb)  // 0x16002c        
#define TVP_DM_CMD1_ASW    (volatile unsigned long*)(TVP_DMA_BASE+0xc)  // 0x160030        
#define TVP_DM_CMD1_LSW    (volatile unsigned long*)(TVP_DMA_BASE+0xd)  // 0x160034        

#define TVP_DM_CMD2_MSW    (volatile unsigned long*)(TVP_DMA_BASE+0xe)  // 0x160038        
#define TVP_DM_CMD2_ASW    (volatile unsigned long*)(TVP_DMA_BASE+0xf)  // 0x16003c        
#define TVP_DM_CMD2_LSW    (volatile unsigned long*)(TVP_DMA_BASE+0x10) // 0x160040        

#define TVP_DM_CMD3_MSW    (volatile unsigned long*)(TVP_DMA_BASE+0x11) // 0x160044        
#define TVP_DM_CMD3_ASW    (volatile unsigned long*)(TVP_DMA_BASE+0x12) // 0x160048        
#define TVP_DM_CMD3_LSW    (volatile unsigned long*)(TVP_DMA_BASE+0x13) // 0x16004c        

/*-----------------------------------------------**  
**       PP_IRQ bit definitions                  **
**-----------------------------------------------*/
#define TVP_PP_IRQ_MASK_ALL                0xFFFFFFFF  
#define TVP_PP_CAB_LE                      ((unsigned long) 1<<0 ) 
#define TVP_PP_CAB_GE                      ((unsigned long) 1<<1 ) 
#define TVP_PP_CAB_FULL                    ((unsigned long) 1<<2 ) 
#define TVP_PP_CAB_EMPTY                   ((unsigned long) 1<<3 ) 
#define TVP_PP_CVB_LE                      ((unsigned long) 1<<4 ) 
#define TVP_PP_CVB_GE                      ((unsigned long) 1<<5 ) 
#define TVP_PP_CVB_FULL                    ((unsigned long) 1<<6 ) 
#define TVP_PP_CVB_EMPTY                   ((unsigned long) 1<<7 ) 
#define TVP_PP_USER_DATA_RECEIVED          ((unsigned long) 1<<20)
#define TVP_PP_USER_DATA_HALF_FULL         ((unsigned long) 1<<21)
#define TVP_PP_USER_DATA_FULL              ((unsigned long) 1<<22)
#define TVP_PP_WDOG                        ((unsigned long) 1<<23) 
#define TVP_PP_AUDIO_SYNC_LOSS             ((unsigned long) 1<<24) 
#define TVP_PP_AUDIO_SYNC_FOUND            ((unsigned long) 1<<25) 

/*************************************************/
/*   PP_CTRL bit definitions                     */
/*************************************************/
#define TVP_PP_CTRL_SCR_SYNC     			0
#define TVP_PP_CTRL_VID_PTS_SYNC 			0x8
#define TVP_PP_CTRL_AUD_PTS_SYNC     		0x10
#define TVP_PP_CTRL_SYNC_MASK             0x18

#define TVP_PP_CTRL_SCR_AUTO_UPDATE			0x20
#define TVP_PP_CTRL_NO_32_BIT				   0x40

#define TVP_PP_CTRL_MASTER_PTS_DELAY_CLEAR	0x780
#define TVP_PP_CTRL_MASTER_PTS_DELAY_STC     0
#define TVP_PP_CTRL_MASTER_PTS_DELAY_AUD     3
#define TVP_PP_CTRL_MASTER_PTS_DELAY_VID     7
#define TVP_PP_CTRL_MASTER_PTS_DELAY_SHIFT	7


#define TVP_PP_CTRL_ENABLE_PTS_SYNC			0x800
#define TVP_PP_CTRL_PP_ENABLE				   0x1000

#define TVP_PP_CTRL_USER_PICTURE			   0x80000
#define TVP_PP_CTRL_USER_GOP				   0x100000
#define TVP_PP_CTRL_USER_SEQ				   0x200000
#define TVP_PP_CTRL_USER_CLEAR				0x380000

#define TVP_PP_CTRL_NON_MPEG_AUDIO			0x400000

#define TVP_PP_CTRL_UNUSED_DISABLE        0x01800000
#define TVP_PP_CTRL_VID_DISABLE				0x02000000
#define TVP_PP_CTRL_AUD_DISABLE				0x04000000

#define TVP_PP_CTRL_VID_REGISTERS			0x08000000
#define TVP_PP_CTRL_AUD_REGISTERS			0x10000000
#define TVP_PP_CTRL_USER_REGISTERS			0x20000000
#define TVP_PP_CTRL_SPDIF_REGISTERS			0x28000000
#define TVP_PP_CTRL_MASTER_REGISTERS		0x30000000
#define TVP_PP_CTRL_REGISTERS_MASK        0x38000000

#define TVP_PP_WDOG_VALUE                 50

/*--------------------------**
** BG Control Register Bits **
**--------------------------*/
#define TVP_BG_CTRL_GT_WC_MASK            0xff
#define TVP_BG_CTRL_GT_WC_SHIFT           0
#define TVP_BG_CTRL_GT_ADDR_MASK          0xff
#define TVP_BG_CTRL_GT_ADDR_SHIFT         8

#define TVP_BG_CTRL_LD_CHROMA             0x10000
#define TVP_BG_CTRL_LD_Y                  0x20000

#define TVP_BG_CTRL_MODE_VID_ON_COLOR     0
#define TVP_BG_CTRL_MODE_COLOR_ONLY       0x40000
#define TVP_BG_CTRL_MODE_MASK             0xc0000

#define TVP_BG_CTRL_601_SAT               0x4000000

#define TVP_BG_CTRL_EN                    0x8000000

#define TVP_BG_SIZE_MASK                  0xfff
#define TVP_BG_HORIZ_SHIFT                12
#define TVP_BG_VERT_SHIFT                 0
#define TVP_BG_WIDTH_SHIFT                12
#define TVP_BG_HEIGHT_SHIFT               0

/*----------------------------------------**
** Audio Decoder Register Bit Definitions **
**----------------------------------------*/
#define TVP_AUD_DNLD_ENABLE               0x1
#define TVP_AUD_DNLD_COEFF                0x2
#define TVP_AUD_UCODE_VALID               0x4
#define TVP_AUD_COEF_VALID                0x8

/*-----------------------------------------------------**
** AD FIQ Interrupt Mask / Status Register Definitions **
**-----------------------------------------------------*/
#define TVP_AD_ANC_DATA                   0x1
//#define TVP_AD_FRAME_INT                  0x2
//#define TVP_AD_DSPCORE_INT                0x4
//#define TVP_AD_WAKEUP                     0x8

// PG2.0 changed definitions
#define TVP_AD_PCM_BUFFER_MEMORY          0x2
#define TVP_AD_FSCOD_CHANGE               0x4
#define TVP_AD_ACMOD_CHANGE               0x8
#define TVP_AD_DSURMOD_CHANGE             0x10
#define TVP_AD_LFEON_CHANGE               0x20
#define TVP_AD_FRAME_INT                  0x10000
#define TVP_AD_WAKEUP                     0x20000

/*-------------------------------------**
** AD_MK_STRL Register Bit Definitions **
**-------------------------------------*/
#define TVP_AD_MK_EN                      0x1
#define TVP_AD_MK_LSB_FIRST               0x2
#define TVP_AD_MK_16_TICKS                0x4
#define TVP_AD_MK_LEFT_LOW                0x8
#define TVP_AD_MK_BCLK_FALL               0x10

#define TVP_AD_MK_CTRL_LSB_SHIFT          1
#define TVP_AD_MK_CTRL_16_TICKS_SHIFT     2
#define TVP_AD_MK_CTRL_LEFT_LOW_SHIFT     3
#define TVP_AD_MK_CTRL_BCLK_EDGE_SHIFT    4
#define TVP_AD_MK_CTRL_START_CYCLE_SHIFT  5

/*--------------------------------------**
** AD_CHAN_SIZ Register Bit Definitions **
**--------------------------------------*/
#define TVP_AD_MIC_SIZE_SHIFT             10      // mk_buf_siz position 

/*---------------------------------------**
** AD_MISC_CTRL Register Bit Definitions **
**---------------------------------------*/
#define TVP_AUD_STARTD                    0x1

⌨️ 快捷键说明

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