Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
qt1010_priv.h
Go to the documentation of this file.
1 /*
2  * Driver for Quantek QT1010 silicon tuner
3  *
4  * Copyright (C) 2006 Antti Palosaari <[email protected]>
5  * Aapo Tahkola <[email protected]>
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
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 QT1010_PRIV_H
23 #define QT1010_PRIV_H
24 
25 /*
26 reg def meaning
27 === === =======
28 00 00 ?
29 01 a0 ? operation start/stop; start=80, stop=00
30 02 00 ?
31 03 19 ?
32 04 00 ?
33 05 00 ? maybe band selection
34 06 00 ?
35 07 2b set frequency: 32 MHz scale, n*32 MHz
36 08 0b ?
37 09 10 ? changes every 8/24 MHz; values 1d/1c
38 0a 08 set frequency: 4 MHz scale, n*4 MHz
39 0b 41 ? changes every 2/2 MHz; values 45/45
40 0c e1 ?
41 0d 94 ?
42 0e b6 ?
43 0f 2c ?
44 10 10 ?
45 11 f1 ? maybe device specified adjustment
46 12 11 ? maybe device specified adjustment
47 13 3f ?
48 14 1f ?
49 15 3f ?
50 16 ff ?
51 17 ff ?
52 18 f7 ?
53 19 80 ?
54 1a d0 set frequency: 125 kHz scale, n*125 kHz
55 1b 00 ?
56 1c 89 ?
57 1d 00 ?
58 1e 00 ? looks like operation register; write cmd here, read result from 1f-26
59 1f 20 ? chip initialization
60 20 e0 ? chip initialization
61 21 20 ?
62 22 d0 ?
63 23 d0 ?
64 24 d0 ?
65 25 40 ? chip initialization
66 26 08 ?
67 27 29 ?
68 28 55 ?
69 29 39 ?
70 2a 13 ?
71 2b 01 ?
72 2c ea ?
73 2d 00 ?
74 2e 00 ? not used?
75 2f 00 ? not used?
76 */
77 
78 #define QT1010_STEP 125000 /* 125 kHz used by Windows drivers,
79  hw could be more precise but we don't
80  know how to use */
81 #define QT1010_MIN_FREQ 48000000 /* 48 MHz */
82 #define QT1010_MAX_FREQ 860000000 /* 860 MHz */
83 #define QT1010_OFFSET 1246000000 /* 1246 MHz */
84 
85 #define QT1010_WR 0
86 #define QT1010_RD 1
87 #define QT1010_M1 3
88 
89 typedef struct {
90  u8 oper, reg, val;
92 
93 struct qt1010_priv {
94  struct qt1010_config *cfg;
95  struct i2c_adapter *i2c;
96 
100 
101  u32 frequency;
102 };
103 
104 #endif