Merge branch 'work.regset' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux/fpc-iii.git] / drivers / media / tuners / qt1010_priv.h
blobf8661177451e3b1cac91fbe10e0b9036564283ed
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3 * Driver for Quantek QT1010 silicon tuner
5 * Copyright (C) 2006 Antti Palosaari <crope@iki.fi>
6 * Aapo Tahkola <aet@rasterburn.org>
7 */
9 #ifndef QT1010_PRIV_H
10 #define QT1010_PRIV_H
13 reg def meaning
14 === === =======
15 00 00 ?
16 01 a0 ? operation start/stop; start=80, stop=00
17 02 00 ?
18 03 19 ?
19 04 00 ?
20 05 00 ? maybe band selection
21 06 00 ?
22 07 2b set frequency: 32 MHz scale, n*32 MHz
23 08 0b ?
24 09 10 ? changes every 8/24 MHz; values 1d/1c
25 0a 08 set frequency: 4 MHz scale, n*4 MHz
26 0b 41 ? changes every 2/2 MHz; values 45/45
27 0c e1 ?
28 0d 94 ?
29 0e b6 ?
30 0f 2c ?
31 10 10 ?
32 11 f1 ? maybe device specified adjustment
33 12 11 ? maybe device specified adjustment
34 13 3f ?
35 14 1f ?
36 15 3f ?
37 16 ff ?
38 17 ff ?
39 18 f7 ?
40 19 80 ?
41 1a d0 set frequency: 125 kHz scale, n*125 kHz
42 1b 00 ?
43 1c 89 ?
44 1d 00 ?
45 1e 00 ? looks like operation register; write cmd here, read result from 1f-26
46 1f 20 ? chip initialization
47 20 e0 ? chip initialization
48 21 20 ?
49 22 d0 ?
50 23 d0 ?
51 24 d0 ?
52 25 40 ? chip initialization
53 26 08 ?
54 27 29 ?
55 28 55 ?
56 29 39 ?
57 2a 13 ?
58 2b 01 ?
59 2c ea ?
60 2d 00 ?
61 2e 00 ? not used?
62 2f 00 ? not used?
65 #define QT1010_STEP (125 * kHz) /*
66 * used by Windows drivers,
67 * hw could be more precise but we don't
68 * know how to use
70 #define QT1010_MIN_FREQ (48 * MHz)
71 #define QT1010_MAX_FREQ (860 * MHz)
72 #define QT1010_OFFSET (1246 * MHz)
74 #define QT1010_WR 0
75 #define QT1010_RD 1
76 #define QT1010_M1 3
78 typedef struct {
79 u8 oper, reg, val;
80 } qt1010_i2c_oper_t;
82 struct qt1010_priv {
83 struct qt1010_config *cfg;
84 struct i2c_adapter *i2c;
86 u8 reg1f_init_val;
87 u8 reg20_init_val;
88 u8 reg25_init_val;
90 u32 frequency;
93 #endif