📄 d0362_init.c
字号:
#ifdef ST_OSLINUX
#include "stos.h"
#else
/*C libs */
#include "string.h"
#endif
#include "d0362_init.h"
#include "d0362_map.h"
ST_ErrorCode_t STV0362_Init(STTUNER_IOREG_DeviceMap_t *DeviceMap)
{
U32 *DefVal;
ST_ErrorCode_t Error=ST_NO_ERROR;
/*
** REGISTER CONFIGURATION
** ----------------------
*/
DefVal = DeviceMap->DefVal;
/* REGISTER INITIALISATION */
/* PLLNDIV */
STTUNER_IOREG_AddReg(DeviceMap,R0362_PLLNDIV,0x00d9,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_PLLNDIV,F0362_PLL_NDIV,0,8,FIELD_TYPE_UNSIGNED);
/* ID */
STTUNER_IOREG_AddReg(DeviceMap,R0362_ID,0x0000,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_ID,F0362_IDENTIFICATIONREGISTER,0,8,FIELD_TYPE_UNSIGNED);
/* I2CRPT */
STTUNER_IOREG_AddReg(DeviceMap,R0362_I2CRPT,0x0001,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_I2CRPT,F0362_I2CT_ON,7,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_I2CRPT,F0362_ENARPT_LEVEL,4,3,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_I2CRPT,F0362_SCLT_DELAY,3,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_I2CRPT,F0362_SCLT_NOD,2,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_I2CRPT,F0362_STOP_ENABLE,1,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_I2CRPT,F0362_SDAT_NOD,0,1,FIELD_TYPE_UNSIGNED);
/* TOPCTRL */
STTUNER_IOREG_AddReg(DeviceMap,R0362_TOPCTRL,0x0002,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_TOPCTRL,F0362_STDBY,7,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_TOPCTRL,F0362_STDBY_FEC,6,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_TOPCTRL,F0362_STDBY_CORE,5,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_TOPCTRL,F0362_DIR_CLK_54,4,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_TOPCTRL,F0362_TS_DIS,3,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_TOPCTRL,F0362_DIR_CLK_108,2,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_TOPCTRL,F0362_TUNER_BB,1,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_TOPCTRL,F0362_DVBT_H,0,1,FIELD_TYPE_UNSIGNED);
/* IOCFG0 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_IOCFG0,0x0003,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG0,F0362_OP0_SD,7,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG0,F0362_OP0_VAL,6,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG0,F0362_OP0_OD,5,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG0,F0362_OP0_INV,4,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG0,F0362_OP0_DACVALUE_HI,0,4,FIELD_TYPE_UNSIGNED);
/* DAC0R */
STTUNER_IOREG_AddReg(DeviceMap,R0362_DAC0R,0x0004,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_DAC0R,F0362_OP0_DACVALUE_LO,0,8,FIELD_TYPE_UNSIGNED);
/* IOCFG1 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_IOCFG1,0x0005,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG1,F0362_IP0,6,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG1,F0362_OP1_OD,5,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG1,F0362_OP1_INV,4,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG1,F0362_OP1_DACVALUE_HI,0,4,FIELD_TYPE_UNSIGNED);
/* DAC1R */
STTUNER_IOREG_AddReg(DeviceMap,R0362_DAC1R,0x0006,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_DAC1R,F0362_OP1_DACVALUE_LO,0,8,FIELD_TYPE_UNSIGNED);
/* IOCFG2 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_IOCFG2,0x0007,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG2,F0362_OP2_LOCK_CONF,5,3,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG2,F0362_OP2_OD,4,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG2,F0362_OP2_VAL,3,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_IOCFG2,F0362_OP1_LOCK_CONF,0,3,FIELD_TYPE_UNSIGNED);
/* SDFR */
STTUNER_IOREG_AddReg(DeviceMap,R0362_SDFR,0x0008,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_SDFR,F0362_OP0_FREQ,4,4,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_SDFR,F0362_OP1_FREQ,0,4,FIELD_TYPE_UNSIGNED);
/* STATUS */
STTUNER_IOREG_AddReg(DeviceMap,R0362_STATUS,0x0009,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_STATUS,F0362_TPS_LOCK,7,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_STATUS,F0362_SYR_LOCK,6,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_STATUS,F0362_AGC_LOCK,5,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_STATUS,F0362_PRF,4,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_STATUS,F0362_LK,3,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_STATUS,F0362_PR,0,3,FIELD_TYPE_UNSIGNED);
/* AUX_CLK */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AUX_CLK,0x000a,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AUX_CLK,F0362_AUXFEC_CTL,6,2,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AUX_CLK,F0362_DIS_CKX4,5,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AUX_CLK,F0362_CKSEL,3,2,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AUX_CLK,F0362_CKDIV_PROG,1,2,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AUX_CLK,F0362_AUXCLK_ENA,0,1,FIELD_TYPE_UNSIGNED);
/* FREESYS1 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_FREESYS1,0x000b,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_FREESYS1,F0362_FREESYS1,0,8,FIELD_TYPE_UNSIGNED);
/* FREESYS2 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_FREESYS2,0x000c,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_FREESYS2,F0362_FREESYS2,0,8,FIELD_TYPE_UNSIGNED);
/* FREESYS3 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_FREESYS3,0x000d,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_FREESYS3,F0362_FREESYS3,0,8,FIELD_TYPE_UNSIGNED);
/* AGC2MAX */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC2MAX,0x0010,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC2MAX,F0362_AGC2MAX,0,8,FIELD_TYPE_UNSIGNED);
/* AGC2MIN */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC2MIN,0x0011,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC2MIN,F0362_AGC2MIN,0,8,FIELD_TYPE_UNSIGNED);
/* AGC1MAX */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC1MAX,0x0012,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC1MAX,F0362_AGC1MAX,0,8,FIELD_TYPE_UNSIGNED);
/* AGC1MIN */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC1MIN,0x0013,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC1MIN,F0362_AGC1MIN,0,8,FIELD_TYPE_UNSIGNED);
/* AGCR */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGCR,0x0014,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCR,F0362_RATIO_A,5,3,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCR,F0362_RATIO_B,3,2,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCR,F0362_RATIO_C,0,3,FIELD_TYPE_UNSIGNED);
/* AGC2TH */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC2TH,0x0015,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC2TH,F0362_AGC2_THRES,0,8,FIELD_TYPE_UNSIGNED);
/* AGC12C */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC12C,0x0016,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC12C,F0362_AGC1_IV,7,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC12C,F0362_AGC1_OD,6,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC12C,F0362_AGC1_LOAD,5,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC12C,F0362_AGC2_IV,4,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC12C,F0362_AGC2_OD,3,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC12C,F0362_AGC2_LOAD,2,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC12C,F0362_AGC12_MODE,0,2,FIELD_TYPE_UNSIGNED);
/* AGCCTRL1 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGCCTRL1,0x0017,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCCTRL1,F0362_DAGC_ON,7,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCCTRL1,F0362_INVERT_AGC12,6,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCCTRL1,F0362_AGC1_MODE,3,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCCTRL1,F0362_AGC2_MODE,0,3,FIELD_TYPE_UNSIGNED);
/* AGCCTRL2 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGCCTRL2,0x0018,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCCTRL2,F0362_FRZ2_CTRL,5,2,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCCTRL2,F0362_FRZ1_CTRL,3,2,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGCCTRL2,F0362_TIME_CST,0,3,FIELD_TYPE_UNSIGNED);
/* AGC1VAL1 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC1VAL1,0x0019,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC1VAL1,F0362_AGC1_VAL_LO,0,8,FIELD_TYPE_UNSIGNED);
/* AGC1VAL2 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC1VAL2,0x001a,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC1VAL2,F0362_AGC1_VAL_HI,0,4,FIELD_TYPE_UNSIGNED);
/* AGC2VAL1 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC2VAL1,0x001b,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC2VAL1,F0362_AGC2_VAL_LO,0,8,FIELD_TYPE_UNSIGNED);
/* AGC2VAL2 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC2VAL2,0x001c,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC2VAL2,F0362_AGC2_VAL_HI,0,4,FIELD_TYPE_UNSIGNED);
/* AGC2PGA */
STTUNER_IOREG_AddReg(DeviceMap,R0362_AGC2PGA,0x001d,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_AGC2PGA,F0362_AGC2PGA,0,8,FIELD_TYPE_UNSIGNED);
/* OVF_RATE1 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_OVF_RATE1,0x001e,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_OVF_RATE1,F0362_OVF_RATE_HI,0,4,FIELD_TYPE_UNSIGNED);
/* OVF_RATE2 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_OVF_RATE2,0x001f,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_OVF_RATE2,F0362_OVF_RATE_LO,0,8,FIELD_TYPE_UNSIGNED);
/* GAIN_SRC1 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_GAIN_SRC1,0x0020,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_GAIN_SRC1,F0362_INV_SPECTR,7,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_GAIN_SRC1,F0362_IQ_INVERT,6,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_GAIN_SRC1,F0362_INR_BYPASS,5,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_GAIN_SRC1,F0362_INS_BYPASS,4,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_GAIN_SRC1,F0362_GAIN_SRC_HI,0,4,FIELD_TYPE_UNSIGNED);
/* GAIN_SRC2 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_GAIN_SRC2,0x0021,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_GAIN_SRC2,F0362_GAIN_SRC_LO,0,8,FIELD_TYPE_UNSIGNED);
/* INC_DEROT1 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_INC_DEROT1,0x0022,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_INC_DEROT1,F0362_INC_DEROT_HI,0,8,FIELD_TYPE_UNSIGNED);
/* INC_DEROT2 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_INC_DEROT2,0x0023,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_INC_DEROT2,F0362_INC_DEROT_LO,0,8,FIELD_TYPE_UNSIGNED);
/* PPM_CPAMP_DIR */
STTUNER_IOREG_AddReg(DeviceMap,R0362_PPM_CPAMP_DIR,0x0024,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_PPM_CPAMP_DIR,F0362_PPM_CPAMP_DIRECT,0,8,FIELD_TYPE_UNSIGNED);
/* PPM_CPAMP_INV */
STTUNER_IOREG_AddReg(DeviceMap,R0362_PPM_CPAMP_INV,0x0025,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_PPM_CPAMP_INV,F0362_PPM_CPAMP_INV,0,8,FIELD_TYPE_UNSIGNED);
/* FREESTFE_1 */
STTUNER_IOREG_AddReg(DeviceMap,R0362_FREESTFE_1,0x0026,*DefVal++);
STTUNER_IOREG_AddField(DeviceMap,R0362_FREESTFE_1,F0362_SYMBOL_NUMBER_INC,6,2,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_FREESTFE_1,F0362_SEL_LSB,2,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_FREESTFE_1,F0362_AVERAGE_ON,1,1,FIELD_TYPE_UNSIGNED);
STTUNER_IOREG_AddField(DeviceMap,R0362_FREESTFE_1,F0362_DC_ADJ,0,1,FIELD_TYPE_UNSIGNED);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -