123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845 |
- #ifndef _DRV_TUNER_EXTERNAL_H_
- #define _DRV_TUNER_EXTERNAL_H_
- #define CMD_STEP 100
- // ========= for internal and external usage ========
- typedef enum
- {
- /*------------------------- cmd ------------------------------*/
- FRONTEND_CMD_INIT = 0*CMD_STEP,
- FRONTEND_CMD_UNINIT,
- FRONTEND_CMD_CTRL_ANALOG,
- FRONTEND_CMD_CTRL_DIGITAL,
- FRONTEND_CMD_QUERY_SETTINGS,
- FRONTEND_CMD_GET_CONNECT_TYPE,
- FRONTEND_CMD_SET_CONNECT_TYPE,
- /*------------------------- ADemod cmd ------------------------------*/
- FRONTEND_CMD_SET_ANALOG = 1*CMD_STEP,
- FRONTEND_CMD_QUERY_STATUS_ANALOG,
- FRONTEND_CMD_SET_SCAN_POSITION,
- FRONTEND_CMD_SET_ADEMOD_SIFPOWER, /* for 330 ademod and sifdecoder CLK source*/
- FRONTEND_CMD_SET_AFC_Scanning_Flag, /* Set AFC scanning flag for admoed*/
- FRONTEND_CMD_SET_Scan_State, /* Set save channel flag for admoed*/
- FRONTEND_CMD_SET_Tuner_RFPower_Status,
- FRONTEND_CMD_SET_ANALOG_LOWIF,
- FRONTEND_CMD_SET_SIF,
- FRONTEND_CMD_SET_IF_Target_Gain,
- FRONTEND_CMD_SET_HW_AFT_Flag,
- FRONTEND_CMD_SET_ADEMOD_RESET_BIT,
- FRONTEND_CMD_SET_PQ_FILTER,
- FRONTEND_CMD_Shift_PLL_Position,
- FRONTEND_CMD_SET_LSG_ENABLE_BIT,
- FRONTEND_CMD_SET_AFT_PAUSE,
- FRONTEND_CMD_Get_Video_Spectrum,
- FRONTEND_CMD_Get_Ademod_Register,
- FRONTEND_CMD_SET_ADEMOD_ASAW,
- /*------------------------- dvb-t/t2 cmd ------------------------------*/
- FRONTEND_CMD_SET_T = 2*CMD_STEP,
- FRONTEND_CMD_SET_T2,
- FRONTEND_CMD_QUERY_STATUS_DVB_T,
- FRONTEND_CMD_QUERY_STATUS_DVB_T2,
- FRONTEND_CMD_GET_CELL_ID,
- FRONTEND_CMD_GET_PLP_NUMBER,
- FRONTEND_CMD_GET_DVBT2_IS_FEF_SIGNAL,
- FRONTEND_CMD_INFO_TUNER_DVBT2_FEF_SIGNAL,
- FRONTEND_CMD_RESET_DVBT2_FOR_MT,
- /*------------------------- dvb-c/c2 cmd ------------------------------*/
- FRONTEND_CMD_SET_C = 3*CMD_STEP,
- FRONTEND_CMD_SET_C2,
- FRONTEND_CMD_QUERY_STATUS_DVB_C,
- FRONTEND_CMD_QUERY_STATUS_DVB_C2,
- /*------------------------- dvb-s/s2 cmd ------------------------------*/
- FRONTEND_CMD_SET_S = 4*CMD_STEP,
- FRONTEND_CMD_SET_S2,
- FRONTEND_CMD_QUERY_STATUS_DVB_S,
- FRONTEND_CMD_QUERY_STATUS_DVB_S2,
- FRONTEND_CMD_SET_LNB,
- FRONTEND_CMD_SET_LNB_POWER,
- FRONTEND_CMD_SET_LNB_POWER_LEVEL,
- FRONTEND_CMD_GET_LNB_POWER_LEVEL,
- FRONTEND_CMD_SET_22K,
- FRONTEND_CMD_GET_DISEQC_22KHZ_CONFIG,
- FRONTEND_CMD_SET_DISEQC_22KHZ_CONFIG,
- FRONTEND_CMD_SET_POLARITY,
- FRONTEND_CMD_SET_TONE_BURST_OFF,
- FRONTEND_CMD_SET_TONE_BURST_A,
- FRONTEND_CMD_SET_TONE_BURST_B,
- FRONTEND_CMD_SET_SEND_DISEQC_CMD,
- FRONTEND_CMD_SET_BLINDSEARCH_INIT,
- FRONTEND_CMD_SET_BLINDSEARCH,
- FRONTEND_CMD_SET_BLINDSEARCH_END,
- FRONTEND_CMD_SET_BLINDSEARCH_PAUSE,
- FRONTEND_CMD_SET_BLINDSEARCH_DEMOD_CTRL,
- FRONTEND_CMD_SET_BLINDSEARCH_TUNER_CTRL,
- FRONTEND_CMD_SET_BLINDSEARCH_TUNER_STEP_SIZE,
- FRONTEND_CMD_GET_BLINDSEARCH_TUNER_STEP_SIZE,
- FRONTEND_CMD_GET_BLINDSEARCH_TUNER_BAND,
- FRONTEND_CMD_GET_AUTO_DETECT_DVB_S_S2,
- FRONTEND_CMD_GET_AGC_Voltage,
- FRONTEND_CMD_GET_BLINDSEARCH_PROGRESS,
- FRONTEND_CMD_GET_BLINDSEARCH_CHANNEL_LIST,
- FRONTEND_CMD_GET_DEMOD_DEBUG_INFO,
- FRONTEND_CMD_GET_AVERAGE_IQ_THRESHOLD_CNT,
- FRONTEND_CMD_SET_UNICABLE_MODE,
- FRONTEND_CMD_GET_CANDIDATE_TABLE,
- FRONTEND_CMD_GET_TSO_RATE,
- FRONTEND_CMD_GET_LONG_CFO_SEARCH_MODE,
- /*------------------------- atsc cmd ------------------------------*/
- FRONTEND_CMD_SET_ATSC = 5*CMD_STEP,
- FRONTEND_CMD_QUERY_STATUS_ATSC,
- /*------------------------- dtmb cmd ------------------------------*/
- FRONTEND_CMD_SET_DTMB = 6*CMD_STEP,
- FRONTEND_CMD_QUERY_STATUS_DTMB,
- /*------------------------- j83b cmd ------------------------------*/
- FRONTEND_CMD_SET_J83B = 7*CMD_STEP,
- FRONTEND_CMD_QUERY_STATUS_J83B,
- /*------------------------- isdb-t/c/s cmd ------------------------------*/
- FRONTEND_CMD_SET_ISDBT = 8*CMD_STEP,
- FRONTEND_CMD_SET_ISDBC,
- FRONTEND_CMD_SET_ISDBS,
- FRONTEND_CMD_QUERY_STATUS_ISDBT,
- FRONTEND_CMD_QUERY_STATUS_ISDBC,
- FRONTEND_CMD_QUERY_STATUS_ISDBS,
- /*------------------------- tuner cmd ------------------------------*/
- FRONTEND_CMD_SET_TUNER = 9*CMD_STEP,
- FRONTEND_CMD_TUNERDETECT,
- FRONTEND_CMD_SET_TUNER_AFC_RANGE,
- FRONTEND_CMD_SET_TUNER_PIN_CONFIG,
- FRONTEND_CMD_SET_TUNER_PIN_CONFIG_1,
- FRONTEND_CMD_SET_TUNER_IF_OUT_PORT,
- FRONTEND_CMD_GET_TUNER_RSSI,
- FRONTEND_CMD_SET_TUNER_XTAL_OUT,
- FRONTEND_CMD_SET_TUNER_WAKE_POWER_DOWN,
- FRONTEND_CMD_GET_TUNER_STATUS,
- /*------------------------- common cmd ------------------------------*/
- FRONTEND_CMD_GET_SIGNAL_QUALITY = 10*CMD_STEP,
- FRONTEND_CMD_GET_SIGNAL_STRENGTH,
- FRONTEND_CMD_GET_SIGNAL_BER,
- FRONTEND_CMD_GET_SIGNAL_SNR,
- FRONTEND_CMD_GET_SIGNAL_PER,
- FRONTEND_CMD_GET_SIGNAL_UBC,
- FRONTEND_CMD_POLLING_TUNER_CONNECT_STATUS,
- FRONTEND_CMD_SET_TUNER_SCAN_MODE,
- FRONTEND_CMD_GET_TUNER_SCAN_MODE,
- FRONTEND_CMD_GET_FRONTEND,
- FRONTEND_CMD_GET_INIT_STATUS,
- FRONTEND_CMD_GET_FREQUENCY,
- FRONTEND_CMD_GET_MODULATION,
- FRONTEND_CMD_GET_MODULATION_INFO,
- FRONTEND_CMD_GET_FREQUENCY_OFFSET,
- FRONTEND_CMD_GET_SYMBOLRATE,
- FRONTEND_CMD_SET_TS_OUTPUT_HIZ,
- FRONTEND_CMD_TS_THROUGH_CAM_OR_NOT,
- FRONTEND_CMD_SET_TS_NULL_PACKET_CONFIG,
- FRONTEND_CMD_GET_TS_NULL_PACKET_CONFIG,
- FRONTEND_CMD_GET_USED_INTERNAL_DEMOD,
- FRONTEND_CMD_GET_MOSAIC_STATUS, /* Get Mosaic status */
- FRONTEND_CMD_POWER_DOWN,
- FRONTEND_CMD_SET_POWERSAVING, /* for 330 TUNER_power() function*/
- FRONTEND_CMD_SET_EXTERNAL_CMD_TARGET,
- FRONTEND_CMD_EXTERNAL_SET_GPO_CMD, /*External tuner/Demod GPO Ctrl Command */
- FRONTEND_CMD_SET_INTERNAL_FOCUS,
- FRONTEND_CMD_SET_CHANGE_SOURCE,
- FRONTEND_CMD_GET_DEMOD_LOCK_STATUS,
- FRONTEND_CMD_GET_SQI_SSI,
- FRONTEND_CMD_GET_SPECTRUM_INVERSION,
- FRONTEND_CMD_SET_I2C_BYPASS_MODE,
- FRONTEND_CMD_GET_TS_MODE,
- FRONTEND_CMD_GET_TS_INPUT,
- FRONTEND_CMD_GET_TUNER_ID,
- FRONTEND_CMD_SET_DEMOD_PREPROCESSING,
- FRONTEND_CMD_SET_DEMOD_POSTPROCESSING,
- /*------------------------- spical cmd ------------------------------*/
- FRONTEND_CMD_SET_MIRACAST_COPROCESSOR = 11*CMD_STEP,
- FRONTEND_CMD_MAX,
- } DRV_Frontend_Cmd;
- /*!
- * @brief Hierarchy Mode.
- */
- typedef enum
- {
- FRONTEND_HIERARCHY_NONE,
- FRONTEND_HIERARCHY_1,
- FRONTEND_HIERARCHY_2,
- FRONTEND_HIERARCHY_4,
- FRONTEND_HIERARCHY_AUTO,
- FRONTEND_HIERARCHY_MAX,
- } DRV_Frontend_Hierarchy_t;
- /*!
- * @brief Frontend Type.
- */
- typedef enum
- {
- FRONTEND_CONNECT_TYPE_ANALOG = 0,
- FRONTEND_CONNECT_TYPE_DVB_T = 1,
- FRONTEND_CONNECT_TYPE_DVB_T2 = 2,
- FRONTEND_CONNECT_TYPE_DVB_C = 3,
- FRONTEND_CONNECT_TYPE_DVB_C2 = 4,
- FRONTEND_CONNECT_TYPE_DVB_S = 5,
- FRONTEND_CONNECT_TYPE_DVB_S2 = 6,
- FRONTEND_CONNECT_TYPE_ISDB_T = 7,
- FRONTEND_CONNECT_TYPE_ISDB_C = 8,
- FRONTEND_CONNECT_TYPE_ISDB_S = 9,
- FRONTEND_CONNECT_TYPE_ATSC = 10,
- FRONTEND_CONNECT_TYPE_J83B = 11,
- FRONTEND_CONNECT_TYPE_DTMB = 12,
- FRONTEND_CONNECT_TYPE_MIRACAST = 13,
- FRONTEND_CONNECT_TYPE_DISABLE = 14,
- FRONTEND_CONNECT_TYPE_MAX = 15,
- } DRV_Frontend_Connect_Type_t;
- /*!
- * @brief Frontend Focus & Defocus.
- */
- typedef enum
- {
- FRONTEND_CONNECT_DEFOCUS = 0,
- FRONTEND_CONNECT_FOCUS = 1,
- } DRV_Frontend_Connect_Focus_t;
- /*!
- * @brief tuner standard
- */
- typedef enum
- {
- RFFRONTEND_STD_NULL = 0,
- RFFRONTEND_STD_M = 1,/* Analog */
- RFFRONTEND_STD_BG = 2,
- RFFRONTEND_STD_DK = 3,
- RFFRONTEND_STD_I = 4,
- RFFRONTEND_STD_L = 5,
- RFFRONTEND_STD_L1 = 6,
- RFFRONTEND_STD_T = 7,/* Digital */
- RFFRONTEND_STD_T2 = 8,
- RFFRONTEND_STD_C = 9,
- RFFRONTEND_STD_C2 = 10,
- RFFRONTEND_STD_S = 11,
- RFFRONTEND_STD_S2 = 12,
- RFFRONTEND_STD_ISDB_T = 13,
- RFFRONTEND_STD_ISDB_C = 14,
- RFFRONTEND_STD_ISDB_S = 15,
- RFFRONTEND_STD_ATSC = 16,
- RFFRONTEND_STD_J83B = 17,
- RFFRONTEND_STD_DTMB = 18,
- RFFRONTEND_STD_MAX = 19,
- } DRV_RfFrontend_Std_t;
- /*!
- * @brief Code Rate.
- */
- typedef enum
- {
- FRONTEND_CODE_RATE_NONE = 0,
- FRONTEND_CODE_RATE_1_4,
- FRONTEND_CODE_RATE_1_3,
- FRONTEND_CODE_RATE_2_5,
- FRONTEND_CODE_RATE_1_2,
- FRONTEND_CODE_RATE_2_3,
- FRONTEND_CODE_RATE_3_4,
- FRONTEND_CODE_RATE_3_5,
- FRONTEND_CODE_RATE_4_5,
- FRONTEND_CODE_RATE_5_6,
- FRONTEND_CODE_RATE_6_7,
- FRONTEND_CODE_RATE_7_8,
- FRONTEND_CODE_RATE_8_9,
- FRONTEND_CODE_RATE_9_10,
- FRONTEND_CODE_RATE_AUTO,
- FRONTEND_CODE_RATE_0_p4, /* For DTMB Code Rate 0.4 */
- FRONTEND_CODE_RATE_0_p6, /* For DTMB Code Rate 0.6 */
- FRONTEND_CODE_RATE_0_p8, /* For DTMB Code Rate 0.8 */
- FRONTEND_CODE_RATE_MAX,
- } DRV_Frontend_Code_Rate_t;
- /*!
- * @brief Frontedn Bandwidth.
- */
- typedef enum
- {
- FRONTEND_BANDWIDTH_1_7_MHZ = 1, //DVB-T2 BW 1.7MHz
- FRONTEND_BANDWIDTH_5_MHZ = 5,
- FRONTEND_BANDWIDTH_6_MHZ = 6,
- FRONTEND_BANDWIDTH_7_MHZ = 7,
- FRONTEND_BANDWIDTH_8_MHZ = 8,
- FRONTEND_BANDWIDTH_9_MHZ,
- FRONTEND_BANDWIDTH_10MHZ,
- FRONTEND_BANDWIDTH_MAX,
- } DRV_Frontend_Bandwidth_t;
- /*!
- * @brief Transmit Mode.
- */
- typedef enum
- {
- FRONTEND_TRANSMISSION_MODE_2K,
- FRONTEND_TRANSMISSION_MODE_8K,
- FRONTEND_TRANSMISSION_MODE_AUTO,
- FRONTEND_TRANSMISSION_MODE_MAX,
- } DRV_Frontend_Transmit_Mode_t;
- /*!
- * @brief Guard Interval.
- */
- typedef enum
- {
- FRONTEND_GUARD_INTERVAL_1_32,
- FRONTEND_GUARD_INTERVAL_1_16,
- FRONTEND_GUARD_INTERVAL_1_8,
- FRONTEND_GUARD_INTERVAL_1_4,
- FRONTEND_GUARD_INTERVAL_AUTO,
- FRONTEND_GUARD_INTERVAL_PN420, /* For DTMB PN420 */
- FRONTEND_GUARD_INTERVAL_PN595, /* For DTMB PN595 */
- FRONTEND_GUARD_INTERVAL_PN945, /* For DTMB PN945 */
- FRONTEND_GUARD_INTERVAL_MAX,
- } DRV_Frontend_Guard_Interval_t;
- /*!
- * @brief Carrier Mode.
- */
- typedef enum
- {
- FRONTEND_CARRIER_MODE_SINGLE = 0,
- FRONTEND_CARRIER_MODE_MULTI,
- FRONTEND_CARRIER_MODE_MAX,
- }DRV_Frontend_Carrier_Mode_t;
- /*!
- * @brief Priority.
- */
- typedef enum
- {
- FRONTEND_PRIORITY_HIGH = 0,
- FRONTEND_PRIORITY_LOW,
- FRONTEND_PRIORITY_MAX,
- }DRV_Frontend_Priority_t;
- /*!
- * @brief Roll Off.
- */
- typedef enum
- {
- FRONTEND_ROLLOFF_35, /* Implied value in DVB-S, default for DVB-S2 */
- FRONTEND_ROLLOFF_20,
- FRONTEND_ROLLOFF_25,
- FRONTEND_ROLLOFF_AUTO,
- FRONTEND_MAX,
- } DRV_Frontend_RollOff_t;
- /*!
- * @brief Pilot.
- */
- typedef enum
- {
- FRONTEND_PILOT_ON,
- FRONTEND_PILOT_OFF,
- FRONTEND_PILOT_AUTO,
- FRONTEND_PILOT_MAX,
- } DRV_Frontend_Pilot_t;
- /*!
- * @brief Time Deinter Leaver.
- */
- typedef enum
- {
- FRONTEND_TDI_240,
- FRONTEND_TDI_720,
- FRONTEND_TDI_BYPASS = 0x11,
- FRONTEND_TDI_MAX,
- } DRV_Frontend_Time_Deinterleaver_t;
- /*!
- * @brief QAM Type.
- */
- typedef enum
- {
- FRONTEND_MOD_TYPE_QPSK = 0,
- FRONTEND_MOD_TYPE_QAM_16 = 1,
- FRONTEND_MOD_TYPE_QAM_32 = 2,
- FRONTEND_MOD_TYPE_QAM_64 = 3,
- FRONTEND_MOD_TYPE_QAM_128 = 4,
- FRONTEND_MOD_TYPE_QAM_256 = 5,
- FRONTEND_MOD_TYPE_QAM_AUTO = 6,
- FRONTEND_MOD_TYPE_VSB_8 = 7, /* ATSC */
- FRONTEND_MOD_TYPE_VSB_16 = 8, /* ATSC */
- FRONTEND_MOD_TYPE_PSK_8 = 9, /* DVB-S2 */
- FRONTEND_MOD_TYPE_APSK_16 = 10, /* DVB-S2 */
- FRONTEND_MOD_TYPE_APSK_32 = 11, /* DVB-S2 */
- FRONTEND_MOD_TYPE_DQPSK = 12, /* DVB-S2 */
- FRONTEND_MOD_TYPE_4_QAM_NR = 13, /* DTMB */
- FRONTEND_MOD_TYPE_4_QAM = 14, /* DTMB */
- FRONTEND_MOD_TYPE_MAX,
- } DRV_Frontend_Modulation_Type_t;
- /*!
- * @brief Scan Position.
- */
- typedef enum
- {
- FRONTEND_SCAN_POSITION_POSITIVE = 0,
- FRONTEND_SCAN_POSITION_NEGATIVE,
- } DRV_Frontend_Scan_Position_t;
- /*!
- * @brief Silicon Tuner IF Output Port.
- */
- typedef enum
- {
- FRONTEND_IF_OUTPUT_ANALOG_PORT1 = 0,
- FRONTEND_IF_OUTPUT_ANALOG_PORT2,
- FRONTEND_IF_OUTPUT_DIGITAL_PORT1,
- FRONTEND_IF_OUTPUT_DIGITAL_PORT2,
- FRONTEND_IF_OUTPUT_MAX,
- } DRV_Frontend_IF_Output_Port_t;
- /*!
- * @brief Frontend Analog IF Type.
- */
- typedef enum
- {
- FRONTEND_ANALOG_IF_NORMAL_IF = 0,
- FRONTEND_ANALOG_IF_LOW_IF,
- FRONTEND_ANALOG_IF_SIF,
- FRONTEND_ANALOG_IF_MAX,
- } DRV_Frontend_Analog_IF_Type_t;
- /*!
- * @brief Frontend Analog IF Type.
- */
- typedef enum
- {
- ANALOG_SCAN_STATE_SEARCH = 0, // search AFC window
- ANALOG_SCAN_STATE_FINETUNE_WITH_AM_L1, // finetune frequency with SECAM L'
- ANALOG_SCAN_STATE_CHECK_SIGNAL_WITH_AM_L1,
- ANALOG_SCAN_STATE_FINETUNE_WITH_FM, // finetune frequency with FM-standard
- ANALOG_SCAN_STATE_CHECK_SIGNAL_WITH_FM,
- ANALOG_SCAN_STATE_FINETUNE_WITH_AM, // finetune frequency with AM-standard
- ANALOG_SCAN_STATE_CHECK_SIGNAL_WITH_AM,
- ANALOG_SCAN_STATE_SAVE_CHANNEL, // save channel
- ANALOG_SCAN_STATE_FINISH, // stop and exit
- ANALOG_SCAN_STATE_IDLE, // idle.
- ANALOG_SCAN_STATE_MAX,
- } DRV_Frontend_Analog_ScanState;
- /*!
- * @brief Frontend internal demod status.
- */
- typedef struct
- {
- int InternalDemod_Analog;
- int InternalDemod_DVB_T;
- int InternalDemod_DVB_T2;
- int InternalDemod_DVB_C;
- int InternalDemod_DVB_C2;
- int InternalDemod_DVB_S;
- int InternalDemod_DVB_S2;
- int InternalDemod_ISDB_T;
- int InternalDemod_ISDB_C;
- int InternalDemod_ISDB_S;
- int InternalDemod_ATSC;
- int InternalDemod_J83B;
- int InternalDemod_DTMB;
- int InternalDemod_MIRACAST;
- } DRV_Frontend_InternalDemodStatus_t;
- /*!
- * @brief Frontend Diseqc Bank Type.
- */
- typedef enum
- {
- FRONTEND_DISEQC_BANK_A_LB_VP = 0, //PositionA, Low Band/ Vertical polarization
- FRONTEND_DISEQC_BANK_A_HB_VP, //PositionA, Hight Band/ Vertical polarization
- FRONTEND_DISEQC_BANK_A_LB_HP, //PositionA, Low Band/ Horizontal polarization
- FRONTEND_DISEQC_BANK_A_HB_HP, //PositionA, Hight Band/ Horizontal polarization
- FRONTEND_DISEQC_BANK_B_LB_VP, //PositionB, Low Band/ Vertical polarization
- FRONTEND_DISEQC_BANK_B_HB_VP, //PositionB, Hight Band/ Vertical polarization
- FRONTEND_DISEQC_BANK_B_LB_HP, //PositionB, Low Band/ Horizontal polarization
- FRONTEND_DISEQC_BANK_B_HB_HP, //PositionB, Hight Band/ Horizontal polarization
- FRONTEND_DISEQC_BANK_MAX,
- } DRV_Frontend_Diseqc_Bank_T;
- typedef enum{
- FRONTEND_TUNER_STATUS_SEARCH_CHANNEL,
- FRONTEND_TUNER_STATUS_CHANGE_CHANNEL,
- FRONTEND_TUNER_STATUS_CHANGE_FINISH,
- FRONTEND_TUNER_STATUS_MAX
- } DRV_Frontend_Tuner_Status;
- typedef enum {
- TUNER_IdMaxlinearMXL601, //Maxlinear MxL601
- TUNER_IdMaxlinearMXL661, //Maxlinear MxL661
- TUNER_IdNxpTDA18273, //NXP TDA18273
- TUNER_IdNxpTDA18275, //NXP TDA18275
- TUNER_IdNxpTDA182I5A, //NXP TDA182I5A
- TUNER_IdSiliconLabSI2151, //Silicon lab SI2151
- TUNER_IdSiliconLabSI2157, //Silicon lab SI2157
- TUNER_IdSiliconLabSI2158, //Silicon lab SI2158
- TUNER_IdRafaelMicroR828, //Rafel Micro R828
- TUNER_IdRafaelMicroR840, //Rafel Micro R840
- TUNER_IdRafaelMicroR842, //Rafel Micro R842
- TUNER_IdRda5160, //RDA 5160
- TUNER_IdAtbm2040, //ATBM 2040
- TUNER_IdAtbm253, //ATBM 253
- TUNER_IdMax,
- TUNER_IdDefault = TUNER_IdRda5160
- } tuner_TypeId, *tuner_pTypeId;
- /*!
- * @brief Frontend status
- */
- typedef struct
- {
- int IsLock;
- int FreqOffset;
- int AnalogMinFreq;
- int AnalogMaxFreq;
- int DigitalMinFreq;
- int DigitalMaxFreq;
- unsigned int Strength;
- unsigned int Quality;
- unsigned int TunerStep;
- unsigned int DemodUnlockOffset;
- DRV_Frontend_Analog_IF_Type_t eIFType;
- tuner_TypeId TunerID;
- INT32 powerLevel_dbm;
- } DRV_RfFrontend_Status_t;
- /*!
- * @brief Analog Control Parameter.
- */
- typedef struct
- {
- unsigned int dFreq;
- DRV_RfFrontend_Std_t Std;
- } DRV_AnalogCtrlParam_t;
- typedef struct
- {
- unsigned int dFreq_MHz;
- unsigned int dSymbolRate_KHz;
- unsigned int dLPF_KHz;
- } DRV_DVBS2TunerCtrlParam_t;
- typedef enum
- {
- FRONTEND_TYPE_QPSK = 0,/*DVB-S */
- FRONTEND_TYPE_QAM = 1,/* DVB-C */
- FRONTEND_TYPE_OFDM = 2,/* DVB-T */
- FRONTEND_TYPE_TDS_OFDM = 3,
- FRONTEND_TYPE_ATSC = 4,
- FRONTEND_TYPE_DTMB = 5,
- FRONTEND_TYPE_DVBS2 = 6,/* DVB-S2 */
- FRONTEND_TYPE_DVBT2 = 7,/* DVB-T2 */
- FRONTEND_TYPE_MAX,
- } DRV_Frontend_Type_t;
- /*!
- * @brief Spectral Inversion.
- */
- typedef enum
- {
- FRONTEND_INVERSION_OFF = 0,
- FRONTEND_INVERSION_ON = 1,
- FRONTEND_INVERSION_AUTO= 2,
- FRONTEND_INVERSION_MAX,
- } DRV_Frontend_Spectral_Inversion_t;
- /*!
- * @brief Zap Control.
- */
- typedef enum
- {
- FRONTEND_ZAP_ACQ_ONLY = 901,
- FRONTEND_ZAP_NORMAL_ACQ = 902,
- FRONTEND_ZAP_MAX,
- } DRV_Frontend_ZapCtrl_t;
- /*!
- * @brief Zap Control.
- */
- // typedef enum
- // {
- // FRONTEND_BLLINDSCAN_PROGRESS_UNKOW ,
- // FRONTEND_BLLINDSCAN_PROGRESS_N_COMPLETE ,
- // FRONTEND_BLLINDSCAN_PROGRESS_COMPLETE ,
- // FRONTEND_BLLINDSCAN_PROGRESS_MAX,
- // } DRV_Frontend_BLlindScan_Progress_Status_t;
- /*!
- * @brief Zap Control.
- */
- typedef struct
- {
- UINT32 completionPercentage;
- BOOL Channel_Found;
- } DRV_Frontend_BLlindScan_Progress_t;
- typedef struct _SATELLITE_CH_INFO_
- {
- UINT32 freqKHz;
- UINT32 baudrate;
- DRV_Frontend_Type_t standard;
- DRV_Frontend_Diseqc_Bank_T DiseqcBank;
- }DRV_Frontend_Sat_Ch_Info_t;
- typedef struct _BS_SATELLITE_CH_INFO_
- {
- UINT32 freqKHz;
- UINT32 baudrate;
- DRV_Frontend_Type_t standard;
- UINT32 DemodCostTime;
- UINT32 TSCostTime;
- }DRV_Frontend_BS_Sat_Ch_Info_t;
- typedef struct
- {
- UINT8 nCh;
- DRV_Frontend_Sat_Ch_Info_t para[256];
- }DRV_Frontend_Sat_Ch_List_t;
- typedef struct
- {
- UINT32 nCh;
- DRV_Frontend_BS_Sat_Ch_Info_t para[1000];
- }DRV_Frontend_BS_Sat_Ch_List_t;
- /*!
- * @brief Digital Control Parameter - QPSK.
- */
- typedef struct
- {
- unsigned int tuningFrequencyMHz; /* In MHz */
- unsigned int imqSign; /* (i,q) or (i,-q) */
- unsigned int viterbiCodeRate; /* Viterbi code rate */
- unsigned int symbolRateKHz; /* In ksymbols/s */
- unsigned int polarization; /* Horizontal or Vertical */
- DRV_Frontend_Code_Rate_t efec_inner; /* forward error correction (see above) */
- } DRV_Frontend_QPSK_Param_t;
- /*!
- * @brief Digital Control Parameter - QAM.
- */
- typedef struct
- {
- unsigned int symbol_rate; // symbol rate in Symbols per second
- DRV_Frontend_Code_Rate_t fec_inner; // forward error correction (see above)
- DRV_Frontend_Modulation_Type_t modulation; // modulation type (see above)
- DRV_Frontend_Bandwidth_t bandwidth;
- } DRV_Frontend_QAM_Param_t;
- /*!
- * @brief Digital Control Parameter - OFDM.
- */
- typedef struct
- {
- DRV_Frontend_Bandwidth_t bandwidth;
- DRV_Frontend_Code_Rate_t code_rate_HP; // high priority stream code rate
- DRV_Frontend_Code_Rate_t code_rate_LP; // low priority stream code rate
- DRV_Frontend_Modulation_Type_t constellation; // modulation type (see above)
- DRV_Frontend_Transmit_Mode_t transmission_mode;
- DRV_Frontend_Guard_Interval_t guard_interval;
- DRV_Frontend_Hierarchy_t hierarchy_information;
- DRV_Frontend_Priority_t eHPLP;
- int dPLP_ID; // DVB_T2 PLP ID
- } DRV_Frontend_OFDM_Param_t;
- /*!
- * @brief Digital Control Parameter - DVB-S2.
- */
- typedef struct
- {
- unsigned int u32symbol_rate; /* symbol rate in Symbols per second */
- unsigned int polarization;
- DRV_Frontend_Diseqc_Bank_T DiseqcBank;
- DRV_Frontend_Type_t eFeType;
- DRV_Frontend_Code_Rate_t efec_inner; /* forward error correction (see above) */
- DRV_Frontend_RollOff_t erolloff_factor; /* rolloff factor needed for dvb-s2 */
- DRV_Frontend_Modulation_Type_t emodulation; /* modulation type (see above) */
- DRV_Frontend_Pilot_t eFePilot;
- unsigned int u32BS_Start_Freq_kHz; // blind search start frequency, uint: kHz
- unsigned int u32BS_Stop_Freq_kHz; //blind search stop frequency , unit: kHz
- }DRV_Frontend_DVB_S2_Param_t;
- /*!
- * @brief Digital Control Parameter - TDSOFDM.
- */
- typedef struct
- {
- unsigned int dDemodPara;
- DRV_Frontend_Carrier_Mode_t carrier_mode;
- DRV_Frontend_Bandwidth_t bandwidth;
- DRV_Frontend_Code_Rate_t code_rate; //0.4, 0.6, 0.8
- DRV_Frontend_Modulation_Type_t constellation; //QPSK, 16QAM, 64QAM
- DRV_Frontend_Guard_Interval_t guard_interval; //pn945, pN420
- DRV_Frontend_Time_Deinterleaver_t time_deinterleaver; //240, 720
- }DRV_Frontend_TDSOFDM_Param_t;
- /*!
- * @brief Digital Control Parameter - SBTVD.
- */
- typedef struct
- {
- DRV_Frontend_Bandwidth_t bandwidth;
- DRV_Frontend_Code_Rate_t code_rate_HP; // high priority stream code rate
- DRV_Frontend_Code_Rate_t code_rate_LP; // low priority stream code rate
- DRV_Frontend_Modulation_Type_t constellation; // modulation type (see above)
- DRV_Frontend_Transmit_Mode_t transmission_mode;
- DRV_Frontend_Guard_Interval_t guard_interval;
- DRV_Frontend_Hierarchy_t hierarchy_information;
- DRV_Frontend_Priority_t eHPLP;
- } DRV_Frontend_SBTVD_Param_t;
- /*!
- * @brief Digital Control Parameter - J83B.
- */
- typedef struct
- {
- DRV_Frontend_Bandwidth_t bandwidth;
- DRV_Frontend_Modulation_Type_t modulation;
- } DRV_Frontend_J83B_Param_t;
- /*!
- * @brief Digital Control Parameter - ATSC.
- */
- typedef struct
- {
- DRV_Frontend_Bandwidth_t bandwidth;
- DRV_Frontend_Modulation_Type_t modulation;
- } DRV_Frontend_ATSC_Param_t;
- /*!
- * @brief Query Modulation Info
- */
- typedef struct
- {
- DRV_Frontend_QPSK_Param_t QPSK; //DVB-S
- DRV_Frontend_QAM_Param_t QAM; //DVB-C
- DRV_Frontend_OFDM_Param_t OFDM; //DVB-T
- DRV_Frontend_DVB_S2_Param_t DVB_S2;
- DRV_Frontend_TDSOFDM_Param_t TDSOFDM;
- DRV_Frontend_SBTVD_Param_t SBTVD;
- DRV_Frontend_ATSC_Param_t ATSC;
- DRV_Frontend_J83B_Param_t J83B;
- } DRV_Frontend_Modulation_Info_t;
- typedef struct
- {
- signed char s8HasSignal;
- DRV_Frontend_Type_t enFeType;
- unsigned int frequency;
- unsigned int freqend;
- DRV_Frontend_Spectral_Inversion_t inversion;
- unsigned int nextfreq;
- DRV_Frontend_ZapCtrl_t eZapCtrl;
- DRV_Frontend_QPSK_Param_t QPSK; //DVB-S
- DRV_Frontend_QAM_Param_t QAM; //DVB-C
- DRV_Frontend_OFDM_Param_t OFDM; //DVB-T
- DRV_Frontend_DVB_S2_Param_t DVB_S2;
- DRV_Frontend_TDSOFDM_Param_t TDSOFDM;
- DRV_Frontend_SBTVD_Param_t SBTVD;
- DRV_Frontend_ATSC_Param_t ATSC;
- DRV_Frontend_J83B_Param_t J83B;
- } DRV_FrontendCtrlParam_t;
- /*--------------------------------------
- * indicate the current input source
- */
- typedef enum{
- Frontend_SourceAtv,
- Frontend_SourceDtv,
- Frontend_SourceAv,
- Frontend_SourceAv2,
- Frontend_SourceSv,
- Frontend_SourceSv2,
- Frontend_SourceComponent,
- Frontend_SourceScart1Av,
- Frontend_SourceScart1Sv,
- Frontend_SourceScart1Auto,
- Frontend_SourceScart2Av,
- Frontend_SourceScart2Sv,
- Frontend_SourceScart2Auto,
- Frontend_InputSourceMax
- } DRV_Frontend_PowerSaving_Source_Type_e, *DRV_pFrontend_PowerSaving_Source_Type_e;
- /*--------------------------------------
- * indicate the request to Tuner_Demod power on/off
- */
- typedef enum{
- Frontend_Power_Off,
- Frontend_Power_On,
- Frontend_Power_On_I_Path,
- Frontend_Power_Default = Frontend_Power_Off
- } DRV_Frontend_PowerSaving_Power_Type_e, *DRV_pFrontend_PowerSaving_Power_Type_e;
- /*--------------------------------------
- * indicate the status of Tuner_Demod power on/off
- */
- typedef enum{
- Frontend_PowerSts_Off,
- Frontend_PowerSts_On,
- Frontend_PowerSts_Default = Frontend_PowerSts_Off
- } DRV_Frontend_PowerSaving_Status_e, *DRV_pFrontend_PowerSaving_Status_e;
- /*--------------------------------------
- * indicate the request connect type for Tuner_Demod
- */
- typedef enum{
- Frontend_Connect_Type_TUNER,
- Frontend_Connect_Type_S2_TUNER,
- Frontend_Connect_Type_ADEMOD,
- Frontend_Connect_Type_DDEMOD,
- Frontend_Connect_Type_SIF,
- Frontend_Connect_Type_DEMOD_AFE,
- Frontend_Connect_Type_Max
- } DRV_Frontend_PowerSaving_Connect_Type_e, *DRV_pFrontend_PowerSaving_Connect_Type_e;
- /*--------------------------------------
- * indicate the request power saving for Tuner_Demod
- */
- typedef struct {
- DRV_Frontend_PowerSaving_Connect_Type_e ptype;
- DRV_Frontend_PowerSaving_Source_Type_e inputSrc;
- DRV_Frontend_PowerSaving_Power_Type_e power;
- DRV_Frontend_PowerSaving_Status_e status;
- } DRV_Frontend_PowerSaving_Type_t, *DRV_pFrontend_PowerSaving_Type_t;
- /*--------------------------------------
- * set tuner xtal setting
- */
- typedef enum{
- DRV_Frontend_Tuner_Xtal_Out_Enable,
- DRV_Frontend_Tuner_Xtal_Out_Disable,
- DRV_Frontend_Tuner_Xtal_Out_Default = DRV_Frontend_Tuner_Xtal_Out_Disable
- }DRV_Frontend_Tuner_Xtal_Out_Type_e, *DRV_pFrontend_Tuner_Xtal_Out_Type_e;
- #endif
|