/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * stv0367_defs.h
 *
 * Driver for ST STV0367 DVB-T & DVB-C demodulator IC.
 *
 * Copyright (C) ST Microelectronics.
 * Copyright (C) 2010,2011 NetUP Inc.
 * Copyright (C) 2010,2011 Igor M. Liplianin <liplianin@netup.ru>
 */

#ifndef STV0367_DEFS_H
#define STV0367_DEFS_H

#include "stv0367_regs.h"

#define STV0367_DEFTAB_GENERIC	0
#define STV0367_DEFTAB_DDB	1
#define STV0367_DEFTAB_MAX	2

#define STV0367_TAB_TER		0
#define STV0367_TAB_CAB		1
#define STV0367_TAB_BASE	2
#define STV0367_TAB_MAX		3

struct st_register {
	u16	addr;
	u8	value;
};

/* values for STV4100 XTAL=30M int clk=53.125M*/
static const struct st_register def0367ter[] = {
	{R367TER_ID,		0x60},
	{R367TER_I2CRPT,	0xa0},
	/* {R367TER_I2CRPT,	0x22},*/
	{R367TER_TOPCTRL,	0x00},/* for xc5000; was 0x02 */
	{R367TER_IOCFG0,	0x40},
	{R367TER_DAC0R,		0x00},
	{R367TER_IOCFG1,	0x00},
	{R367TER_DAC1R,		0x00},
	{R367TER_IOCFG2,	0x62},
	{R367TER_SDFR,		0x00},
	{R367TER_STATUS,	0xf8},
	{R367TER_AUX_CLK,	0x0a},
	{R367TER_FREESYS1,	0x00},
	{R367TER_FREESYS2,	0x00},
	{R367TER_FREESYS3,	0x00},
	{R367TER_GPIO_CFG,	0x55},
	{R367TER_GPIO_CMD,	0x00},
	{R367TER_AGC2MAX,	0xff},
	{R367TER_AGC2MIN,	0x00},
	{R367TER_AGC1MAX,	0xff},
	{R367TER_AGC1MIN,	0x00},
	{R367TER_AGCR,		0xbc},
	{R367TER_AGC2TH,	0x00},
	{R367TER_AGC12C,	0x00},
	{R367TER_AGCCTRL1,	0x85},
	{R367TER_AGCCTRL2,	0x1f},
	{R367TER_AGC1VAL1,	0x00},
	{R367TER_AGC1VAL2,	0x00},
	{R367TER_AGC2VAL1,	0x6f},
	{R367TER_AGC2VAL2,	0x05},
	{R367TER_AGC2PGA,	0x00},
	{R367TER_OVF_RATE1,	0x00},
	{R367TER_OVF_RATE2,	0x00},
	{R367TER_GAIN_SRC1,	0xaa},/* for xc5000; was 0x2b */
	{R367TER_GAIN_SRC2,	0xd6},/* for xc5000; was 0x04 */
	{R367TER_INC_DEROT1,	0x55},
	{R367TER_INC_DEROT2,	0x55},
	{R367TER_PPM_CPAMP_DIR,	0x2c},
	{R367TER_PPM_CPAMP_INV,	0x00},
	{R367TER_FREESTFE_1,	0x00},
	{R367TER_FREESTFE_2,	0x1c},
	{R367TER_DCOFFSET,	0x00},
	{R367TER_EN_PROCESS,	0x05},
	{R367TER_SDI_SMOOTHER,	0x80},
	{R367TER_FE_LOOP_OPEN,	0x1c},
	{R367TER_FREQOFF1,	0x00},
	{R367TER_FREQOFF2,	0x00},
	{R367TER_FREQOFF3,	0x00},
	{R367TER_TIMOFF1,	0x00},
	{R367TER_TIMOFF2,	0x00},
	{R367TER_EPQ,		0x02},
	{R367TER_EPQAUTO,	0x01},
	{R367TER_SYR_UPDATE,	0xf5},
	{R367TER_CHPFREE,	0x00},
	{R367TER_PPM_STATE_MAC,	0x23},
	{R367TER_INR_THRESHOLD,	0xff},
	{R367TER_EPQ_TPS_ID_CELL, 0xf9},
	{R367TER_EPQ_CFG,	0x00},
	{R367TER_EPQ_STATUS,	0x01},
	{R367TER_AUTORELOCK,	0x81},
	{R367TER_BER_THR_VMSB,	0x00},
	{R367TER_BER_THR_MSB,	0x00},
	{R367TER_BER_THR_LSB,	0x00},
	{R367TER_CCD,		0x83},
	{R367TER_SPECTR_CFG,	0x00},
	{R367TER_CHC_DUMMY,	0x18},
	{R367TER_INC_CTL,	0x88},
	{R367TER_INCTHRES_COR1,	0xb4},
	{R367TER_INCTHRES_COR2,	0x96},
	{R367TER_INCTHRES_DET1,	0x0e},
	{R367TER_INCTHRES_DET2,	0x11},
	{R367TER_IIR_CELLNB,	0x8d},
	{R367TER_IIRCX_COEFF1_MSB, 0x00},
	{R367TER_IIRCX_COEFF1_LSB, 0x00},
	{R367TER_IIRCX_COEFF2_MSB, 0x09},
	{R367TER_IIRCX_COEFF2_LSB, 0x18},
	{R367TER_IIRCX_COEFF3_MSB, 0x14},
	{R367TER_IIRCX_COEFF3_LSB, 0x9c},
	{R367TER_IIRCX_COEFF4_MSB, 0x00},
	{R367TER_IIRCX_COEFF4_LSB, 0x00},
	{R367TER_IIRCX_COEFF5_MSB, 0x36},
	{R367TER_IIRCX_COEFF5_LSB, 0x42},
	{R367TER_FEPATH_CFG,	0x00},
	{R367TER_PMC1_FUNC,	0x65},
	{R367TER_PMC1_FOR,	0x00},
	{R367TER_PMC2_FUNC,	0x00},
	{R367TER_STATUS_ERR_DA,	0xe0},
	{R367TER_DIG_AGC_R,	0xfe},
	{R367TER_COMAGC_TARMSB,	0x0b},
	{R367TER_COM_AGC_TAR_ENMODE, 0x41},
	{R367TER_COM_AGC_CFG,	0x3e},
	{R367TER_COM_AGC_GAIN1, 0x39},
	{R367TER_AUT_AGC_TARGETMSB, 0x0b},
	{R367TER_LOCK_DET_MSB,	0x01},
	{R367TER_AGCTAR_LOCK_LSBS, 0x40},
	{R367TER_AUT_GAIN_EN,	0xf4},
	{R367TER_AUT_CFG,	0xf0},
	{R367TER_LOCKN,		0x23},
	{R367TER_INT_X_3,	0x00},
	{R367TER_INT_X_2,	0x03},
	{R367TER_INT_X_1,	0x8d},
	{R367TER_INT_X_0,	0xa0},
	{R367TER_MIN_ERRX_MSB,	0x00},
	{R367TER_COR_CTL,	0x23},
	{R367TER_COR_STAT,	0xf6},
	{R367TER_COR_INTEN,	0x00},
	{R367TER_COR_INTSTAT,	0x3f},
	{R367TER_COR_MODEGUARD,	0x03},
	{R367TER_AGC_CTL,	0x08},
	{R367TER_AGC_MANUAL1,	0x00},
	{R367TER_AGC_MANUAL2,	0x00},
	{R367TER_AGC_TARG,	0x16},
	{R367TER_AGC_GAIN1,	0x53},
	{R367TER_AGC_GAIN2,	0x1d},
	{R367TER_RESERVED_1,	0x00},
	{R367TER_RESERVED_2,	0x00},
	{R367TER_RESERVED_3,	0x00},
	{R367TER_CAS_CTL,	0x44},
	{R367TER_CAS_FREQ,	0xb3},
	{R367TER_CAS_DAGCGAIN,	0x12},
	{R367TER_SYR_CTL,	0x04},
	{R367TER_SYR_STAT,	0x10},
	{R367TER_SYR_NCO1,	0x00},
	{R367TER_SYR_NCO2,	0x00},
	{R367TER_SYR_OFFSET1,	0x00},
	{R367TER_SYR_OFFSET2,	0x00},
	{R367TER_FFT_CTL,	0x00},
	{R367TER_SCR_CTL,	0x70},
	{R367TER_PPM_CTL1,	0xf8},
	{R367TER_TRL_CTL,	0x14},/* for xc5000; was 0xac */
	{R367TER_TRL_NOMRATE1,	0xae},/* for xc5000; was 0x1e */
	{R367TER_TRL_NOMRATE2,	0x56},/* for xc5000; was 0x58 */
	{R367TER_TRL_TIME1,	0x1d},
	{R367TER_TRL_TIME2,	0xfc},
	{R367TER_CRL_CTL,	0x24},
	{R367TER_CRL_FREQ1,	0xad},
	{R367TER_CRL_FREQ2,	0x9d},
	{R367TER_CRL_FREQ3,	0xff},
	{R367TER_CHC_CTL,	0x01},
	{R367TER_CHC_SNR,	0xf0},
	{R367TER_BDI_CTL,	0x00},
	{R367TER_DMP_CTL,	0x00},
	{R367TER_TPS_RCVD1,	0x30},
	{R367TER_TPS_RCVD2,	0x02},
	{R367TER_TPS_RCVD3,	0x01},
	{R367TER_TPS_RCVD4,	0x00},
	{R367TER_TPS_ID_CELL1,	0x00},
	{R367TER_TPS_ID_CELL2,	0x00},
	{R367TER_TPS_RCVD5_SET1, 0x02},
	{R367TER_TPS_SET2,	0x02},
	{R367TER_TPS_SET3,	0x01},
	{R367TER_TPS_CTL,	0x00},
	{R367TER_CTL_FFTOSNUM,	0x34},
	{R367TER_TESTSELECT,	0x09},
	{R367TER_MSC_REV,	0x0a},
	{R367TER_PIR_CTL,	0x00},
	{R367TER_SNR_CARRIER1,	0xa1},
	{R367TER_SNR_CARRIER2,	0x9a},
	{R367TER_PPM_CPAMP,	0x2c},
	{R367TER_TSM_AP0,	0x00},
	{R367TER_TSM_AP1,	0x00},
	{R367TER_TSM_AP2,	0x00},
	{R367TER_TSM_AP3,	0x00},
	{R367TER_TSM_AP4,	0x00},
	{R367TER_TSM_AP5,	0x00},
	{R367TER_TSM_AP6,	0x00},
	{R367TER_TSM_AP7,	0x00},
	{R367TER_TSTRES,	0x00},
	{R367TER_ANACTRL,	0x0D},/* PLL stopped, restart at init!!! */
	{R367TER_TSTBUS,	0x00},
	{R367TER_TSTRATE,	0x00},
	{R367TER_CONSTMODE,	0x01},
	{R367TER_CONSTCARR1,	0x00},
	{R367TER_CONSTCARR2,	0x00},
	{R367TER_ICONSTEL,	0x0a},
	{R367TER_QCONSTEL,	0x15},
	{R367TER_TSTBISTRES0,	0x00},
	{R367TER_TSTBISTRES1,	0x00},
	{R367TER_TSTBISTRES2,	0x28},
	{R367TER_TSTBISTRES3,	0x00},
	{R367TER_RF_AGC1,	0xff},
	{R367TER_RF_AGC2,	0x83},
	{R367TER_ANADIGCTRL,	0x19},
	{R367TER_PLLMDIV,	0x01},/* for xc5000; was 0x0c */
	{R367TER_PLLNDIV,	0x06},/* for xc5000; was 0x55 */
	{R367TER_PLLSETUP,	0x18},
	{R367TER_DUAL_AD12,	0x0C},/* for xc5000 AGC voltage 1.6V */
	{R367TER_TSTBIST,	0x00},
	{R367TER_PAD_COMP_CTRL,	0x00},
	{R367TER_PAD_COMP_WR,	0x00},
	{R367TER_PAD_COMP_RD,	0xe0},
	{R367TER_SYR_TARGET_FFTADJT_MSB, 0x00},
	{R367TER_SYR_TARGET_FFTADJT_LSB, 0x00},
	{R367TER_SYR_TARGET_CHCADJT_MSB, 0x00},
	{R367TER_SYR_TARGET_CHCADJT_LSB, 0x00},
	{R367TER_SYR_FLAG,	0x00},
	{R367TER_CRL_TARGET1,	0x00},
	{R367TER_CRL_TARGET2,	0x00},
	{R367TER_CRL_TARGET3,	0x00},
	{R367TER_CRL_TARGET4,	0x00},
	{R367TER_CRL_FLAG,	0x00},
	{R367TER_TRL_TARGET1,	0x00},
	{R367TER_TRL_TARGET2,	0x00},
	{R367TER_TRL_CHC,	0x00},
	{R367TER_CHC_SNR_TARG,	0x00},
	{R367TER_TOP_TRACK,	0x00},
	{R367TER_TRACKER_FREE1,	0x00},
	{R367TER_ERROR_CRL1,	0x00},
	{R367TER_ERROR_CRL2,	0x00},
	{R367TER_ERROR_CRL3,	0x00},
	{R367TER_ERROR_CRL4,	0x00},
	{R367TER_DEC_NCO1,	0x2c},
	{R367TER_DEC_NCO2,	0x0f},
	{R367TER_DEC_NCO3,	0x20},
	{R367TER_SNR,		0xf1},
	{R367TER_SYR_FFTADJ1,	0x00},
	{R367TER_SYR_FFTADJ2,	0x00},
	{R367TER_SYR_CHCADJ1,	0x00},
	{R367TER_SYR_CHCADJ2,	0x00},
	{R367TER_SYR_OFF,	0x00},
	{R367TER_PPM_OFFSET1,	0x00},
	{R367TER_PPM_OFFSET2,	0x03},
	{R367TER_TRACKER_FREE2,	0x00},
	{R367TER_DEBG_LT10,	0x00},
	{R367TER_DEBG_LT11,	0x00},
	{R367TER_DEBG_LT12,	0x00},
	{R367TER_DEBG_LT13,	0x00},
	{R367TER_DEBG_LT14,	0x00},
	{R367TER_DEBG_LT15,	0x00},
	{R367TER_DEBG_LT16,	0x00},
	{R367TER_DEBG_LT17,	0x00},
	{R367TER_DEBG_LT18,	0x00},
	{R367TER_DEBG_LT19,	0x00},
	{R367TER_DEBG_LT1A,	0x00},
	{R367TER_DEBG_LT1B,	0x00},
	{R367TER_DEBG_LT1C,	0x00},
	{R367TER_DEBG_LT1D,	0x00},
	{R367TER_DEBG_LT1E,	0x00},
	{R367TER_DEBG_LT1F,	0x00},
	{R367TER_RCCFGH,	0x00},
	{R367TER_RCCFGM,	0x00},
	{R367TER_RCCFGL,	0x00},
	{R367TER_RCINSDELH,	0x00},
	{R367TER_RCINSDELM,	0x00},
	{R367TER_RCINSDELL,	0x00},
	{R367TER_RCSTATUS,	0x00},
	{R367TER_RCSPEED,	0x6f},
	{R367TER_RCDEBUGM,	0xe7},
	{R367TER_RCDEBUGL,	0x9b},
	{R367TER_RCOBSCFG,	0x00},
	{R367TER_RCOBSM,	0x00},
	{R367TER_RCOBSL,	0x00},
	{R367TER_RCFECSPY,	0x00},
	{R367TER_RCFSPYCFG,	0x00},
	{R367TER_RCFSPYDATA,	0x00},
	{R367TER_RCFSPYOUT,	0x00},
	{R367TER_RCFSTATUS,	0x00},
	{R367TER_RCFGOODPACK,	0x00},
	{R367TER_RCFPACKCNT,	0x00},
	{R367TER_RCFSPYMISC,	0x00},
	{R367TER_RCFBERCPT4,	0x00},
	{R367TER_RCFBERCPT3,	0x00},
	{R367TER_RCFBERCPT2,	0x00},
	{R367TER_RCFBERCPT1,	0x00},
	{R367TER_RCFBERCPT0,	0x00},
	{R367TER_RCFBERERR2,	0x00},
	{R367TER_RCFBERERR1,	0x00},
	{R367TER_RCFBERERR0,	0x00},
	{R367TER_RCFSTATESM,	0x00},
	{R367TER_RCFSTATESL,	0x00},
	{R367TER_RCFSPYBER,	0x00},
	{R367TER_RCFSPYDISTM,	0x00},
	{R367TER_RCFSPYDISTL,	0x00},
	{R367TER_RCFSPYOBS7,	0x00},
	{R367TER_RCFSPYOBS6,	0x00},
	{R367TER_RCFSPYOBS5,	0x00},
	{R367TER_RCFSPYOBS4,	0x00},
	{R367TER_RCFSPYOBS3,	0x00},
	{R367TER_RCFSPYOBS2,	0x00},
	{R367TER_RCFSPYOBS1,	0x00},
	{R367TER_RCFSPYOBS0,	0x00},
	{R367TER_TSGENERAL,	0x00},
	{R367TER_RC1SPEED,	0x6f},
	{R367TER_TSGSTATUS,	0x18},
	{R367TER_FECM,		0x01},
	{R367TER_VTH12,		0xff},
	{R367TER_VTH23,		0xa1},
	{R367TER_VTH34,		0x64},
	{R367TER_VTH56,		0x40},
	{R367TER_VTH67,		0x00},
	{R367TER_VTH78,		0x2c},
	{R367TER_VITCURPUN,	0x12},
	{R367TER_VERROR,	0x01},
	{R367TER_PRVIT,		0x3f},
	{R367TER_VAVSRVIT,	0x00},
	{R367TER_VSTATUSVIT,	0xbd},
	{R367TER_VTHINUSE,	0xa1},
	{R367TER_KDIV12,	0x20},
	{R367TER_KDIV23,	0x40},
	{R367TER_KDIV34,	0x20},
	{R367TER_KDIV56,	0x30},
	{R367TER_KDIV67,	0x00},
	{R367TER_KDIV78,	0x30},
	{R367TER_SIGPOWER,	0x54},
	{R367TER_DEMAPVIT,	0x40},
	{R367TER_VITSCALE,	0x00},
	{R367TER_FFEC1PRG,	0x00},
	{R367TER_FVITCURPUN,	0x12},
	{R367TER_FVERROR,	0x01},
	{R367TER_FVSTATUSVIT,	0xbd},
	{R367TER_DEBUG_LT1,	0x00},
	{R367TER_DEBUG_LT2,	0x00},
	{R367TER_DEBUG_LT3,	0x00},
	{R367TER_TSTSFMET,	0x00},
	{R367TER_SELOUT,	0x00},
	{R367TER_TSYNC,		0x00},
	{R367TER_TSTERR,	0x00},
	{R367TER_TSFSYNC,	0x00},
	{R367TER_TSTSFERR,	0x00},
	{R367TER_TSTTSSF1,	0x01},
	{R367TER_TSTTSSF2,	0x1f},
	{R367TER_TSTTSSF3,	0x00},
	{R367TER_TSTTS1,	0x00},
	{R367TER_TSTTS2,	0x1f},
	{R367TER_TSTTS3,	0x01},
	{R367TER_TSTTS4,	0x00},
	{R367TER_TSTTSRC,	0x00},
	{R367TER_TSTTSRS,	0x00},
	{R367TER_TSSTATEM,	0xb0},
	{R367TER_TSSTATEL,	0x40},
	{R367TER_TSCFGH,	0xC0},
	{R367TER_TSCFGM,	0xc0},/* for xc5000; was 0x00 */
	{R367TER_TSCFGL,	0x20},
	{R367TER_TSSYNC,	0x00},
	{R367TER_TSINSDELH,	0x00},
	{R367TER_TSINSDELM,	0x00},
	{R367TER_TSINSDELL,	0x00},
	{R367TER_TSDIVN,	0x03},
	{R367TER_TSDIVPM,	0x00},
	{R367TER_TSDIVPL,	0x00},
	{R367TER_TSDIVQM,	0x00},
	{R367TER_TSDIVQL,	0x00},
	{R367TER_TSDILSTKM,	0x00},
	{R367TER_TSDILSTKL,	0x00},
	{R367TER_TSSPEED,	0x40},/* for xc5000; was 0x6f */
	{R367TER_TSSTATUS,	0x81},
	{R367TER_TSSTATUS2,	0x6a},
	{R367TER_TSBITRATEM,	0x0f},
	{R367TER_TSBITRATEL,	0xc6},
	{R367TER_TSPACKLENM,	0x00},
	{R367TER_TSPACKLENL,	0xfc},
	{R367TER_TSBLOCLENM,	0x0a},
	{R367TER_TSBLOCLENL,	0x80},
	{R367TER_TSDLYH,	0x90},
	{R367TER_TSDLYM,	0x68},
	{R367TER_TSDLYL,	0x01},
	{R367TER_TSNPDAV,	0x00},
	{R367TER_TSBUFSTATH,	0x00},
	{R367TER_TSBUFSTATM,	0x00},
	{R367TER_TSBUFSTATL,	0x00},
	{R367TER_TSDEBUGM,	0xcf},
	{R367TER_TSDEBUGL,	0x1e},
	{R367TER_TSDLYSETH,	0x00},
	{R367TER_TSDLYSETM,	0x68},
	{R367TER_TSDLYSETL,	0x00},
	{R367TER_TSOBSCFG,	0x00},
	{R367TER_TSOBSM,	0x47},
	{R367TER_TSOBSL,	0x1f},
	{R367TER_ERRCTRL1,	0x95},
	{R367TER_ERRCNT1H,	0x80},
	{R367TER_ERRCNT1M,	0x00},
	{R367TER_ERRCNT1L,	0x00},
	{R367TER_ERRCTRL2,	0x95},
	{R367TER_ERRCNT2H,	0x00},
	{R367TER_ERRCNT2M,	0x00},
	{R367TER_ERRCNT2L,	0x00},
	{R367TER_FECSPY,	0x88},
	{R367TER_FSPYCFG,	0x2c},
	{R367TER_FSPYDATA,	0x3a},
	{R367TER_FSPYOUT,	0x06},
	{R367TER_FSTATUS,	0x61},
	{R367TER_FGOODPACK,	0xff},
	{R367TER_FPACKCNT,	0xff},
	{R367TER_FSPYMISC,	0x66},
	{R367TER_FBERCPT4,	0x00},
	{R367TER_FBERCPT3,	0x00},
	{R367TER_FBERCPT2,	0x36},
	{R367TER_FBERCPT1,	0x36},
	{R367TER_FBERCPT0,	0x14},
	{R367TER_FBERERR2,	0x00},
	{R367TER_FBERERR1,	0x03},
	{R367TER_FBERERR0,	0x28},
	{R367TER_FSTATESM,	0x00},
	{R367TER_FSTATESL,	0x02},
	{R367TER_FSPYBER,	0x00},
	{R367TER_FSPYDISTM,	0x01},
	{R367TER_FSPYDISTL,	0x9f},
	{R367TER_FSPYOBS7,	0xc9},
	{R367TER_FSPYOBS6,	0x99},
	{R367TER_FSPYOBS5,	0x08},
	{R367TER_FSPYOBS4,	0xec},
	{R367TER_FSPYOBS3,	0x01},
	{R367TER_FSPYOBS2,	0x0f},
	{R367TER_FSPYOBS1,	0xf5},
	{R367TER_FSPYOBS0,	0x08},
	{R367TER_SFDEMAP,	0x40},
	{R367TER_SFERROR,	0x00},
	{R367TER_SFAVSR,	0x30},
	{R367TER_SFECSTATUS,	0xcc},
	{R367TER_SFKDIV12,	0x20},
	{R367TER_SFKDIV23,	0x40},
	{R367TER_SFKDIV34,	0x20},
	{R367TER_SFKDIV56,	0x20},
	{R367TER_SFKDIV67,	0x00},
	{R367TER_SFKDIV78,	0x20},
	{R367TER_SFDILSTKM,	0x00},
	{R367TER_SFDILSTKL,	0x00},
	{R367TER_SFSTATUS,	0xb5},
	{R367TER_SFDLYH,	0x90},
	{R367TER_SFDLYM,	0x60},
	{R367TER_SFDLYL,	0x01},
	{R367TER_SFDLYSETH,	0xc0},
	{R367TER_SFDLYSETM,	0x60},
	{R367TER_SFDLYSETL,	0x00},
	{R367TER_SFOBSCFG,	0x00},
	{R367TER_SFOBSM,	0x47},
	{R367TER_SFOBSL,	0x05},
	{R367TER_SFECINFO,	0x40},
	{R367TER_SFERRCTRL,	0x74},
	{R367TER_SFERRCNTH,	0x80},
	{R367TER_SFERRCNTM,	0x00},
	{R367TER_SFERRCNTL,	0x00},
	{R367TER_SYMBRATEM,	0x2f},
	{R367TER_SYMBRATEL,	0x50},
	{R367TER_SYMBSTATUS,	0x7f},
	{R367TER_SYMBCFG,	0x00},
	{R367TER_SYMBFIFOM,	0xf4},
	{R367TER_SYMBFIFOL,	0x0d},
	{R367TER_SYMBOFFSM,	0xf0},
	{R367TER_SYMBOFFSL,	0x2d},
	{R367TER_DEBUG_LT4,	0x00},
	{R367TER_DEBUG_LT5,	0x00},
	{R367TER_DEBUG_LT6,	0x00},
	{R367TER_DEBUG_LT7,	0x00},
	{R367TER_DEBUG_LT8,	0x00},
	{R367TER_DEBUG_LT9,	0x00},
	{0x0000,		0x00},
};

