Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) /* SPDX-License-Identifier: GPL-2.0-or-later */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3)  * Realtek RTL2832 DVB-T demodulator driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4)  *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5)  * Copyright (C) 2012 Thomas Mair <thomas.mair86@gmail.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6)  * Copyright (C) 2012-2014 Antti Palosaari <crope@iki.fi>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7)  */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) #ifndef RTL2832_PRIV_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) #define RTL2832_PRIV_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) #include <linux/regmap.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) #include <linux/math64.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) #include <linux/bitops.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) #include <media/dvb_frontend.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) #include <media/dvb_math.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) #include "rtl2832.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) struct rtl2832_dev {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) 	struct rtl2832_platform_data *pdata;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 	struct i2c_client *client;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) 	struct regmap_config regmap_config;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) 	struct regmap *regmap;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 	struct i2c_mux_core *muxc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) 	struct dvb_frontend fe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 	enum fe_status fe_status;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) 	u64 post_bit_error_prev; /* for old DVBv3 read_ber() calculation */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) 	u64 post_bit_error;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 	u64 post_bit_count;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) 	bool sleeping;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 	struct delayed_work i2c_gate_work;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) 	unsigned long filters; /* PID filter */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) 	bool slave_ts;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) struct rtl2832_reg_entry {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) 	u16 start_address;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 	u8 msb;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) 	u8 lsb;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) struct rtl2832_reg_value {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) 	int reg;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 	u32 value;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) /* Demod register bit names */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) enum DVBT_REG_BIT_NAME {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 	DVBT_SOFT_RST,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 	DVBT_IIC_REPEAT,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) 	DVBT_TR_WAIT_MIN_8K,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 	DVBT_RSD_BER_FAIL_VAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 	DVBT_EN_BK_TRK,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) 	DVBT_REG_PI,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 	DVBT_REG_PFREQ_1_0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) 	DVBT_PD_DA8,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) 	DVBT_LOCK_TH,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 	DVBT_BER_PASS_SCAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 	DVBT_CE_FFSM_BYPASS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 	DVBT_ALPHAIIR_N,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) 	DVBT_ALPHAIIR_DIF,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 	DVBT_EN_TRK_SPAN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 	DVBT_LOCK_TH_LEN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) 	DVBT_CCI_THRE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 	DVBT_CCI_MON_SCAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) 	DVBT_CCI_M0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 	DVBT_CCI_M1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) 	DVBT_CCI_M2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 	DVBT_CCI_M3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) 	DVBT_SPEC_INIT_0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 	DVBT_SPEC_INIT_1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 	DVBT_SPEC_INIT_2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 	DVBT_AD_EN_REG,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) 	DVBT_AD_EN_REG1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 	DVBT_EN_BBIN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) 	DVBT_MGD_THD0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) 	DVBT_MGD_THD1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) 	DVBT_MGD_THD2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) 	DVBT_MGD_THD3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 	DVBT_MGD_THD4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 	DVBT_MGD_THD5,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 	DVBT_MGD_THD6,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 	DVBT_MGD_THD7,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 	DVBT_EN_CACQ_NOTCH,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 	DVBT_AD_AV_REF,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 	DVBT_PIP_ON,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) 	DVBT_SCALE1_B92,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) 	DVBT_SCALE1_B93,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 	DVBT_SCALE1_BA7,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) 	DVBT_SCALE1_BA9,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) 	DVBT_SCALE1_BAA,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 	DVBT_SCALE1_BAB,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 	DVBT_SCALE1_BAC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) 	DVBT_SCALE1_BB0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 	DVBT_SCALE1_BB1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) 	DVBT_KB_P1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) 	DVBT_KB_P2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 	DVBT_KB_P3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) 	DVBT_OPT_ADC_IQ,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) 	DVBT_AD_AVI,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) 	DVBT_AD_AVQ,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) 	DVBT_K1_CR_STEP12,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) 	DVBT_TRK_KS_P2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) 	DVBT_TRK_KS_I2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) 	DVBT_TR_THD_SET2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) 	DVBT_TRK_KC_P2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 	DVBT_TRK_KC_I2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) 	DVBT_CR_THD_SET2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) 	DVBT_PSET_IFFREQ,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 	DVBT_SPEC_INV,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 	DVBT_BW_INDEX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) 	DVBT_RSAMP_RATIO,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 	DVBT_CFREQ_OFF_RATIO,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) 	DVBT_FSM_STAGE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 	DVBT_RX_CONSTEL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 	DVBT_RX_HIER,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 	DVBT_RX_C_RATE_LP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 	DVBT_RX_C_RATE_HP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 	DVBT_GI_IDX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) 	DVBT_FFT_MODE_IDX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 	DVBT_RSD_BER_EST,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) 	DVBT_CE_EST_EVM,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) 	DVBT_RF_AGC_VAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 	DVBT_IF_AGC_VAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 	DVBT_DAGC_VAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) 	DVBT_SFREQ_OFF,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 	DVBT_CFREQ_OFF,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 	DVBT_POLAR_RF_AGC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 	DVBT_POLAR_IF_AGC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) 	DVBT_AAGC_HOLD,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) 	DVBT_EN_RF_AGC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 	DVBT_EN_IF_AGC,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 	DVBT_IF_AGC_MIN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) 	DVBT_IF_AGC_MAX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) 	DVBT_RF_AGC_MIN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) 	DVBT_RF_AGC_MAX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) 	DVBT_IF_AGC_MAN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 	DVBT_IF_AGC_MAN_VAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) 	DVBT_RF_AGC_MAN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) 	DVBT_RF_AGC_MAN_VAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) 	DVBT_DAGC_TRG_VAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 	DVBT_AGC_TARG_VAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) 	DVBT_LOOP_GAIN_3_0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 	DVBT_LOOP_GAIN_4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 	DVBT_VTOP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 	DVBT_KRF,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) 	DVBT_AGC_TARG_VAL_0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 	DVBT_AGC_TARG_VAL_8_1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) 	DVBT_AAGC_LOOP_GAIN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 	DVBT_LOOP_GAIN2_3_0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 	DVBT_LOOP_GAIN2_4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) 	DVBT_LOOP_GAIN3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 	DVBT_VTOP1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) 	DVBT_VTOP2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) 	DVBT_VTOP3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) 	DVBT_KRF1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) 	DVBT_KRF2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 	DVBT_KRF3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 	DVBT_KRF4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) 	DVBT_EN_GI_PGA,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) 	DVBT_THD_LOCK_UP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 	DVBT_THD_LOCK_DW,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) 	DVBT_THD_UP1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 	DVBT_THD_DW1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 	DVBT_INTER_CNT_LEN,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) 	DVBT_GI_PGA_STATE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) 	DVBT_EN_AGC_PGA,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) 	DVBT_CKOUTPAR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 	DVBT_CKOUT_PWR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) 	DVBT_SYNC_DUR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) 	DVBT_ERR_DUR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) 	DVBT_SYNC_LVL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) 	DVBT_ERR_LVL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) 	DVBT_VAL_LVL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) 	DVBT_SERIAL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) 	DVBT_SER_LSB,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 	DVBT_CDIV_PH0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) 	DVBT_CDIV_PH1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 	DVBT_MPEG_IO_OPT_2_2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) 	DVBT_MPEG_IO_OPT_1_0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 	DVBT_CKOUTPAR_PIP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 	DVBT_CKOUT_PWR_PIP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) 	DVBT_SYNC_LVL_PIP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 	DVBT_ERR_LVL_PIP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 	DVBT_VAL_LVL_PIP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) 	DVBT_CKOUTPAR_PID,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) 	DVBT_CKOUT_PWR_PID,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 	DVBT_SYNC_LVL_PID,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 	DVBT_ERR_LVL_PID,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 	DVBT_VAL_LVL_PID,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) 	DVBT_SM_PASS,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 	DVBT_UPDATE_REG_2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) 	DVBT_BTHD_P3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) 	DVBT_BTHD_D3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 	DVBT_FUNC4_REG0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) 	DVBT_FUNC4_REG1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) 	DVBT_FUNC4_REG2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) 	DVBT_FUNC4_REG3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) 	DVBT_FUNC4_REG4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) 	DVBT_FUNC4_REG5,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 	DVBT_FUNC4_REG6,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) 	DVBT_FUNC4_REG7,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) 	DVBT_FUNC4_REG8,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 	DVBT_FUNC4_REG9,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) 	DVBT_FUNC4_REG10,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) 	DVBT_FUNC5_REG0,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) 	DVBT_FUNC5_REG1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) 	DVBT_FUNC5_REG2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) 	DVBT_FUNC5_REG3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) 	DVBT_FUNC5_REG4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) 	DVBT_FUNC5_REG5,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) 	DVBT_FUNC5_REG6,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 	DVBT_FUNC5_REG7,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) 	DVBT_FUNC5_REG8,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 	DVBT_FUNC5_REG9,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 	DVBT_FUNC5_REG10,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 	DVBT_FUNC5_REG11,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) 	DVBT_FUNC5_REG12,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) 	DVBT_FUNC5_REG13,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) 	DVBT_FUNC5_REG14,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) 	DVBT_FUNC5_REG15,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) 	DVBT_FUNC5_REG16,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) 	DVBT_FUNC5_REG17,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) 	DVBT_FUNC5_REG18,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) 	DVBT_AD7_SETTING,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 	DVBT_RSSI_R,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) 	DVBT_ACI_DET_IND,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) 	DVBT_REG_MON,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) 	DVBT_REG_MONSEL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) 	DVBT_REG_GPE,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) 	DVBT_REG_GPO,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) 	DVBT_REG_4MSEL,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) 	DVBT_TEST_REG_1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) 	DVBT_TEST_REG_2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) 	DVBT_TEST_REG_3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) 	DVBT_TEST_REG_4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) 	DVBT_REG_BIT_NAME_ITEM_TERMINATOR,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) static const struct rtl2832_reg_value rtl2832_tuner_init_fc2580[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) 	{DVBT_DAGC_TRG_VAL,             0x39},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) 	{DVBT_AGC_TARG_VAL_0,            0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) 	{DVBT_AGC_TARG_VAL_8_1,         0x5a},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) 	{DVBT_AAGC_LOOP_GAIN,           0x16},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) 	{DVBT_LOOP_GAIN2_3_0,            0x6},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) 	{DVBT_LOOP_GAIN2_4,              0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) 	{DVBT_LOOP_GAIN3,               0x16},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) 	{DVBT_VTOP1,                    0x35},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) 	{DVBT_VTOP2,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) 	{DVBT_VTOP3,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) 	{DVBT_KRF1,                      0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) 	{DVBT_KRF2,                     0x40},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) 	{DVBT_KRF3,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) 	{DVBT_KRF4,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) 	{DVBT_IF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) 	{DVBT_IF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) 	{DVBT_RF_AGC_MIN,               0x9c},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) 	{DVBT_RF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) 	{DVBT_POLAR_RF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) 	{DVBT_POLAR_IF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) 	{DVBT_AD7_SETTING,            0xe9f4},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) static const struct rtl2832_reg_value rtl2832_tuner_init_tua9001[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) 	{DVBT_DAGC_TRG_VAL,             0x39},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) 	{DVBT_AGC_TARG_VAL_0,            0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) 	{DVBT_AGC_TARG_VAL_8_1,         0x5a},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) 	{DVBT_AAGC_LOOP_GAIN,           0x16},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) 	{DVBT_LOOP_GAIN2_3_0,            0x6},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) 	{DVBT_LOOP_GAIN2_4,              0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) 	{DVBT_LOOP_GAIN3,               0x16},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) 	{DVBT_VTOP1,                    0x35},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) 	{DVBT_VTOP2,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) 	{DVBT_VTOP3,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) 	{DVBT_KRF1,                      0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) 	{DVBT_KRF2,                     0x40},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) 	{DVBT_KRF3,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) 	{DVBT_KRF4,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) 	{DVBT_IF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) 	{DVBT_IF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) 	{DVBT_RF_AGC_MIN,               0x9c},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) 	{DVBT_RF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) 	{DVBT_POLAR_RF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) 	{DVBT_POLAR_IF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) 	{DVBT_AD7_SETTING,            0xe9f4},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) 	{DVBT_OPT_ADC_IQ,                0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) 	{DVBT_AD_AVI,                    0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) 	{DVBT_AD_AVQ,                    0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) 	{DVBT_SPEC_INV,                  0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) static const struct rtl2832_reg_value rtl2832_tuner_init_fc0012[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) 	{DVBT_DAGC_TRG_VAL,             0x5a},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) 	{DVBT_AGC_TARG_VAL_0,            0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) 	{DVBT_AGC_TARG_VAL_8_1,         0x5a},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) 	{DVBT_AAGC_LOOP_GAIN,           0x16},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) 	{DVBT_LOOP_GAIN2_3_0,            0x6},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) 	{DVBT_LOOP_GAIN2_4,              0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) 	{DVBT_LOOP_GAIN3,               0x16},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) 	{DVBT_VTOP1,                    0x35},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) 	{DVBT_VTOP2,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) 	{DVBT_VTOP3,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) 	{DVBT_KRF1,                      0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) 	{DVBT_KRF2,                     0x40},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) 	{DVBT_KRF3,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) 	{DVBT_KRF4,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) 	{DVBT_IF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) 	{DVBT_IF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) 	{DVBT_RF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) 	{DVBT_RF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) 	{DVBT_POLAR_RF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) 	{DVBT_POLAR_IF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) 	{DVBT_AD7_SETTING,            0xe9bf},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) 	{DVBT_EN_GI_PGA,                 0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) 	{DVBT_THD_LOCK_UP,               0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) 	{DVBT_THD_LOCK_DW,               0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318) 	{DVBT_THD_UP1,                  0x11},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) 	{DVBT_THD_DW1,                  0xef},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) 	{DVBT_INTER_CNT_LEN,             0xc},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) 	{DVBT_GI_PGA_STATE,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) 	{DVBT_EN_AGC_PGA,                0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) 	{DVBT_IF_AGC_MAN,                0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) 	{DVBT_SPEC_INV,                  0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) static const struct rtl2832_reg_value rtl2832_tuner_init_e4000[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) 	{DVBT_DAGC_TRG_VAL,             0x5a},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) 	{DVBT_AGC_TARG_VAL_0,            0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) 	{DVBT_AGC_TARG_VAL_8_1,         0x5a},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) 	{DVBT_AAGC_LOOP_GAIN,           0x18},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) 	{DVBT_LOOP_GAIN2_3_0,            0x8},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) 	{DVBT_LOOP_GAIN2_4,              0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) 	{DVBT_LOOP_GAIN3,               0x18},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) 	{DVBT_VTOP1,                    0x35},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336) 	{DVBT_VTOP2,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) 	{DVBT_VTOP3,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) 	{DVBT_KRF1,                      0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) 	{DVBT_KRF2,                     0x40},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) 	{DVBT_KRF3,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) 	{DVBT_KRF4,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) 	{DVBT_IF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) 	{DVBT_IF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) 	{DVBT_RF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345) 	{DVBT_RF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) 	{DVBT_POLAR_RF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) 	{DVBT_POLAR_IF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348) 	{DVBT_AD7_SETTING,            0xe9d4},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349) 	{DVBT_EN_GI_PGA,                 0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350) 	{DVBT_THD_LOCK_UP,               0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) 	{DVBT_THD_LOCK_DW,               0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352) 	{DVBT_THD_UP1,                  0x14},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) 	{DVBT_THD_DW1,                  0xec},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354) 	{DVBT_INTER_CNT_LEN,             0xc},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) 	{DVBT_GI_PGA_STATE,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356) 	{DVBT_EN_AGC_PGA,                0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357) 	{DVBT_REG_GPE,                   0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358) 	{DVBT_REG_GPO,                   0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) 	{DVBT_REG_MONSEL,                0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) 	{DVBT_REG_MON,                   0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361) 	{DVBT_REG_4MSEL,                 0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) 	{DVBT_SPEC_INV,                  0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365) static const struct rtl2832_reg_value rtl2832_tuner_init_r820t[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366) 	{DVBT_DAGC_TRG_VAL,             0x39},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367) 	{DVBT_AGC_TARG_VAL_0,            0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368) 	{DVBT_AGC_TARG_VAL_8_1,         0x40},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) 	{DVBT_AAGC_LOOP_GAIN,           0x16},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) 	{DVBT_LOOP_GAIN2_3_0,            0x8},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) 	{DVBT_LOOP_GAIN2_4,              0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372) 	{DVBT_LOOP_GAIN3,               0x18},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373) 	{DVBT_VTOP1,                    0x35},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374) 	{DVBT_VTOP2,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375) 	{DVBT_VTOP3,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376) 	{DVBT_KRF1,                      0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377) 	{DVBT_KRF2,                     0x40},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378) 	{DVBT_KRF3,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379) 	{DVBT_KRF4,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380) 	{DVBT_IF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) 	{DVBT_IF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) 	{DVBT_RF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383) 	{DVBT_RF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384) 	{DVBT_POLAR_RF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385) 	{DVBT_POLAR_IF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386) 	{DVBT_AD7_SETTING,            0xe9f4},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) 	{DVBT_SPEC_INV,                  0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) static const struct rtl2832_reg_value rtl2832_tuner_init_si2157[] = {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391) 	{DVBT_DAGC_TRG_VAL,             0x39},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392) 	{DVBT_AGC_TARG_VAL_0,            0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393) 	{DVBT_AGC_TARG_VAL_8_1,         0x40},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) 	{DVBT_AAGC_LOOP_GAIN,           0x16},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395) 	{DVBT_LOOP_GAIN2_3_0,            0x8},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396) 	{DVBT_LOOP_GAIN2_4,              0x1},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397) 	{DVBT_LOOP_GAIN3,               0x18},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) 	{DVBT_VTOP1,                    0x35},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399) 	{DVBT_VTOP2,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400) 	{DVBT_VTOP3,                    0x21},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401) 	{DVBT_KRF1,                      0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402) 	{DVBT_KRF2,                     0x40},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) 	{DVBT_KRF3,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404) 	{DVBT_KRF4,                     0x10},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405) 	{DVBT_IF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406) 	{DVBT_IF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407) 	{DVBT_RF_AGC_MIN,               0x80},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) 	{DVBT_RF_AGC_MAX,               0x7f},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409) 	{DVBT_POLAR_RF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410) 	{DVBT_POLAR_IF_AGC,              0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) 	{DVBT_AD7_SETTING,            0xe9f4},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412) 	{DVBT_SPEC_INV,                  0x0},
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) #endif /* RTL2832_PRIV_H */