source: svn/newcon3bcm2_21bu/dst/dhl/src/devices/lg3305/LG3305.h

Last change on this file was 76, checked in by megakiss, 10 years ago

1W 대기전력을 만족시키기 위하여 POWEROFF시 튜너를 Standby 상태로 함

  • Property svn:executable set to *
File size: 4.3 KB
Line 
1
2
3/**
4        LG3305.h
5       
6        Demodulator Driver(LG3305).
7
8        Copyright 2006~2010 Digital STREAM Technology, Inc.
9        All Rights Reserved
10
11        Release History:
12       
13*/
14
15
16
17#ifndef __LG3305_H__
18#define __LG3305_H__
19
20
21
22
23
24#ifdef __cplusplus
25extern "C" {
26#endif
27
28
29
30#if COMMENT
31____Overview____(){}
32#endif
33
34/**
35        \file LG3305.h
36        ----LG3305 Çì´õÆÄÀÏ ³»¿ë ¼³¸í----
37
38        Demodulator (LG3305) ±¸µ¿ Driver ¹× API.
39
40        DST HAL ±¸Á¶¿¡ ¸Â°Ô API ÀÛ¼º.
41
42
43*/
44
45
46
47
48
49#if COMMENT
50_____LG3305_Code____(){}
51#endif
52
53
54typedef unsigned char   DATA08;
55typedef unsigned short  DATA16;
56typedef unsigned int    DATA32;
57typedef float                   DATA_FLOAT;
58typedef double                  DATA_DOUBLE;
59
60
61#ifndef CYGONCE_INFRA_CYG_TYPE_H
62typedef enum{
63
64        false = 0,
65        true
66
67}bool;
68#endif
69
70#define PASS_ON         true
71#define PASS_OFF        false
72#define DELAY                   500
73
74typedef struct {
75        DATA08          Major;
76        DATA08          Minor;
77        DATA08          Custom;
78        //LgdtTuner_t   Tuner;
79} LgdtVersion_s;
80
81
82typedef enum{
83        LGDT_ERR_NO                     =   0,
84        LGDT_ERR_I2C            =   1,
85        LGDT_ERR_INIT           =   2,
86        LGDT_ERR_RUN            =   4,
87        LGDT_ERR_PARAM          =   8,  /*-----         Invalid parameter check                         -----*/
88        LGDT_ERR_CHECK_FUNC     =  16,  /*-----         Error returned from LgdtCheck...()      -----*/
89        LGDT_ERR_ALTER_FUNC     =  32,  /*-----         Error returned from LgdtAlter...()      -----*/
90        LGDT_ERR_SCAN           =  64,  /*-----         Channel Scan                                            -----*/
91        LGDT_ERR_ANT            = 128,  /*-----         Smart Antenna                                           -----*/
92        LGDT_ERR_TUNER          = 256,  /*-----         Reserved for a tuner manufacturer       -----*/
93        LGDT_ERR_OTHER          = 512
94}LgdtReturn_t;
95
96
97typedef enum{
98        LGDT_QAM64      = 0x00,
99        LGDT_QAM256     = 0x01,
100        LGDT_VSB        = 0x03,
101        LGDT_ANTENNA= 0x05
102}LgdtOperMode_t;
103
104
105typedef enum{
106        LGDT_PARAL  = 0x00,
107        LGDT_SERIAL = 0x01
108}LgdtMpegMode_t;
109
110
111typedef enum{
112        LGDT_CLOCK_LOW  = 0x00,
113        LGDT_CLOCK_HIGH = 0x01
114}LgdtClock_t;
115
116
117typedef enum {
118        LGDT_NOT_INVERTED = 0,
119        LGDT_INVERTED = 1
120} LgdtInvert_t;
121
122
123typedef enum {
124        LGDT_LSB1ST = 0,
125        LGDT_MSB1ST = 1
126} LgdtData1st_t;
127
128
129typedef enum {
130        LGDT_ERRINS_DISABLE = 0,
131        LGDT_ERRINS_ENABLE = 1
132} LgdtErrins_t;
133
134
135typedef enum {
136        LGDT_GATED_CLOCK = 0,
137        LGDT_FIXED_CLOCK = 1
138} LgdtTpclkmod_t;
139
140
141typedef enum {
142        LGDT_PolyPRBS15 = 0,
143        LGDT_PolyPRBS23 = 1,
144        LGDT_PolyPRBS   = 2,                    /*-----          etc    -----*/
145} LgdtPolyPRBS_t;
146
147
148LgdtReturn_t LgdtInitFAT(LgdtOperMode_t modeOper, bool IsExtAGC);
149LgdtReturn_t LgdtInitQAM_ExternAGC(LgdtOperMode_t mode);
150LgdtReturn_t LgdtInitVSB_ExternAGC(void);
151LgdtReturn_t LgdtInitQAM(LgdtOperMode_t mode);
152LgdtReturn_t LgdtInitVSB(void);
153LgdtReturn_t LgdtResetFAT(void);
154LgdtReturn_t LgdtCheckRegi(DATA16 nAddr, DATA08* pData);
155LgdtReturn_t LgdtAlterRegi(DATA16 nAddr, DATA08 nData);
156int LgdtDelay(DATA16 nDelayTime);
157LgdtReturn_t LgdtRepeaterI2C(bool mode);
158LgdtReturn_t LgdtCheckOperMode(LgdtOperMode_t* modeOper);
159LgdtReturn_t LgdtCheckVersion(LgdtVersion_s *pVersion);
160LgdtReturn_t LgdtIsLockSync(bool* isLock);
161LgdtReturn_t LgdtIsLockCR(bool *isLock);
162
163
164
165#if COMMENT
166_____User_Code_____(){}
167#endif
168
169
170
171#if COMMENT
172____Defines____(){}
173#endif
174
175
176
177#if COMMENT
178________(){}
179#endif
180
181LgdtReturn_t Lgdt_Delay(DATA16 nDelayTime);
182LgdtReturn_t Lgdt_I2C_Write(DATA08 *pData, DATA08 nSizeData);
183LgdtReturn_t Lgdt_I2C_Read(DATA08 nAddrDev, DATA16 nAddrReg, DATA08 *pData, DATA08 nSizeData);
184LgdtReturn_t Lgdt_get_VSBLock(DATA08 *lock);
185LgdtReturn_t Lgdt_get_QAMLock(DATA08 *lock);
186LgdtReturn_t LgdtAlterMpegSettings(LgdtData1st_t data1st, LgdtErrins_t errins, 
187        LgdtTpclkmod_t tpclkmod, LgdtClock_t tpsoppol, LgdtClock_t tperrpol);
188LgdtReturn_t LgdtIsLockAgc(bool* isLock);
189LgdtReturn_t LgdtIsLockTR(bool* isLock);
190LgdtReturn_t LgdtCheckSnrFAT(DATA_DOUBLE* nSNR);
191LgdtReturn_t LgdtCheckSnrQAM(DATA_DOUBLE* nEQ, LgdtOperMode_t modeOper);
192LgdtReturn_t LgdtCheckSnrVSB(DATA_DOUBLE* nPT);
193
194
195
196
197#if COMMENT
198____API____(){}
199#endif
200
201LgdtReturn_t LG3305_init(DATA08 id, DATA08 hI2c, DATA08 i2cAddr);
202LgdtReturn_t LG3305_tune(DATA08 id, LgdtOperMode_t demod, DATA_DOUBLE if_freq);
203LgdtReturn_t LG3305_RepeaterI2C(DATA08 id, bool mode);
204LgdtReturn_t LG3305_get_LockStatus(DATA08 id, LgdtOperMode_t demod, DATA08 *lock);
205LgdtReturn_t LG3305_get_Snr(DATA08 id, LgdtOperMode_t demod, DATA_DOUBLE *nSNR);
206LgdtReturn_t LG3305_get_FECerr(DATA08 id, LgdtOperMode_t demod, DATA16 *nErr);
207
208
209
210#if COMMENT
211____test____(){}
212#endif
213
214
215
216
217
218#ifdef __cplusplus
219} /* extern "C" */
220#endif
221
222
223#endif /* __LG3305_H__*/
224
225
226
Note: See TracBrowser for help on using the repository browser.