static const struct st_register def0367cab[] = {
	{R367CAB_ID,		0x60},
	{R367CAB_I2CRPT,	0xa0},
	/*{R367CAB_I2CRPT,	0x22},*/
	{R367CAB_TOPCTRL,	0x10},
	{R367CAB_IOCFG0,	0x80},
	{R367CAB_DAC0R,		0x00},
	{R367CAB_IOCFG1,	0x00},
	{R367CAB_DAC1R,		0x00},
	{R367CAB_IOCFG2,	0x00},
	{R367CAB_SDFR,		0x00},
	{R367CAB_AUX_CLK,	0x00},
	{R367CAB_FREESYS1,	0x00},
	{R367CAB_FREESYS2,	0x00},
	{R367CAB_FREESYS3,	0x00},
	{R367CAB_GPIO_CFG,	0x55},
	{R367CAB_GPIO_CMD,	0x01},
	{R367CAB_TSTRES,	0x00},
	{R367CAB_ANACTRL,	0x0d},/* was 0x00 need to check - I.M.L.*/
	{R367CAB_TSTBUS,	0x00},
	{R367CAB_RF_AGC1,	0xea},
	{R367CAB_RF_AGC2,	0x82},
	{R367CAB_ANADIGCTRL,	0x0b},
	{R367CAB_PLLMDIV,	0x01},
	{R367CAB_PLLNDIV,	0x08},
	{R367CAB_PLLSETUP,	0x18},
	{R367CAB_DUAL_AD12,	0x0C}, /* for xc5000 AGC voltage 1.6V */
	{R367CAB_TSTBIST,	0x00},
	{R367CAB_CTRL_1,	0x00},
	{R367CAB_CTRL_2,	0x03},
	{R367CAB_IT_STATUS1,	0x2b},
	{R367CAB_IT_STATUS2,	0x08},
	{R367CAB_IT_EN1,	0x00},
	{R367CAB_IT_EN2,	0x00},
	{R367CAB_CTRL_STATUS,	0x04},
	{R367CAB_TEST_CTL,	0x00},
	{R367CAB_AGC_CTL,	0x73},
	{R367CAB_AGC_IF_CFG,	0x50},
	{R367CAB_AGC_RF_CFG,	0x00},
	{R367CAB_AGC_PWM_CFG,	0x03},
	{R367CAB_AGC_PWR_REF_L,	0x5a},
	{R367CAB_AGC_PWR_REF_H,	0x00},
	{R367CAB_AGC_RF_TH_L,	0xff},
	{R367CAB_AGC_RF_TH_H,	0x07},
	{R367CAB_AGC_IF_LTH_L,	0x00},
	{R367CAB_AGC_IF_LTH_H,	0x08},
	{R367CAB_AGC_IF_HTH_L,	0xff},
	{R367CAB_AGC_IF_HTH_H,	0x07},
	{R367CAB_AGC_PWR_RD_L,	0xa0},
	{R367CAB_AGC_PWR_RD_M,	0xe9},
	{R367CAB_AGC_PWR_RD_H,	0x03},
	{R367CAB_AGC_PWM_IFCMD_L,	0xe4},
	{R367CAB_AGC_PWM_IFCMD_H,	0x00},
	{R367CAB_AGC_PWM_RFCMD_L,	0xff},
	{R367CAB_AGC_PWM_RFCMD_H,	0x07},
	{R367CAB_IQDEM_CFG,	0x01},
	{R367CAB_MIX_NCO_LL,	0x22},
	{R367CAB_MIX_NCO_HL,	0x96},
	{R367CAB_MIX_NCO_HH,	0x55},
	{R367CAB_SRC_NCO_LL,	0xff},
	{R367CAB_SRC_NCO_LH,	0x0c},
	{R367CAB_SRC_NCO_HL,	0xf5},
	{R367CAB_SRC_NCO_HH,	0x20},
	{R367CAB_IQDEM_GAIN_SRC_L,	0x06},
	{R367CAB_IQDEM_GAIN_SRC_H,	0x01},
	{R367CAB_IQDEM_DCRM_CFG_LL,	0xfe},
	{R367CAB_IQDEM_DCRM_CFG_LH,	0xff},
	{R367CAB_IQDEM_DCRM_CFG_HL,	0x0f},
	{R367CAB_IQDEM_DCRM_CFG_HH,	0x00},
	{R367CAB_IQDEM_ADJ_COEFF0,	0x34},
	{R367CAB_IQDEM_ADJ_COEFF1,	0xae},
	{R367CAB_IQDEM_ADJ_COEFF2,	0x46},
	{R367CAB_IQDEM_ADJ_COEFF3,	0x77},
	{R367CAB_IQDEM_ADJ_COEFF4,	0x96},
	{R367CAB_IQDEM_ADJ_COEFF5,	0x69},
	{R367CAB_IQDEM_ADJ_COEFF6,	0xc7},
	{R367CAB_IQDEM_ADJ_COEFF7,	0x01},
	{R367CAB_IQDEM_ADJ_EN,	0x04},
	{R367CAB_IQDEM_ADJ_AGC_REF,	0x94},
	{R367CAB_ALLPASSFILT1,	0xc9},
	{R367CAB_ALLPASSFILT2,	0x2d},
	{R367CAB_ALLPASSFILT3,	0xa3},
	{R367CAB_ALLPASSFILT4,	0xfb},
	{R367CAB_ALLPASSFILT5,	0xf6},
	{R367CAB_ALLPASSFILT6,	0x45},
	{R367CAB_ALLPASSFILT7,	0x6f},
	{R367CAB_ALLPASSFILT8,	0x7e},
	{R367CAB_ALLPASSFILT9,	0x05},
	{R367CAB_ALLPASSFILT10,	0x0a},
	{R367CAB_ALLPASSFILT11,	0x51},
	{R367CAB_TRL_AGC_CFG,	0x20},
	{R367CAB_TRL_LPF_CFG,	0x28},
	{R367CAB_TRL_LPF_ACQ_GAIN,	0x44},
	{R367CAB_TRL_LPF_TRK_GAIN,	0x22},
	{R367CAB_TRL_LPF_OUT_GAIN,	0x03},
	{R367CAB_TRL_LOCKDET_LTH,	0x04},
	{R367CAB_TRL_LOCKDET_HTH,	0x11},
	{R367CAB_TRL_LOCKDET_TRGVAL,	0x20},
	{R367CAB_IQ_QAM,	0x01},
	{R367CAB_FSM_STATE,	0xa0},
	{R367CAB_FSM_CTL,	0x08},
	{R367CAB_FSM_STS,	0x0c},
	{R367CAB_FSM_SNR0_HTH,	0x00},
	{R367CAB_FSM_SNR1_HTH,	0x00},
	{R367CAB_FSM_SNR2_HTH,	0x23},/* 0x00 */
	{R367CAB_FSM_SNR0_LTH,	0x00},
	{R367CAB_FSM_SNR1_LTH,	0x00},
	{R367CAB_FSM_EQA1_HTH,	0x00},
	{R367CAB_FSM_TEMPO,	0x32},
	{R367CAB_FSM_CONFIG,	0x03},
	{R367CAB_EQU_I_TESTTAP_L,	0x11},
	{R367CAB_EQU_I_TESTTAP_M,	0x00},
	{R367CAB_EQU_I_TESTTAP_H,	0x00},
	{R367CAB_EQU_TESTAP_CFG,	0x00},
	{R367CAB_EQU_Q_TESTTAP_L,	0xff},
	{R367CAB_EQU_Q_TESTTAP_M,	0x00},
	{R367CAB_EQU_Q_TESTTAP_H,	0x00},
	{R367CAB_EQU_TAP_CTRL,	0x00},
	{R367CAB_EQU_CTR_CRL_CONTROL_L,	0x11},
	{R367CAB_EQU_CTR_CRL_CONTROL_H,	0x05},
	{R367CAB_EQU_CTR_HIPOW_L,	0x00},
	{R367CAB_EQU_CTR_HIPOW_H,	0x00},
	{R367CAB_EQU_I_EQU_LO,	0xef},
	{R367CAB_EQU_I_EQU_HI,	0x00},
	{R367CAB_EQU_Q_EQU_LO,	0xee},
	{R367CAB_EQU_Q_EQU_HI,	0x00},
	{R367CAB_EQU_MAPPER,	0xc5},
	{R367CAB_EQU_SWEEP_RATE,	0x80},
	{R367CAB_EQU_SNR_LO,	0x64},
	{R367CAB_EQU_SNR_HI,	0x03},
	{R367CAB_EQU_GAMMA_LO,	0x00},
	{R367CAB_EQU_GAMMA_HI,	0x00},
	{R367CAB_EQU_ERR_GAIN,	0x36},
	{R367CAB_EQU_RADIUS,	0xaa},
	{R367CAB_EQU_FFE_MAINTAP,	0x00},
	{R367CAB_EQU_FFE_LEAKAGE,	0x63},
	{R367CAB_EQU_FFE_MAINTAP_POS,	0xdf},
	{R367CAB_EQU_GAIN_WIDE,	0x88},
	{R367CAB_EQU_GAIN_NARROW,	0x41},
	{R367CAB_EQU_CTR_LPF_GAIN,	0xd1},
	{R367CAB_EQU_CRL_LPF_GAIN,	0xa7},
	{R367CAB_EQU_GLOBAL_GAIN,	0x06},
	{R367CAB_EQU_CRL_LD_SEN,	0x85},
	{R367CAB_EQU_CRL_LD_VAL,	0xe2},
	{R367CAB_EQU_CRL_TFR,	0x20},
	{R367CAB_EQU_CRL_BISTH_LO,	0x00},
	{R367CAB_EQU_CRL_BISTH_HI,	0x00},
	{R367CAB_EQU_SWEEP_RANGE_LO,	0x00},
	{R367CAB_EQU_SWEEP_RANGE_HI,	0x00},
	{R367CAB_EQU_CRL_LIMITER,	0x40},
	{R367CAB_EQU_MODULUS_MAP,	0x90},
	{R367CAB_EQU_PNT_GAIN,	0xa7},
	{R367CAB_FEC_AC_CTR_0,	0x16},
	{R367CAB_FEC_AC_CTR_1,	0x0b},
	{R367CAB_FEC_AC_CTR_2,	0x88},
	{R367CAB_FEC_AC_CTR_3,	0x02},
	{R367CAB_FEC_STATUS,	0x12},
	{R367CAB_RS_COUNTER_0,	0x7d},
	{R367CAB_RS_COUNTER_1,	0xd0},
	{R367CAB_RS_COUNTER_2,	0x19},
	{R367CAB_RS_COUNTER_3,	0x0b},
	{R367CAB_RS_COUNTER_4,	0xa3},
	{R367CAB_RS_COUNTER_5,	0x00},
	{R367CAB_BERT_0,	0x01},
	{R367CAB_BERT_1,	0x25},
	{R367CAB_BERT_2,	0x41},
	{R367CAB_BERT_3,	0x39},
	{R367CAB_OUTFORMAT_0,	0xc2},
	{R367CAB_OUTFORMAT_1,	0x22},
	{R367CAB_SMOOTHER_2,	0x28},
	{R367CAB_TSMF_CTRL_0,	0x01},
	{R367CAB_TSMF_CTRL_1,	0xc6},
	{R367CAB_TSMF_CTRL_3,	0x43},
	{R367CAB_TS_ON_ID_0,	0x00},
	{R367CAB_TS_ON_ID_1,	0x00},
	{R367CAB_TS_ON_ID_2,	0x00},
	{R367CAB_TS_ON_ID_3,	0x00},
	{R367CAB_RE_STATUS_0,	0x00},
	{R367CAB_RE_STATUS_1,	0x00},
	{R367CAB_RE_STATUS_2,	0x00},
	{R367CAB_RE_STATUS_3,	0x00},
	{R367CAB_TS_STATUS_0,	0x00},
	{R367CAB_TS_STATUS_1,	0x00},
	{R367CAB_TS_STATUS_2,	0xa0},
	{R367CAB_TS_STATUS_3,	0x00},
	{R367CAB_T_O_ID_0,	0x00},
	{R367CAB_T_O_ID_1,	0x00},
	{R367CAB_T_O_ID_2,	0x00},
	{R367CAB_T_O_ID_3,	0x00},
	{0x0000,		0x00},
};

