/* * 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