123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298 |
- #ifndef _DRV_SIF_INTERFACE_H
- #define _DRV_SIF_INTERFACE_H
- #include <drv_types.h>
- typedef enum
- {
-
- TVFE_AUDIO_SIF_AVAIL_ANALOG_MONO = 0x00000001,
- TVFE_AUDIO_SIF_AVAIL_NICAM_MONO = 0x00000002,
- TVFE_AUDIO_SIF_AVAIL_STEREO = 0x00000004,
- TVFE_AUDIO_SIF_AVAIL_DUAL = 0x00000008,
- TVFE_AUDIO_SIF_AVAIL_SAP = 0x00000010,
- TVFE_AUDIO_SIF_AVAIL_ERROR = 0x40000000,
- } TVFE_AudioSIFAvailableMode_e;
- typedef enum
- {
- TVFE_AUDIO_SIF_MODE_ANALOG_MONO = 0,
- TVFE_AUDIO_SIF_MODE_NICAM_MONO,
- TVFE_AUDIO_SIF_MODE_STEREO,
- TVFE_AUDIO_SIF_MODE_DUAL_I,
- TVFE_AUDIO_SIF_MODE_DUAL_II,
- TVFE_AUDIO_SIF_MODE_DUAL_I_II,
- TVFE_AUDIO_SIF_MODE_SAP,
- TVFE_AUDIO_SIF_MODE_ERR,
- } TVFE_AudioSIFMode_e;
- //******************************************************
- // For Setting ASD threshold and force system,
- // it is the interface for sif debug tool
- //******************************************************
- typedef enum
- {
- ASDADJ_SET_THHL = 0,
- ASDADJ_DISPOLLFM,
- ASDADJ_ENPOLLFM,
- ENHWASD_DISPOLLFM,
- AAOS_SET_THHL,
- ENSWASD,
- GETSIF_GAIN,
-
- }SIFSETREG_ASD_FLAG;
- typedef enum
- {
- BTSC = 0,
- PAL,
- KOREA,
- SECAML,
-
- }SIF_ASD_FORCE_SYS;
- //******************************************************
- // For Adjust SIF pre-scale gain by 5 type
- // it is the interface for factory
- //******************************************************
- typedef enum
- {
- BTSC_Mono_Mode=0,
- BTSC_SAP_Mode,
- Nicam_Mono_Mode,
- Nicam_Digital_Mode,
- A2_FM_Mode,
- }SIF_GAIN_TYPE_SYS;
- typedef struct _SET_SIF_GAIN
- {
- UINT8 flag;
- INT32 ADJUST_GAIN;//max:0db~min-20db 1step=0.5db
- }SET_SIF_GAIN,*pSET_SIF_GAIN;
- typedef struct _TVFE_AudioSIF_TH
- {
- //reserved for SW threshold control
- UINT8 MN1ThH;
- UINT8 MN1ThL;
- UINT8 MN2ThH;
- UINT8 MN2ThL;
- UINT8 PN2ThH;
- UINT8 PN2ThL;
- UINT8 FMSMTh;
- UINT8 FMSMTl;
- UINT8 FMSNTh;
- UINT8 FMSNTl;
- UINT8 NIERTh;
- UINT8 NIERTl;
- UINT8 PILMTh;
- UINT8 PILMTl;
- UINT8 ASMTh;
- UINT8 ASQTh;
- UINT8 AANTh;
- UINT8 ANNTh;
- UINT8 SQlTh;
- UINT8 SNsTh;
- UINT8 ASFTh;
- UINT8 AVOLCo;
- UINT8 PSCLCh;
- UINT8 PSCRCh;
- UINT8 AVCThH;
- UINT8 AVCThL;
- UINT8 NIAMPLe;
- UINT8 NIPLe;
- UINT8 A2PLe;
- UINT8 IAVCLo;
- UINT8 IAVCRo;
- } TVFE_AudioSIF_TH,*pTVFE_AudioSIF_TH;
- //ava@20130513 add - SIF AP tool for set sif regsiter (add define)
- typedef struct _SIF_RegInfo
- {
- UINT8 flag;
- UINT8 System;
- UINT8 CARRY2;
- UINT8 ASD;
- UINT8 AAOS;
- UINT8 NTSC_SAP_A2_DUAL;
- UINT8 EU_MODE;
- UINT8 A2_SYS;
- UINT8 Reg00;
- UINT8 Reg01;
- UINT8 Reg0C;
- UINT8 Reg0D;
- UINT8 Reg0E;
- UINT8 Reg0F;
- UINT8 Reg10;
- UINT8 Reg11;
- UINT8 Reg14;
- UINT8 Reg15;
- UINT8 Reg16;
- UINT8 Reg17;
- UINT8 Reg1A;
- UINT8 Reg1B;
- UINT8 Reg1C;
- UINT8 Reg1E;
- UINT8 Reg1F;
- UINT8 Reg20;
- UINT8 Reg21;
- UINT8 Reg2A;
- UINT8 Reg30;
- UINT8 Reg31;
- UINT8 Reg32;
- UINT8 Reg33;
- UINT8 Reg4A;
- UINT8 Reg4B;
- UINT8 Reg4C;
- UINT8 Reg4D;
- UINT8 Reg4E;
- UINT8 Reg4F;
- UINT8 Reg50;
- UINT8 Reg51;
- UINT8 Reg52;
- UINT8 Reg53;
- UINT8 Reg54;
- UINT8 Reg55;
- UINT8 Reg56;
- UINT8 Reg57;
- UINT8 Reg58;
- UINT8 Reg59;
- UINT8 Reg5A;
- UINT8 Reg5B;
- UINT8 Reg5E;
- UINT8 Reg81;
- UINT8 Reg82;
- UINT8 Reg83;
- UINT8 Reg84;
- UINT8 Reg85;
- UINT8 Reg86;
- UINT8 Reg87;
- UINT8 Reg8A;
- UINT8 Reg8B;
- UINT8 Reg92;
- UINT8 Reg92_SAP;
- UINT8 Reg98;
- UINT8 Reg99;
- UINT8 Reg9A;
- }SIF_RegInfo,*pSIF_RegInfo;
-
- typedef enum
- {
- SIF_Disable = 0,
- SIF_Enable
- }ATVPOWSTS_t;
- //******************************************************
- // Return value (detected system) of "RX_TVSYSTEM"
- // it is the define of HW ATV system type
- //******************************************************
- typedef enum //TV System Select (BTSC Enable) 0xbe160000 [3:0]
- {
- TSMOD_A2BG = 0x0, //SIF RETURN SYSTEM = A2_BG
- TSMOD_NICAMBG = 0x1, //SIF RETURN SYSTEM = NICAMBG
- TSMOD_NICAML = 0x2, //SIF RETURN SYSTEM = NICAML
- TSMOD_NICAMI = 0x3, //SIF RETURN SYSTEM = NICAMI
- TSMOD_A2DK1 = 0x4, //SIF RETURN SYSTEM = A2DK1
- TSMOD_A2DK2 = 0x5, //SIF RETURN SYSTEM = A2DK2
- TSMOD_A2DK3 = 0x6, //SIF RETURN SYSTEM = A2DK3
- TSMOD_NICAMDK = 0x7, //SIF RETURN SYSTEM = NICAMDK
- TSMOD_A2MN = 0x8, //SIF RETURN SYSTEM = A2MN
- TSMOD_EIAJ = 0x9, //SIF RETURN SYSTEM = EIAJ
- TSMOD_BTSC = 0xa, //SIF RETURN SYSTEM = BTSCL
- //system type > 0xa will be invalid system type!!
- TSMOD_FMRUS = 0xb, //invalid system type
- TSMOD_FMREU1 = 0xc, //invalid system type
- TSMOD_FMREU2 = 0xd, //invalid system type
- TSMOD_FMREU3 = 0xe, //invalid system type
- TSMOD_FMREU4 = 0xf, //unknow system type, HW default value or system detect fail
- TSMOD_AutoMode = 0x10, //Current no use should be remove late
- TSMOD_NICAML1=0x11, //L' frequency <100Mhz
- TSMOD_UNKNOWN = 0xff, //ERROR, UNKNOWN SYSTEM
- }TVFE_AudioSIFStandard_t;
- //******************************************************
- // ERROR CODE OF SIF DRIVERR
- //******************************************************
- typedef enum
- {
- SIF_OK = 0x0,
- SIF_ERR_POWER_OFF = 0x80,
- SIF_ERR_UNKNOWN = 0xff,
- }TVFE_SIF_STATUS_e;
- typedef struct _TVSYS_CONFIG
- {
- UINT8 SupportSys;
- UINT8 DetectSys;
- }TVSYS_CONFIG,*pTVSYS_CONFIG;
- typedef enum
- {
- Audio_Do_SystemDetect = 0,
- Audio_ForceSystem_DK,
- Audio_ForceSystem_BG,
- Audio_ForceSystem_I,
- Audio_ForceSystem_L,
- Audio_ForceSystem_BTSC,
- Audio_SifDecoder_MUTE,
- Audio_SifDecoder_UNMUTE,
- Audio_SifDecoder_DumpReg,
- Audio_SifState_RFPlugin,//jovi@20110920 represent the RF Line plug in
- Audio_SifState_RFPlugOut, // APP flow notice ATV cable plug out , sif driver will mute and disable polling
- RX_SIFREG_GET,
- RX_SIFREG_SET,
- RX_ADJUST_SIF_GAIN,
- RX_SIFAAOSSTSFLAG_SET,
- RX_SIF_POWER_SET,
- RX_SIF_MTSMODE_SET,
- RX_SIF_THRESHOLD_SET,
- RX_SIF_AGC_RESET,
- RX_SIF_SHOW_REG,
- }SIFCTL_Operation;
- typedef enum
- {
- SSF_ALL_DISABLE = 0x0, // Disable ASD TIMER and AAOS (AutoMute)
- SSF_ASD_DIS_AAOS_EN = 0x1, // Disable ASD TIMER and ENABLE AAOS (AutoMute)
- SSF_ALL_ENABLE = 0x2, // ENABLE ASD TIMER and AAOS (AutoMute)
- SSF_ASD_EN_AAOS_DIS = 0x3, // ENABLE ASD TIMER and Disable AAOS (AutoMute)
- SSF_MAX_FLAG,
- }SIFAAOSASD_STSFLAG;
- //20090506 Shangru add for sifap
- typedef struct _SIF_CONTROL
- {
- UINT32 flag;
-
- union{
- UINT32 value;
- UINT8 AAOS_ASDFLAG;//SIFAAOSASD_STSFLAG
- UINT8 SIFPOWERStatus;//ATVPOWSTS_t
- TVFE_AudioSIFMode_e SetMTSMod;
- pTVFE_AudioSIF_TH pSetSifTH;
- pSET_SIF_GAIN pSifGan; // set sif gain
- pSIF_RegInfo pSifReg; //set/read sif register
- };
-
- }SIF_CONTROL, *pSIF_CONTROL;
- typedef struct _TVFE_AudioFrontEndStatus_t
- {
- TVFE_AudioSIFStandard_t eSySStandard; //sif system
- TVFE_AudioSIFAvailableMode_e eAvaiMode; //MTS OSD mdoe
- TVFE_AudioSIFMode_e eCurrentMode; //Current mode
- } TVFE_AudioFrontEndStatus_t,*pTVFE_AudioFrontEndStatus_t;
- #endif
|