/**************
 *
 * Defaults / Tables for Digital Devices C/T Cine/Flex devices
 *
 **************/

static const struct st_register def0367dd_ofdm[] = {
	{R367TER_AGC2MAX,                0xff},
	{R367TER_AGC2MIN,                0x00},
	{R367TER_AGC1MAX,                0xff},
	{R367TER_AGC1MIN,                0x00},
	{R367TER_AGCR,                   0xbc},
	{R367TER_AGC2TH,                 0x00},
	{R367TER_AGCCTRL1,               0x85},
	{R367TER_AGCCTRL2,               0x1f},
	{R367TER_AGC1VAL1,               0x00},
	{R367TER_AGC1VAL2,               0x00},
	{R367TER_AGC2VAL1,               0x6f},
	{R367TER_AGC2VAL2,               0x05},
	{R367TER_AGC2PGA,                0x00},
	{R367TER_OVF_RATE1,              0x00},
	{R367TER_OVF_RATE2,              0x00},
	{R367TER_GAIN_SRC1,              0x2b},
	{R367TER_GAIN_SRC2,              0x04},
	{R367TER_INC_DEROT1,             0x55},
	{R367TER_INC_DEROT2,             0x55},
	{R367TER_PPM_CPAMP_DIR,          0x2c},
	{R367TER_PPM_CPAMP_INV,          0x00},
	{R367TER_FREESTFE_1,             0x00},
	{R367TER_FREESTFE_2,             0x1c},
	{R367TER_DCOFFSET,               0x00},
	{R367TER_EN_PROCESS,             0x05},
	{R367TER_SDI_SMOOTHER,           0x80},
	{R367TER_FE_LOOP_OPEN,           0x1c},
	{R367TER_FREQOFF1,               0x00},
	{R367TER_FREQOFF2,               0x00},
	{R367TER_FREQOFF3,               0x00},
	{R367TER_TIMOFF1,                0x00},
	{R367TER_TIMOFF2,                0x00},
	{R367TER_EPQ,                    0x02},
	{R367TER_EPQAUTO,                0x01},
	{R367TER_SYR_UPDATE,             0xf5},
	{R367TER_CHPFREE,                0x00},
	{R367TER_PPM_STATE_MAC,          0x23},
	{R367TER_INR_THRESHOLD,          0xff},
	{R367TER_EPQ_TPS_ID_CELL,        0xf9},
	{R367TER_EPQ_CFG,                0x00},
	{R367TER_EPQ_STATUS,             0x01},
	{R367TER_AUTORELOCK,             0x81},
	{R367TER_BER_THR_VMSB,           0x00},
	{R367TER_BER_THR_MSB,            0x00},
	{R367TER_BER_THR_LSB,            0x00},
	{R367TER_CCD,                    0x83},
	{R367TER_SPECTR_CFG,             0x00},
	{R367TER_CHC_DUMMY,              0x18},
	{R367TER_INC_CTL,                0x88},
	{R367TER_INCTHRES_COR1,          0xb4},
	{R367TER_INCTHRES_COR2,          0x96},
	{R367TER_INCTHRES_DET1,          0x0e},
	{R367TER_INCTHRES_DET2,          0x11},
	{R367TER_IIR_CELLNB,             0x8d},
	{R367TER_IIRCX_COEFF1_MSB,       0x00},
	{R367TER_IIRCX_COEFF1_LSB,       0x00},
	{R367TER_IIRCX_COEFF2_MSB,       0x09},
	{R367TER_IIRCX_COEFF2_LSB,       0x18},
	{R367TER_IIRCX_COEFF3_MSB,       0x14},
	{R367TER_IIRCX_COEFF3_LSB,       0x9c},
	{R367TER_IIRCX_COEFF4_MSB,       0x00},
	{R367TER_IIRCX_COEFF4_LSB,       0x00},
	{R367TER_IIRCX_COEFF5_MSB,       0x36},
	{R367TER_IIRCX_COEFF5_LSB,       0x42},
	{R367TER_FEPATH_CFG,             0x00},
	{R367TER_PMC1_FUNC,              0x65},
	{R367TER_PMC1_FOR,               0x00},
	{R367TER_PMC2_FUNC,              0x00},
	{R367TER_STATUS_ERR_DA,          0xe0},
	{R367TER_DIG_AGC_R,              0xfe},
	{R367TER_COMAGC_TARMSB,          0x0b},
	{R367TER_COM_AGC_TAR_ENMODE,     0x41},
	{R367TER_COM_AGC_CFG,            0x3e},
	{R367TER_COM_AGC_GAIN1,          0x39},
	{R367TER_AUT_AGC_TARGETMSB,      0x0b},
	{R367TER_LOCK_DET_MSB,           0x01},
	{R367TER_AGCTAR_LOCK_LSBS,       0x40},
	{R367TER_AUT_GAIN_EN,            0xf4},
	{R367TER_AUT_CFG,                0xf0},
	{R367TER_LOCKN,                  0x23},
	{R367TER_INT_X_3,                0x00},
	{R367TER_INT_X_2,                0x03},
	{R367TER_INT_X_1,                0x8d},
	{R367TER_INT_X_0,                0xa0},
	{R367TER_MIN_ERRX_MSB,           0x00},
	{R367TER_COR_CTL,                0x00},
	{R367TER_COR_STAT,               0xf6},
	{R367TER_COR_INTEN,              0x00},
	{R367TER_COR_INTSTAT,            0x3f},
	{R367TER_COR_MODEGUARD,          0x03},
	{R367TER_AGC_CTL,                0x08},
	{R367TER_AGC_MANUAL1,            0x00},
	{R367TER_AGC_MANUAL2,            0x00},
	{R367TER_AGC_TARG,               0x16},
	{R367TER_AGC_GAIN1,              0x53},
	{R367TER_AGC_GAIN2,              0x1d},
	{R367TER_RESERVED_1,             0x00},
	{R367TER_RESERVED_2,             0x00},
	{R367TER_RESERVED_3,             0x00},
	{R367TER_CAS_CTL,                0x44},
	{R367TER_CAS_FREQ,               0xb3},
	{R367TER_CAS_DAGCGAIN,           0x12},
	{R367TER_SYR_CTL,                0x04},
	{R367TER_SYR_STAT,               0x10},
	{R367TER_SYR_NCO1,               0x00},
	{R367TER_SYR_NCO2,               0x00},
	{R367TER_SYR_OFFSET1,            0x00},
	{R367TER_SYR_OFFSET2,            0x00},
	{R367TER_FFT_CTL,                0x00},
	{R367TER_SCR_CTL,                0x70},
	{R367TER_PPM_CTL1,               0xf8},
	{R367TER_TRL_CTL,                0xac},
	{R367TER_TRL_NOMRATE1,           0x1e},
	{R367TER_TRL_NOMRATE2,           0x58},
	{R367TER_TRL_TIME1,              0x1d},
	{R367TER_TRL_TIME2,              0xfc},
	{R367TER_CRL_CTL,                0x24},
	{R367TER_CRL_FREQ1,              0xad},
	{R367TER_CRL_FREQ2,              0x9d},
	{R367TER_CRL_FREQ3,              0xff},
	{R367TER_CHC_CTL,                0x01},
	{R367TER_CHC_SNR,                0xf0},
	{R367TER_BDI_CTL,                0x00},
	{R367TER_DMP_CTL,                0x00},
	{R367TER_TPS_RCVD1,              0x30},
	{R367TER_TPS_RCVD2,              0x02},
	{R367TER_TPS_RCVD3,              0x01},
	{R367TER_TPS_RCVD4,              0x00},
	{R367TER_TPS_ID_CELL1,           0x00},
	{R367TER_TPS_ID_CELL2,           0x00},
	{R367TER_TPS_RCVD5_SET1,         0x02},
	{R367TER_TPS_SET2,               0x02},
	{R367TER_TPS_SET3,               0x01},
	{R367TER_TPS_CTL,                0x00},
	{R367TER_CTL_FFTOSNUM,           0x34},
	{R367TER_TESTSELECT,             0x09},
	{R367TER_MSC_REV,                0x0a},
	{R367TER_PIR_CTL,                0x00},
	{R367TER_SNR_CARRIER1,           0xa1},
	{R367TER_SNR_CARRIER2,           0x9a},
	{R367TER_PPM_CPAMP,              0x2c},
	{R367TER_TSM_AP0,                0x00},
	{R367TER_TSM_AP1,                0x00},
	{R367TER_TSM_AP2,                0x00},
	{R367TER_TSM_AP3,                0x00},
	{R367TER_TSM_AP4,                0x00},
	{R367TER_TSM_AP5,                0x00},
	{R367TER_TSM_AP6,                0x00},
	{R367TER_TSM_AP7,                0x00},
	{R367TER_CONSTMODE,              0x01},
	{R367TER_CONSTCARR1,             0x00},
	{R367TER_CONSTCARR2,             0x00},
	{R367TER_ICONSTEL,               0x0a},
	{R367TER_QCONSTEL,               0x15},
	{R367TER_TSTBISTRES0,            0x00},
	{R367TER_TSTBISTRES1,            0x00},
	{R367TER_TSTBISTRES2,            0x28},
	{R367TER_TSTBISTRES3,            0x00},
	{R367TER_SYR_TARGET_FFTADJT_MSB, 0x00},
	{R367TER_SYR_TARGET_FFTADJT_LSB, 0x00},
	{R367TER_SYR_TARGET_CHCADJT_MSB, 0x00},
	{R367TER_SYR_TARGET_CHCADJT_LSB, 0x00},
	{R367TER_SYR_FLAG,               0x00},
	{R367TER_CRL_TARGET1,            0x00},
	{R367TER_CRL_TARGET2,            0x00},
	{R367TER_CRL_TARGET3,            0x00},
	{R367TER_CRL_TARGET4,            0x00},
	{R367TER_CRL_FLAG,               0x00},
	{R367TER_TRL_TARGET1,            0x00},
	{R367TER_TRL_TARGET2,            0x00},
	{R367TER_TRL_CHC,                0x00},
	{R367TER_CHC_SNR_TARG,           0x00},
	{R367TER_TOP_TRACK,              0x00},
	{R367TER_TRACKER_FREE1,          0x00},
	{R367TER_ERROR_CRL1,             0x00},
	{R367TER_ERROR_CRL2,             0x00},
	{R367TER_ERROR_CRL3,             0x00},
	{R367TER_ERROR_CRL4,             0x00},
	{R367TER_DEC_NCO1,               0x2c},
	{R367TER_DEC_NCO2,               0x0f},
	{R367TER_DEC_NCO3,               0x20},
	{R367TER_SNR,                    0xf1},
	{R367TER_SYR_FFTADJ1,            0x00},
	{R367TER_SYR_FFTADJ2,            0x00},
	{R367TER_SYR_CHCADJ1,            0x00},
	{R367TER_SYR_CHCADJ2,            0x00},
	{R367TER_SYR_OFF,                0x00},
	{R367TER_PPM_OFFSET1,            0x00},
	{R367TER_PPM_OFFSET2,            0x03},
	{R367TER_TRACKER_FREE2,          0x00},
	{R367TER_DEBG_LT10,              0x00},
	{R367TER_DEBG_LT11,              0x00},
	{R367TER_DEBG_LT12,              0x00},
	{R367TER_DEBG_LT13,              0x00},
	{R367TER_DEBG_LT14,              0x00},
	{R367TER_DEBG_LT15,              0x00},
	{R367TER_DEBG_LT16,              0x00},
	{R367TER_DEBG_LT17,              0x00},
	{R367TER_DEBG_LT18,              0x00},
	{R367TER_DEBG_LT19,              0x00},
	{R367TER_DEBG_LT1A,              0x00},
	{R367TER_DEBG_LT1B,              0x00},
	{R367TER_DEBG_LT1C,              0x00},
	{R367TER_DEBG_LT1D,              0x00},
	{R367TER_DEBG_LT1E,              0x00},
	{R367TER_DEBG_LT1F,              0x00},
	{R367TER_RCCFGH,                 0x00},
	{R367TER_RCCFGM,                 0x00},
	{R367TER_RCCFGL,                 0x00},
	{R367TER_RCINSDELH,              0x00},
	{R367TER_RCINSDELM,              0x00},
	{R367TER_RCINSDELL,              0x00},
	{R367TER_RCSTATUS,               0x00},
	{R367TER_RCSPEED,                0x6f},
	{R367TER_RCDEBUGM,               0xe7},
	{R367TER_RCDEBUGL,               0x9b},
	{R367TER_RCOBSCFG,               0x00},
	{R367TER_RCOBSM,                 0x00},
	{R367TER_RCOBSL,                 0x00},
	{R367TER_RCFECSPY,               0x00},
	{R367TER_RCFSPYCFG,              0x00},
	{R367TER_RCFSPYDATA,             0x00},
	{R367TER_RCFSPYOUT,              0x00},
	{R367TER_RCFSTATUS,              0x00},
	{R367TER_RCFGOODPACK,            0x00},
	{R367TER_RCFPACKCNT,             0x00},
	{R367TER_RCFSPYMISC,             0x00},
	{R367TER_RCFBERCPT4,             0x00},
	{R367TER_RCFBERCPT3,             0x00},
	{R367TER_RCFBERCPT2,             0x00},
	{R367TER_RCFBERCPT1,             0x00},
	{R367TER_RCFBERCPT0,             0x00},
	{R367TER_RCFBERERR2,             0x00},
	{R367TER_RCFBERERR1,             0x00},
	{R367TER_RCFBERERR0,             0x00},
	{R367TER_RCFSTATESM,             0x00},
	{R367TER_RCFSTATESL,             0x00},
	{R367TER_RCFSPYBER,              0x00},
	{R367TER_RCFSPYDISTM,            0x00},
	{R367TER_RCFSPYDISTL,            0x00},
	{R367TER_RCFSPYOBS7,             0x00},
	{R367TER_RCFSPYOBS6,             0x00},
	{R367TER_RCFSPYOBS5,             0x00},
	{R367TER_RCFSPYOBS4,             0x00},
	{R367TER_RCFSPYOBS3,             0x00},
	{R367TER_RCFSPYOBS2,             0x00},
	{R367TER_RCFSPYOBS1,             0x00},
	{R367TER_RCFSPYOBS0,             0x00},
	{R367TER_FECM,                   0x01},
	{R367TER_VTH12,                  0xff},
	{R367TER_VTH23,                  0xa1},
	{R367TER_VTH34,                  0x64},
	{R367TER_VTH56,                  0x40},
	{R367TER_VTH67,                  0x00},
	{R367TER_VTH78,                  0x2c},
	{R367TER_VITCURPUN,              0x12},
	{R367TER_VERROR,                 0x01},
	{R367TER_PRVIT,                  0x3f},
	{R367TER_VAVSRVIT,               0x00},
	{R367TER_VSTATUSVIT,             0xbd},
	{R367TER_VTHINUSE,               0xa1},
	{R367TER_KDIV12,                 0x20},
	{R367TER_KDIV23,                 0x40},
	{R367TER_KDIV34,                 0x20},
	{R367TER_KDIV56,                 0x30},
	{R367TER_KDIV67,                 0x00},
	{R367TER_KDIV78,                 0x30},
	{R367TER_SIGPOWER,               0x54},
	{R367TER_DEMAPVIT,               0x40},
	{R367TER_VITSCALE,               0x00},
	{R367TER_FFEC1PRG,               0x00},
	{R367TER_FVITCURPUN,             0x12},
	{R367TER_FVERROR,                0x01},
	{R367TER_FVSTATUSVIT,            0xbd},
	{R367TER_DEBUG_LT1,              0x00},
	{R367TER_DEBUG_LT2,              0x00},
	{R367TER_DEBUG_LT3,              0x00},
	{R367TER_TSTSFMET,               0x00},
	{R367TER_SELOUT,                 0x00},
	{R367TER_TSYNC,                  0x00},
	{R367TER_TSTERR,                 0x00},
	{R367TER_TSFSYNC,                0x00},
	{R367TER_TSTSFERR,               0x00},
	{R367TER_TSTTSSF1,               0x01},
	{R367TER_TSTTSSF2,               0x1f},
	{R367TER_TSTTSSF3,               0x00},
	{R367TER_TSTTS1,                 0x00},
	{R367TER_TSTTS2,                 0x1f},
	{R367TER_TSTTS3,                 0x01},
	{R367TER_TSTTS4,                 0x00},
	{R367TER_TSTTSRC,                0x00},
	{R367TER_TSTTSRS,                0x00},
	{R367TER_TSSTATEM,               0xb0},
	{R367TER_TSSTATEL,               0x40},
	{R367TER_TSCFGH,                 0x80},
	{R367TER_TSCFGM,                 0x00},
	{R367TER_TSCFGL,                 0x20},
	{R367TER_TSSYNC,                 0x00},
	{R367TER_TSINSDELH,              0x00},
	{R367TER_TSINSDELM,              0x00},
	{R367TER_TSINSDELL,              0x00},
	{R367TER_TSDIVN,                 0x03},
	{R367TER_TSDIVPM,                0x00},
	{R367TER_TSDIVPL,                0x00},
	{R367TER_TSDIVQM,                0x00},
	{R367TER_TSDIVQL,                0x00},
	{R367TER_TSDILSTKM,              0x00},
	{R367TER_TSDILSTKL,              0x00},
	{R367TER_TSSPEED,                0x6f},
	{R367TER_TSSTATUS,               0x81},
	{R367TER_TSSTATUS2,              0x6a},
	{R367TER_TSBITRATEM,             0x0f},
	{R367TER_TSBITRATEL,             0xc6},
	{R367TER_TSPACKLENM,             0x00},
	{R367TER_TSPACKLENL,             0xfc},
	{R367TER_TSBLOCLENM,             0x0a},
	{R367TER_TSBLOCLENL,             0x80},
	{R367TER_TSDLYH,                 0x90},
	{R367TER_TSDLYM,                 0x68},
	{R367TER_TSDLYL,                 0x01},
	{R367TER_TSNPDAV,                0x00},
	{R367TER_TSBUFSTATH,             0x00},
	{R367TER_TSBUFSTATM,             0x00},
	{R367TER_TSBUFSTATL,             0x00},
	{R367TER_TSDEBUGM,               0xcf},
	{R367TER_TSDEBUGL,               0x1e},
	{R367TER_TSDLYSETH,              0x00},
	{R367TER_TSDLYSETM,              0x68},
	{R367TER_TSDLYSETL,              0x00},
	{R367TER_TSOBSCFG,               0x00},
	{R367TER_TSOBSM,                 0x47},
	{R367TER_TSOBSL,                 0x1f},
	{R367TER_ERRCTRL1,               0x95},
	{R367TER_ERRCNT1H,               0x80},
	{R367TER_ERRCNT1M,               0x00},
	{R367TER_ERRCNT1L,               0x00},
	{R367TER_ERRCTRL2,               0x95},
	{R367TER_ERRCNT2H,               0x00},
	{R367TER_ERRCNT2M,               0x00},
	{R367TER_ERRCNT2L,               0x00},
	{R367TER_FECSPY,                 0x88},
	{R367TER_FSPYCFG,                0x2c},
	{R367TER_FSPYDATA,               0x3a},
	{R367TER_FSPYOUT,                0x06},
	{R367TER_FSTATUS,                0x61},
	{R367TER_FGOODPACK,              0xff},
	{R367TER_FPACKCNT,               0xff},
	{R367TER_FSPYMISC,               0x66},
	{R367TER_FBERCPT4,               0x00},
	{R367TER_FBERCPT3,               0x00},
	{R367TER_FBERCPT2,               0x36},
	{R367TER_FBERCPT1,               0x36},
	{R367TER_FBERCPT0,               0x14},
	{R367TER_FBERERR2,               0x00},
	{R367TER_FBERERR1,               0x03},
	{R367TER_FBERERR0,               0x28},
	{R367TER_FSTATESM,               0x00},
	{R367TER_FSTATESL,               0x02},
	{R367TER_FSPYBER,                0x00},
	{R367TER_FSPYDISTM,              0x01},
	{R367TER_FSPYDISTL,              0x9f},
	{R367TER_FSPYOBS7,               0xc9},
	{R367TER_FSPYOBS6,               0x99},
	{R367TER_FSPYOBS5,               0x08},
	{R367TER_FSPYOBS4,               0xec},
	{R367TER_FSPYOBS3,               0x01},
	{R367TER_FSPYOBS2,               0x0f},
	{R367TER_FSPYOBS1,               0xf5},
	{R367TER_FSPYOBS0,               0x08},
	{R367TER_SFDEMAP,                0x40},
	{R367TER_SFERROR,                0x00},
	{R367TER_SFAVSR,                 0x30},
	{R367TER_SFECSTATUS,             0xcc},
	{R367TER_SFKDIV12,               0x20},
	{R367TER_SFKDIV23,               0x40},
	{R367TER_SFKDIV34,               0x20},
	{R367TER_SFKDIV56,               0x20},
	{R367TER_SFKDIV67,               0x00},
	{R367TER_SFKDIV78,               0x20},
	{R367TER_SFDILSTKM,              0x00},
	{R367TER_SFDILSTKL,              0x00},
	{R367TER_SFSTATUS,               0xb5},
	{R367TER_SFDLYH,                 0x90},
	{R367TER_SFDLYM,                 0x60},
	{R367TER_SFDLYL,                 0x01},
	{R367TER_SFDLYSETH,              0xc0},
	{R367TER_SFDLYSETM,              0x60},
	{R367TER_SFDLYSETL,              0x00},
	{R367TER_SFOBSCFG,               0x00},
	{R367TER_SFOBSM,                 0x47},
	{R367TER_SFOBSL,                 0x05},
	{R367TER_SFECINFO,               0x40},
	{R367TER_SFERRCTRL,              0x74},
	{R367TER_SFERRCNTH,              0x80},
	{R367TER_SFERRCNTM,              0x00},
	{R367TER_SFERRCNTL,              0x00},
	{R367TER_SYMBRATEM,              0x2f},
	{R367TER_SYMBRATEL,              0x50},
	{R367TER_SYMBSTATUS,             0x7f},
	{R367TER_SYMBCFG,                0x00},
	{R367TER_SYMBFIFOM,              0xf4},
	{R367TER_SYMBFIFOL,              0x0d},
	{R367TER_SYMBOFFSM,              0xf0},
	{R367TER_SYMBOFFSL,              0x2d},
	{0x0000, 0x00} /* EOT */
};

