/*
 *  Driver for the Conexant CX25821 PCIe bridge
 *
 *  Copyright (C) 2009 Conexant Systems Inc.
 *  Authors  <shu.lin@conexant.com>, <hiep.huynh@conexant.com>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

#ifndef __MEDUSA_REGISTERS__
#define __MEDUSA_REGISTERS__

// Serial Slave Registers
#define	HOST_REGISTER1				0x0000
#define	HOST_REGISTER2				0x0001

// Chip Configuration Registers
#define	CHIP_CTRL					0x0100
#define	AFE_AB_CTRL					0x0104
#define	AFE_CD_CTRL					0x0108
#define	AFE_EF_CTRL					0x010C
#define	AFE_GH_CTRL					0x0110
#define	DENC_AB_CTRL				0x0114
#define	BYP_AB_CTRL					0x0118
#define	MON_A_CTRL					0x011C
#define	DISP_SEQ_A					0x0120
#define	DISP_SEQ_B					0x0124
#define	DISP_AB_CNT					0x0128
#define	DISP_CD_CNT					0x012C
#define	DISP_EF_CNT					0x0130
#define	DISP_GH_CNT					0x0134
#define	DISP_IJ_CNT					0x0138
#define	PIN_OE_CTRL					0x013C
#define	PIN_SPD_CTRL				0x0140
#define	PIN_SPD_CTRL2				0x0144
#define	IRQ_STAT_CTRL				0x0148
#define	POWER_CTRL_AB				0x014C
#define	POWER_CTRL_CD				0x0150
#define	POWER_CTRL_EF				0x0154
#define	POWER_CTRL_GH				0x0158
#define	TUNE_CTRL					0x015C
#define	BIAS_CTRL					0x0160
#define	AFE_AB_DIAG_CTRL			0x0164
#define	AFE_CD_DIAG_CTRL			0x0168
#define	AFE_EF_DIAG_CTRL			0x016C
#define	AFE_GH_DIAG_CTRL			0x0170
#define	PLL_AB_DIAG_CTRL			0x0174
#define	PLL_CD_DIAG_CTRL			0x0178
#define	PLL_EF_DIAG_CTRL			0x017C
#define	PLL_GH_DIAG_CTRL			0x0180
#define	TEST_CTRL					0x0184
#define	BIST_STAT					0x0188
#define	BIST_STAT2					0x018C
#define	BIST_VID_PLL_AB_STAT		0x0190
#define	BIST_VID_PLL_CD_STAT		0x0194
#define	BIST_VID_PLL_EF_STAT		0x0198
#define	BIST_VID_PLL_GH_STAT		0x019C
#define	DLL_DIAG_CTRL				0x01A0
#define	DEV_CH_ID_CTRL				0x01A4
#define	ABIST_CTRL_STATUS			0x01A8
#define	ABIST_FREQ					0x01AC
#define	ABIST_GOERT_SHIFT			0x01B0
#define	ABIST_COEF12				0x01B4
#define	ABIST_COEF34				0x01B8
#define	ABIST_COEF56				0x01BC
#define	ABIST_COEF7_SNR				0x01C0
#define	ABIST_ADC_CAL				0x01C4
#define	ABIST_BIN1_VGA0				0x01C8
#define	ABIST_BIN2_VGA1				0x01CC
#define	ABIST_BIN3_VGA2				0x01D0
#define	ABIST_BIN4_VGA3				0x01D4
#define	ABIST_BIN5_VGA4				0x01D8
#define	ABIST_BIN6_VGA5				0x01DC
#define	ABIST_BIN7_VGA6				0x0x1E0
#define	ABIST_CLAMP_A				0x0x1E4
#define	ABIST_CLAMP_B				0x0x1E8
#define	ABIST_CLAMP_C				0x01EC
#define	ABIST_CLAMP_D				0x01F0
#define	ABIST_CLAMP_E				0x01F4
#define	ABIST_CLAMP_F				0x01F8

//              Digital Video Encoder A Registers
#define	DENC_A_REG_1					0x0200
#define	DENC_A_REG_2					0x0204
#define	DENC_A_REG_3					0x0208
#define	DENC_A_REG_4					0x020C
#define	DENC_A_REG_5					0x0210
#define	DENC_A_REG_6					0x0214
#define	DENC_A_REG_7					0x0218
#define	DENC_A_REG_8					0x021C

//      Digital Video Encoder B Registers
#define	DENC_B_REG_1					0x0300
#define	DENC_B_REG_2					0x0304
#define	DENC_B_REG_3					0x0308
#define	DENC_B_REG_4					0x030C
#define	DENC_B_REG_5					0x0310
#define	DENC_B_REG_6					0x0314
#define	DENC_B_REG_7					0x0318
#define	DENC_B_REG_8					0x031C

//              Video Decoder A Registers
#define	MODE_CTRL						0x1000
#define	OUT_CTRL1						0x1004
#define	OUT_CTRL_NS						0x1008
#define	GEN_STAT						0x100C
#define	INT_STAT_MASK					0x1010
#define	LUMA_CTRL						0x1014
#define	CHROMA_CTRL						0x1018
#define	CRUSH_CTRL						0x101C
#define	HORIZ_TIM_CTRL					0x1020
#define	VERT_TIM_CTRL					0x1024
#define	MISC_TIM_CTRL					0x1028
#define	FIELD_COUNT						0x102C
#define	HSCALE_CTRL						0x1030
#define	VSCALE_CTRL						0x1034
#define	MAN_VGA_CTRL					0x1038
#define	MAN_AGC_CTRL					0x103C
#define	DFE_CTRL1						0x1040
#define	DFE_CTRL2						0x1044
#define	DFE_CTRL3						0x1048
#define	PLL_CTRL						0x104C
#define	PLL_CTRL_FAST					0x1050
#define	HTL_CTRL						0x1054
#define	SRC_CFG							0x1058
#define	SC_STEP_SIZE					0x105C
#define	SC_CONVERGE_CTRL				0x1060
#define	SC_LOOP_CTRL					0x1064
#define	COMB_2D_HFS_CFG					0x1068
#define	COMB_2D_HFD_CFG					0x106C
#define	COMB_2D_LF_CFG					0x1070
#define	COMB_2D_BLEND					0x1074
#define	COMB_MISC_CTRL					0x1078
#define	COMB_FLAT_THRESH_CTRL			0x107C
#define	COMB_TEST						0x1080
#define	BP_MISC_CTRL					0x1084
#define	VCR_DET_CTRL					0x1088
#define	NOISE_DET_CTRL					0x108C
#define	COMB_FLAT_NOISE_CTRL			0x1090
#define	VERSION							0x11F8
#define	SOFT_RST_CTRL					0x11FC

//      Video Decoder B Registers
#define	VDEC_B_MODE_CTRL				0x1200
#define	VDEC_B_OUT_CTRL1				0x1204
#define	VDEC_B_OUT_CTRL_NS				0x1208
#define	VDEC_B_GEN_STAT					0x120C
#define	VDEC_B_INT_STAT_MASK			0x1210
#define	VDEC_B_LUMA_CTRL				0x1214
#define	VDEC_B_CHROMA_CTRL				0x1218
#define	VDEC_B_CRUSH_CTRL				0x121C
#define	VDEC_B_HORIZ_TIM_CTRL			0x1220
#define	VDEC_B_VERT_TIM_CTRL			0x1224
#define	VDEC_B_MISC_TIM_CTRL			0x1228
#define	VDEC_B_FIELD_COUNT				0x122C
#define	VDEC_B_HSCALE_CTRL				0x1230
#define	VDEC_B_VSCALE_CTRL				0x1234
#define	VDEC_B_MAN_VGA_CTRL				0x1238
#define	VDEC_B_MAN_AGC_CTRL				0x123C
#define	VDEC_B_DFE_CTRL1				0x1240
#define	VDEC_B_DFE_CTRL2				0x1244
#define	VDEC_B_DFE_CTRL3				0x1248
#define	VDEC_B_PLL_CTRL					0x124C
#define	VDEC_B_PLL_CTRL_FAST			0x1250
#define	VDEC_B_HTL_CTRL					0x1254
#define	VDEC_B_SRC_CFG					0x1258
#define	VDEC_B_SC_STEP_SIZE				0x125C
#define	VDEC_B_SC_CONVERGE_CTRL			0x1260
#define	VDEC_B_SC_LOOP_CTRL				0x1264
#define	VDEC_B_COMB_2D_HFS_CFG			0x1268
#define	VDEC_B_COMB_2D_HFD_CFG			0x126C
#define	VDEC_B_COMB_2D_LF_CFG			0x1270
#define	VDEC_B_COMB_2D_BLEND			0x1274
#define	VDEC_B_COMB_MISC_CTRL			0x1278
#define	VDEC_B_COMB_FLAT_THRESH_CTRL	0x127C
#define	VDEC_B_COMB_TEST				0x1280
#define	VDEC_B_BP_MISC_CTRL				0x1284
#define	VDEC_B_VCR_DET_CTRL				0x1288
#define	VDEC_B_NOISE_DET_CTRL			0x128C
#define	VDEC_B_COMB_FLAT_NOISE_CTRL		0x1290
#define	VDEC_B_VERSION					0x13F8
#define	VDEC_B_SOFT_RST_CTRL			0x13FC

// Video Decoder C Registers
#define	VDEC_C_MODE_CTRL				0x1400
#define	VDEC_C_OUT_CTRL1				0x1404
#define	VDEC_C_OUT_CTRL_NS				0x1408
#define	VDEC_C_GEN_STAT					0x140C
#define	VDEC_C_INT_STAT_MASK			0x1410
#define VDEC_C_LUMA_CTRL				0x1414
#define VDEC_C_CHROMA_CTRL				0x1418
#define	VDEC_C_CRUSH_CTRL				0x141C
#define	VDEC_C_HORIZ_TIM_CTRL			0x1420
#define	VDEC_C_VERT_TIM_CTRL			0x1424
#define	VDEC_C_MISC_TIM_CTRL			0x1428
#define	VDEC_C_FIELD_COUNT				0x142C
#define	VDEC_C_HSCALE_CTRL				0x1430
#define	VDEC_C_VSCALE_CTRL				0x1434
#define	VDEC_C_MAN_VGA_CTRL				0x1438
#define	VDEC_C_MAN_AGC_CTRL				0x143C
#define	VDEC_C_DFE_CTRL1				0x1440
#define	VDEC_C_DFE_CTRL2				0x1444
#define	VDEC_C_DFE_CTRL3				0x1448
#define	VDEC_C_PLL_CTRL					0x144C
#define	VDEC_C_PLL_CTRL_FAST			0x1450
#define	VDEC_C_HTL_CTRL					0x1454
#define	VDEC_C_SRC_CFG					0x1458
#define	VDEC_C_SC_STEP_SIZE				0x145C
#define	VDEC_C_SC_CONVERGE_CTRL			0x1460
#define	VDEC_C_SC_LOOP_CTRL				0x1464
#define	VDEC_C_COMB_2D_HFS_CFG			0x1468
#define	VDEC_C_COMB_2D_HFD_CFG			0x146C
#define	VDEC_C_COMB_2D_LF_CFG			0x1470
#define	VDEC_C_COMB_2D_BLEND			0x1474
#define	VDEC_C_COMB_MISC_CTRL			0x1478
#define	VDEC_C_COMB_FLAT_THRESH_CTRL	0x147C
#define	VDEC_C_COMB_TEST				0x1480
#define	VDEC_C_BP_MISC_CTRL				0x1484
#define	VDEC_C_VCR_DET_CTRL				0x1488
#define	VDEC_C_NOISE_DET_CTRL			0x148C
#define	VDEC_C_COMB_FLAT_NOISE_CTRL		0x1490
#define	VDEC_C_VERSION					0x15F8
#define	VDEC_C_SOFT_RST_CTRL			0x15FC

// Video Decoder D Registers
#define VDEC_D_MODE_CTRL				0x1600
#define VDEC_D_OUT_CTRL1				0x1604
#define VDEC_D_OUT_CTRL_NS				0x1608
#define VDEC_D_GEN_STAT					0x160C
#define VDEC_D_INT_STAT_MASK			0x1610
#define VDEC_D_LUMA_CTRL				0x1614
#define VDEC_D_CHROMA_CTRL				0x1618
#define VDEC_D_CRUSH_CTRL				0x161C
#define VDEC_D_HORIZ_TIM_CTRL			0x1620
#define VDEC_D_VERT_TIM_CTRL			0x1624
#define VDEC_D_MISC_TIM_CTRL			0x1628
#define VDEC_D_FIELD_COUNT				0x162C
#define VDEC_D_HSCALE_CTRL				0x1630
#define VDEC_D_VSCALE_CTRL				0x1634
#define VDEC_D_MAN_VGA_CTRL				0x1638
#define VDEC_D_MAN_AGC_CTRL				0x163C
#define VDEC_D_DFE_CTRL1				0x1640
#define VDEC_D_DFE_CTRL2				0x1644
#define VDEC_D_DFE_CTRL3				0x1648
#define VDEC_D_PLL_CTRL					0x164C
#define VDEC_D_PLL_CTRL_FAST			0x1650
#define VDEC_D_HTL_CTRL					0x1654
#define VDEC_D_SRC_CFG					0x1658
#define VDEC_D_SC_STEP_SIZE				0x165C
#define VDEC_D_SC_CONVERGE_CTRL			0x1660
#define VDEC_D_SC_LOOP_CTRL				0x1664
#define VDEC_D_COMB_2D_HFS_CFG			0x1668
#define VDEC_D_COMB_2D_HFD_CFG			0x166C
#define VDEC_D_COMB_2D_LF_CFG			0x1670
#define VDEC_D_COMB_2D_BLEND			0x1674
#define VDEC_D_COMB_MISC_CTRL			0x1678
#define VDEC_D_COMB_FLAT_THRESH_CTRL	0x167C
#define VDEC_D_COMB_TEST				0x1680
#define VDEC_D_BP_MISC_CTRL				0x1684
#define VDEC_D_VCR_DET_CTRL				0x1688
#define VDEC_D_NOISE_DET_CTRL			0x168C
#define VDEC_D_COMB_FLAT_NOISE_CTRL		0x1690
#define VDEC_D_VERSION					0x17F8
#define VDEC_D_SOFT_RST_CTRL			0x17FC

// Video Decoder E Registers
#define	VDEC_E_MODE_CTRL				0x1800
#define	VDEC_E_OUT_CTRL1				0x1804
#define	VDEC_E_OUT_CTRL_NS				0x1808
#define	VDEC_E_GEN_STAT					0x180C
#define	VDEC_E_INT_STAT_MASK			0x1810
#define	VDEC_E_LUMA_CTRL				0x1814
#define	VDEC_E_CHROMA_CTRL				0x1818
#define	VDEC_E_CRUSH_CTRL				0x181C
#define	VDEC_E_HORIZ_TIM_CTRL			0x1820
#define	VDEC_E_VERT_TIM_CTRL			0x1824
#define	VDEC_E_MISC_TIM_CTRL			0x1828
#define	VDEC_E_FIELD_COUNT				0x182C
#define	VDEC_E_HSCALE_CTRL				0x1830
#define	VDEC_E_VSCALE_CTRL				0x1834
#define	VDEC_E_MAN_VGA_CTRL				0x1838
#define	VDEC_E_MAN_AGC_CTRL				0x183C
#define	VDEC_E_DFE_CTRL1				0x1840
#define	VDEC_E_DFE_CTRL2				0x1844
#define	VDEC_E_DFE_CTRL3				0x1848
#define	VDEC_E_PLL_CTRL					0x184C
#define	VDEC_E_PLL_CTRL_FAST			0x1850
#define	VDEC_E_HTL_CTRL					0x1854
#define	VDEC_E_SRC_CFG					0x1858
#define	VDEC_E_SC_STEP_SIZE				0x185C
#define	VDEC_E_SC_CONVERGE_CTRL			0x1860
#define	VDEC_E_SC_LOOP_CTRL				0x1864
#define	VDEC_E_COMB_2D_HFS_CFG			0x1868
#define	VDEC_E_COMB_2D_HFD_CFG			0x186C
#define	VDEC_E_COMB_2D_LF_CFG			0x1870
#define	VDEC_E_COMB_2D_BLEND			0x1874
#define	VDEC_E_COMB_MISC_CTRL			0x1878
#define	VDEC_E_COMB_FLAT_THRESH_CTRL	0x187C
#define	VDEC_E_COMB_TEST				0x1880
#define	VDEC_E_BP_MISC_CTRL				0x1884
#define	VDEC_E_VCR_DET_CTRL				0x1888
#define	VDEC_E_NOISE_DET_CTRL			0x188C
#define	VDEC_E_COMB_FLAT_NOISE_CTRL		0x1890
#define	VDEC_E_VERSION					0x19F8
#define	VDEC_E_SOFT_RST_CTRL			0x19FC

// Video Decoder F Registers
#define	VDEC_F_MODE_CTRL				0x1A00
#define	VDEC_F_OUT_CTRL1				0x1A04
#define	VDEC_F_OUT_CTRL_NS				0x1A08
#define	VDEC_F_GEN_STAT					0x1A0C
#define	VDEC_F_INT_STAT_MASK			0x1A10
#define	VDEC_F_LUMA_CTRL				0x1A14
#define	VDEC_F_CHROMA_CTRL				0x1A18
#define	VDEC_F_CRUSH_CTRL				0x1A1C
#define	VDEC_F_HORIZ_TIM_CTRL			0x1A20
#define	VDEC_F_VERT_TIM_CTRL			0x1A24
#define	VDEC_F_MISC_TIM_CTRL			0x1A28
#define	VDEC_F_FIELD_COUNT				0x1A2C
#define	VDEC_F_HSCALE_CTRL				0x1A30
#define	VDEC_F_VSCALE_CTRL				0x1A34
#define	VDEC_F_MAN_VGA_CTRL				0x1A38
#define	VDEC_F_MAN_AGC_CTRL				0x1A3C
#define	VDEC_F_DFE_CTRL1				0x1A40
#define	VDEC_F_DFE_CTRL2				0x1A44
#define	VDEC_F_DFE_CTRL3				0x1A48
#define	VDEC_F_PLL_CTRL					0x1A4C
#define	VDEC_F_PLL_CTRL_FAST			0x1A50
#define	VDEC_F_HTL_CTRL					0x1A54
#define	VDEC_F_SRC_CFG					0x1A58
#define	VDEC_F_SC_STEP_SIZE				0x1A5C
#define	VDEC_F_SC_CONVERGE_CTRL			0x1A60
#define	VDEC_F_SC_LOOP_CTRL				0x1A64
#define	VDEC_F_COMB_2D_HFS_CFG			0x1A68
#define	VDEC_F_COMB_2D_HFD_CFG			0x1A6C
#define	VDEC_F_COMB_2D_LF_CFG			0x1A70
#define	VDEC_F_COMB_2D_BLEND			0x1A74
#define	VDEC_F_COMB_MISC_CTRL			0x1A78
#define	VDEC_F_COMB_FLAT_THRESH_CTRL	0x1A7C
#define	VDEC_F_COMB_TEST				0x1A80
#define	VDEC_F_BP_MISC_CTRL				0x1A84
#define	VDEC_F_VCR_DET_CTRL				0x1A88
#define	VDEC_F_NOISE_DET_CTRL			0x1A8C
#define	VDEC_F_COMB_FLAT_NOISE_CTRL		0x1A90
#define	VDEC_F_VERSION					0x1BF8
#define	VDEC_F_SOFT_RST_CTRL			0x1BFC

// Video Decoder G Registers
#define	VDEC_G_MODE_CTRL				0x1C00
#define	VDEC_G_OUT_CTRL1				0x1C04
#define	VDEC_G_OUT_CTRL_NS				0x1C08
#define	VDEC_G_GEN_STAT					0x1C0C
#define	VDEC_G_INT_STAT_MASK			0x1C10
#define	VDEC_G_LUMA_CTRL				0x1C14
#define	VDEC_G_CHROMA_CTRL				0x1C18
#define	VDEC_G_CRUSH_CTRL				0x1C1C
#define	VDEC_G_HORIZ_TIM_CTRL			0x1C20
#define	VDEC_G_VERT_TIM_CTRL			0x1C24
#define	VDEC_G_MISC_TIM_CTRL			0x1C28
#define	VDEC_G_FIELD_COUNT				0x1C2C
#define	VDEC_G_HSCALE_CTRL				0x1C30
#define	VDEC_G_VSCALE_CTRL				0x1C34
#define	VDEC_G_MAN_VGA_CTRL				0x1C38
#define	VDEC_G_MAN_AGC_CTRL				0x1C3C
#define	VDEC_G_DFE_CTRL1				0x1C40
#define	VDEC_G_DFE_CTRL2				0x1C44
#define	VDEC_G_DFE_CTRL3				0x1C48
#define	VDEC_G_PLL_CTRL					0x1C4C
#define	VDEC_G_PLL_CTRL_FAST			0x1C50
#define	VDEC_G_HTL_CTRL					0x1C54
#define	VDEC_G_SRC_CFG					0x1C58
#define	VDEC_G_SC_STEP_SIZE				0x1C5C
#define	VDEC_G_SC_CONVERGE_CTRL			0x1C60
#define	VDEC_G_SC_LOOP_CTRL				0x1C64
#define	VDEC_G_COMB_2D_HFS_CFG			0x1C68
#define	VDEC_G_COMB_2D_HFD_CFG			0x1C6C
#define	VDEC_G_COMB_2D_LF_CFG			0x1C70
#define	VDEC_G_COMB_2D_BLEND			0x1C74
#define	VDEC_G_COMB_MISC_CTRL			0x1C78
#define	VDEC_G_COMB_FLAT_THRESH_CTRL	0x1C7C
#define	VDEC_G_COMB_TEST				0x1C80
#define	VDEC_G_BP_MISC_CTRL				0x1C84
#define	VDEC_G_VCR_DET_CTRL				0x1C88
#define	VDEC_G_NOISE_DET_CTRL			0x1C8C
#define	VDEC_G_COMB_FLAT_NOISE_CTRL		0x1C90
#define	VDEC_G_VERSION					0x1DF8
#define	VDEC_G_SOFT_RST_CTRL			0x1DFC

//              Video Decoder H Registers
#define	VDEC_H_MODE_CTRL				0x1E00
#define	VDEC_H_OUT_CTRL1				0x1E04
#define	VDEC_H_OUT_CTRL_NS				0x1E08
#define	VDEC_H_GEN_STAT					0x1E0C
#define	VDEC_H_INT_STAT_MASK			0x1E1E
#define	VDEC_H_LUMA_CTRL				0x1E14
#define	VDEC_H_CHROMA_CTRL				0x1E18
#define	VDEC_H_CRUSH_CTRL				0x1E1C
#define	VDEC_H_HORIZ_TIM_CTRL			0x1E20
#define	VDEC_H_VERT_TIM_CTRL			0x1E24
#define	VDEC_H_MISC_TIM_CTRL			0x1E28
#define	VDEC_H_FIELD_COUNT				0x1E2C
#define	VDEC_H_HSCALE_CTRL				0x1E30
#define	VDEC_H_VSCALE_CTRL				0x1E34
#define	VDEC_H_MAN_VGA_CTRL				0x1E38
#define	VDEC_H_MAN_AGC_CTRL				0x1E3C
#define	VDEC_H_DFE_CTRL1				0x1E40
#define	VDEC_H_DFE_CTRL2				0x1E44
#define	VDEC_H_DFE_CTRL3				0x1E48
#define	VDEC_H_PLL_CTRL					0x1E4C
#define	VDEC_H_PLL_CTRL_FAST			0x1E50
#define	VDEC_H_HTL_CTRL					0x1E54
#define	VDEC_H_SRC_CFG					0x1E58
#define	VDEC_H_SC_STEP_SIZE				0x1E5C
#define	VDEC_H_SC_CONVERGE_CTRL			0x1E60
#define	VDEC_H_SC_LOOP_CTRL				0x1E64
#define	VDEC_H_COMB_2D_HFS_CFG			0x1E68
#define	VDEC_H_COMB_2D_HFD_CFG			0x1E6C
#define	VDEC_H_COMB_2D_LF_CFG			0x1E70
#define	VDEC_H_COMB_2D_BLEND			0x1E74
#define	VDEC_H_COMB_MISC_CTRL			0x1E78
#define	VDEC_H_COMB_FLAT_THRESH_CTRL	0x1E7C
#define	VDEC_H_COMB_TEST				0x1E80
#define	VDEC_H_BP_MISC_CTRL				0x1E84
#define	VDEC_H_VCR_DET_CTRL				0x1E88
#define	VDEC_H_NOISE_DET_CTRL			0x1E8C
#define	VDEC_H_COMB_FLAT_NOISE_CTRL		0x1E90
#define	VDEC_H_VERSION					0x1FF8
#define	VDEC_H_SOFT_RST_CTRL			0x1FFC

//*****************************************************************************
// LUMA_CTRL register fields
#define VDEC_A_BRITE_CTRL				0x1014
#define VDEC_A_CNTRST_CTRL       		0x1015
#define VDEC_A_PEAK_SEL          		0x1016

//*****************************************************************************
// CHROMA_CTRL register fields
#define VDEC_A_USAT_CTRL         		0x1018
#define VDEC_A_VSAT_CTRL         		0x1019
#define VDEC_A_HUE_CTRL          		0x101A

#endif
