1 /*
2  *  Driver for the Integrant ITD1000 "Zero-IF Tuner IC for Direct Broadcast Satellite"
3  *
4  *  Copyright (c) 2007 Patrick Boettcher <pb@linuxtv.org>
5  *
6  *  This program is free software; you can redistribute it and/or modify
7  *  it under the terms of the GNU General Public License as published by
8  *  the Free Software Foundation; either version 2 of the License, or
9  *  (at your option) any later version.
10  *
11  *  This program is distributed in the hope that it will be useful,
12  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  *
15  *  GNU General Public License for more details.
16  *
17  *  You should have received a copy of the GNU General Public License
18  *  along with this program; if not, write to the Free Software
19  *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.=
20  */
21 
22 #ifndef ITD1000_PRIV_H
23 #define ITD1000_PRIV_H
24 
25 struct itd1000_state {
26 	struct itd1000_config *cfg;
27 	struct i2c_adapter    *i2c;
28 
29 	u32 frequency; /* contains the value resulting from the LO-setting */
30 
31 	/* ugly workaround for flexcop's incapable i2c-controller
32 	 * FIXME, if possible
33 	 */
34 	u8 shadow[256];
35 };
36 
37 enum itd1000_register {
38 	VCO_CHP1 = 0x65,
39 	VCO_CHP2,
40 	PLLCON1,
41 	PLLNH,
42 	PLLNL,
43 	PLLFH,
44 	PLLFM,
45 	PLLFL,
46 	RESERVED_0X6D,
47 	PLLLOCK,
48 	VCO_CHP2_I2C,
49 	VCO_CHP1_I2C,
50 	BW,
51 	RESERVED_0X73 = 0x73,
52 	RESERVED_0X74,
53 	RESERVED_0X75,
54 	GVBB,
55 	GVRF,
56 	GVBB_I2C,
57 	EXTGVBBRF,
58 	DIVAGCCK,
59 	BBTR,
60 	RFTR,
61 	BBGVMIN,
62 	RESERVED_0X7E,
63 	RESERVED_0X85 = 0x85,
64 	RESERVED_0X86,
65 	CON1,
66 	RESERVED_0X88,
67 	RESERVED_0X89,
68 	RFST0,
69 	RFST1,
70 	RFST2,
71 	RFST3,
72 	RFST4,
73 	RFST5,
74 	RFST6,
75 	RFST7,
76 	RFST8,
77 	RFST9,
78 	RESERVED_0X94,
79 	RESERVED_0X95,
80 	RESERVED_0X96,
81 	RESERVED_0X97,
82 	RESERVED_0X98,
83 	RESERVED_0X99,
84 	RESERVED_0X9A,
85 	RESERVED_0X9B,
86 };
87 
88 #endif
89