static const struct st_register def0367dd_qam[] = {
	{R367CAB_CTRL_1,                  0x06}, /* Original 0x04 */
	{R367CAB_CTRL_2,                  0x03},
	{R367CAB_IT_STATUS1,              0x2b},
	{R367CAB_IT_STATUS2,              0x08},
	{R367CAB_IT_EN1,                  0x00},
	{R367CAB_IT_EN2,                  0x00},
	{R367CAB_CTRL_STATUS,             0x04},
	{R367CAB_TEST_CTL,                0x00},
	{R367CAB_AGC_CTL,                 0x73},
	{R367CAB_AGC_IF_CFG,              0x50},
	{R367CAB_AGC_RF_CFG,              0x02}, /* RF Freeze */
	{R367CAB_AGC_PWM_CFG,             0x03},
	{R367CAB_AGC_PWR_REF_L,           0x5a},
	{R367CAB_AGC_PWR_REF_H,           0x00},
	{R367CAB_AGC_RF_TH_L,             0xff},
	{R367CAB_AGC_RF_TH_H,             0x07},
	{R367CAB_AGC_IF_LTH_L,            0x00},
	{R367CAB_AGC_IF_LTH_H,            0x08},
	{R367CAB_AGC_IF_HTH_L,            0xff},
	{R367CAB_AGC_IF_HTH_H,            0x07},
	{R367CAB_AGC_PWR_RD_L,            0xa0},
	{R367CAB_AGC_PWR_RD_M,            0xe9},
	{R367CAB_AGC_PWR_RD_H,            0x03},
	{R367CAB_AGC_PWM_IFCMD_L,         0xe4},
	{R367CAB_AGC_PWM_IFCMD_H,         0x00},
	{R367CAB_AGC_PWM_RFCMD_L,         0xff},
	{R367CAB_AGC_PWM_RFCMD_H,         0x07},
	{R367CAB_IQDEM_CFG,               0x01},
	{R367CAB_MIX_NCO_LL,              0x22},
	{R367CAB_MIX_NCO_HL,              0x96},
	{R367CAB_MIX_NCO_HH,              0x55},
	{R367CAB_SRC_NCO_LL,              0xff},
	{R367CAB_SRC_NCO_LH,              0x0c},
	{R367CAB_SRC_NCO_HL,              0xf5},
	{R367CAB_SRC_NCO_HH,              0x20},
	{R367CAB_IQDEM_GAIN_SRC_L,        0x06},
	{R367CAB_IQDEM_GAIN_SRC_H,        0x01},
	{R367CAB_IQDEM_DCRM_CFG_LL,       0xfe},
	{R367CAB_IQDEM_DCRM_CFG_LH,       0xff},
	{R367CAB_IQDEM_DCRM_CFG_HL,       0x0f},
	{R367CAB_IQDEM_DCRM_CFG_HH,       0x00},
	{R367CAB_IQDEM_ADJ_COEFF0,        0x34},
	{R367CAB_IQDEM_ADJ_COEFF1,        0xae},
	{R367CAB_IQDEM_ADJ_COEFF2,        0x46},
	{R367CAB_IQDEM_ADJ_COEFF3,        0x77},
	{R367CAB_IQDEM_ADJ_COEFF4,        0x96},
	{R367CAB_IQDEM_ADJ_COEFF5,        0x69},
	{R367CAB_IQDEM_ADJ_COEFF6,        0xc7},
	{R367CAB_IQDEM_ADJ_COEFF7,        0x01},
	{R367CAB_IQDEM_ADJ_EN,            0x04},
	{R367CAB_IQDEM_ADJ_AGC_REF,       0x94},
	{R367CAB_ALLPASSFILT1,            0xc9},
	{R367CAB_ALLPASSFILT2,            0x2d},
	{R367CAB_ALLPASSFILT3,            0xa3},
	{R367CAB_ALLPASSFILT4,            0xfb},
	{R367CAB_ALLPASSFILT5,            0xf6},
	{R367CAB_ALLPASSFILT6,            0x45},
	{R367CAB_ALLPASSFILT7,            0x6f},
	{R367CAB_ALLPASSFILT8,            0x7e},
	{R367CAB_ALLPASSFILT9,            0x05},
	{R367CAB_ALLPASSFILT10,           0x0a},
	{R367CAB_ALLPASSFILT11,           0x51},
	{R367CAB_TRL_AGC_CFG,             0x20},
	{R367CAB_TRL_LPF_CFG,             0x28},
	{R367CAB_TRL_LPF_ACQ_GAIN,        0x44},
	{R367CAB_TRL_LPF_TRK_GAIN,        0x22},
	{R367CAB_TRL_LPF_OUT_GAIN,        0x03},
	{R367CAB_TRL_LOCKDET_LTH,         0x04},
	{R367CAB_TRL_LOCKDET_HTH,         0x11},
	{R367CAB_TRL_LOCKDET_TRGVAL,      0x20},
	{R367CAB_IQ_QAM,                  0x01},
	{R367CAB_FSM_STATE,               0xa0},
	{R367CAB_FSM_CTL,                 0x08},
	{R367CAB_FSM_STS,                 0x0c},
	{R367CAB_FSM_SNR0_HTH,            0x00},
	{R367CAB_FSM_SNR1_HTH,            0x00},
	{R367CAB_FSM_SNR2_HTH,            0x00},
	{R367CAB_FSM_SNR0_LTH,            0x00},
	{R367CAB_FSM_SNR1_LTH,            0x00},
	{R367CAB_FSM_EQA1_HTH,            0x00},
	{R367CAB_FSM_TEMPO,               0x32},
	{R367CAB_FSM_CONFIG,              0x03},
	{R367CAB_EQU_I_TESTTAP_L,         0x11},
	{R367CAB_EQU_I_TESTTAP_M,         0x00},
	{R367CAB_EQU_I_TESTTAP_H,         0x00},
	{R367CAB_EQU_TESTAP_CFG,          0x00},
	{R367CAB_EQU_Q_TESTTAP_L,         0xff},
	{R367CAB_EQU_Q_TESTTAP_M,         0x00},
	{R367CAB_EQU_Q_TESTTAP_H,         0x00},
	{R367CAB_EQU_TAP_CTRL,            0x00},
	{R367CAB_EQU_CTR_CRL_CONTROL_L,   0x11},
	{R367CAB_EQU_CTR_CRL_CONTROL_H,   0x05},
	{R367CAB_EQU_CTR_HIPOW_L,         0x00},
	{R367CAB_EQU_CTR_HIPOW_H,         0x00},
	{R367CAB_EQU_I_EQU_LO,            0xef},
	{R367CAB_EQU_I_EQU_HI,            0x00},
	{R367CAB_EQU_Q_EQU_LO,            0xee},
	{R367CAB_EQU_Q_EQU_HI,            0x00},
	{R367CAB_EQU_MAPPER,              0xc5},
	{R367CAB_EQU_SWEEP_RATE,          0x80},
	{R367CAB_EQU_SNR_LO,              0x64},
	{R367CAB_EQU_SNR_HI,              0x03},
	{R367CAB_EQU_GAMMA_LO,            0x00},
	{R367CAB_EQU_GAMMA_HI,            0x00},
	{R367CAB_EQU_ERR_GAIN,            0x36},
	{R367CAB_EQU_RADIUS,              0xaa},
	{R367CAB_EQU_FFE_MAINTAP,         0x00},
	{R367CAB_EQU_FFE_LEAKAGE,         0x63},
	{R367CAB_EQU_FFE_MAINTAP_POS,     0xdf},
	{R367CAB_EQU_GAIN_WIDE,           0x88},
	{R367CAB_EQU_GAIN_NARROW,         0x41},
	{R367CAB_EQU_CTR_LPF_GAIN,        0xd1},
	{R367CAB_EQU_CRL_LPF_GAIN,        0xa7},
	{R367CAB_EQU_GLOBAL_GAIN,         0x06},
	{R367CAB_EQU_CRL_LD_SEN,          0x85},
	{R367CAB_EQU_CRL_LD_VAL,          0xe2},
	{R367CAB_EQU_CRL_TFR,             0x20},
	{R367CAB_EQU_CRL_BISTH_LO,        0x00},
	{R367CAB_EQU_CRL_BISTH_HI,        0x00},
	{R367CAB_EQU_SWEEP_RANGE_LO,      0x00},
	{R367CAB_EQU_SWEEP_RANGE_HI,      0x00},
	{R367CAB_EQU_CRL_LIMITER,         0x40},
	{R367CAB_EQU_MODULUS_MAP,         0x90},
	{R367CAB_EQU_PNT_GAIN,            0xa7},
	{R367CAB_FEC_AC_CTR_0,            0x16},
	{R367CAB_FEC_AC_CTR_1,            0x0b},
	{R367CAB_FEC_AC_CTR_2,            0x88},
	{R367CAB_FEC_AC_CTR_3,            0x02},
	{R367CAB_FEC_STATUS,              0x12},
	{R367CAB_RS_COUNTER_0,            0x7d},
	{R367CAB_RS_COUNTER_1,            0xd0},
	{R367CAB_RS_COUNTER_2,            0x19},
	{R367CAB_RS_COUNTER_3,            0x0b},
	{R367CAB_RS_COUNTER_4,            0xa3},
	{R367CAB_RS_COUNTER_5,            0x00},
	{R367CAB_BERT_0,                  0x01},
	{R367CAB_BERT_1,                  0x25},
	{R367CAB_BERT_2,                  0x41},
	{R367CAB_BERT_3,                  0x39},
	{R367CAB_OUTFORMAT_0,             0xc2},
	{R367CAB_OUTFORMAT_1,             0x22},
	{R367CAB_SMOOTHER_2,              0x28},
	{R367CAB_TSMF_CTRL_0,             0x01},
	{R367CAB_TSMF_CTRL_1,             0xc6},
	{R367CAB_TSMF_CTRL_3,             0x43},
	{R367CAB_TS_ON_ID_0,              0x00},
	{R367CAB_TS_ON_ID_1,              0x00},
	{R367CAB_TS_ON_ID_2,              0x00},
	{R367CAB_TS_ON_ID_3,              0x00},
	{R367CAB_RE_STATUS_0,             0x00},
	{R367CAB_RE_STATUS_1,             0x00},
	{R367CAB_RE_STATUS_2,             0x00},
	{R367CAB_RE_STATUS_3,             0x00},
	{R367CAB_TS_STATUS_0,             0x00},
	{R367CAB_TS_STATUS_1,             0x00},
	{R367CAB_TS_STATUS_2,             0xa0},
	{R367CAB_TS_STATUS_3,             0x00},
	{R367CAB_T_O_ID_0,                0x00},
	{R367CAB_T_O_ID_1,                0x00},
	{R367CAB_T_O_ID_2,                0x00},
	{R367CAB_T_O_ID_3,                0x00},
	{0x0000, 0x00} /* EOT */
};

static const struct st_register def0367dd_base[] = {
	{R367TER_IOCFG0,     0x80},
	{R367TER_DAC0R,      0x00},
	{R367TER_IOCFG1,     0x00},
	{R367TER_DAC1R,      0x00},
	{R367TER_IOCFG2,     0x00},
	{R367TER_SDFR,       0x00},
	{R367TER_AUX_CLK,    0x00},
	{R367TER_FREESYS1,   0x00},
	{R367TER_FREESYS2,   0x00},
	{R367TER_FREESYS3,   0x00},
	{R367TER_GPIO_CFG,   0x55},
	{R367TER_GPIO_CMD,   0x01},
	{R367TER_TSTRES,     0x00},
	{R367TER_ANACTRL,    0x00},
	{R367TER_TSTBUS,     0x00},
	{R367TER_RF_AGC2,    0x20},
	{R367TER_ANADIGCTRL, 0x0b},
	{R367TER_PLLMDIV,    0x01},
	{R367TER_PLLNDIV,    0x08},
	{R367TER_PLLSETUP,   0x18},
	{R367TER_DUAL_AD12,  0x04},
	{R367TER_TSTBIST,    0x00},
	{0x0000, 0x00} /* EOT */
};

/*
 * Tables combined
 */

static const struct
st_register *stv0367_deftabs[STV0367_DEFTAB_MAX][STV0367_TAB_MAX] = {
	/* generic default/init tabs */
	{ def0367ter, def0367cab, NULL },
	/* default tabs for digital devices cards/flex modules */
	{ def0367dd_ofdm, def0367dd_qam, def0367dd_base },
};

#endif