1/* 2 * Driver for Quantek QT1010 silicon tuner 3 * 4 * Copyright (C) 2006 Antti Palosaari <crope@iki.fi> 5 * Aapo Tahkola <aet@rasterburn.org> 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/* 26reg def meaning 27=== === ======= 2800 00 ? 2901 a0 ? operation start/stop; start=80, stop=00 3002 00 ? 3103 19 ? 3204 00 ? 3305 00 ? maybe band selection 3406 00 ? 3507 2b set frequency: 32 MHz scale, n*32 MHz 3608 0b ? 3709 10 ? changes every 8/24 MHz; values 1d/1c 380a 08 set frequency: 4 MHz scale, n*4 MHz 390b 41 ? changes every 2/2 MHz; values 45/45 400c e1 ? 410d 94 ? 420e b6 ? 430f 2c ? 4410 10 ? 4511 f1 ? maybe device specified adjustment 4612 11 ? maybe device specified adjustment 4713 3f ? 4814 1f ? 4915 3f ? 5016 ff ? 5117 ff ? 5218 f7 ? 5319 80 ? 541a d0 set frequency: 125 kHz scale, n*125 kHz 551b 00 ? 561c 89 ? 571d 00 ? 581e 00 ? looks like operation register; write cmd here, read result from 1f-26 591f 20 ? chip initialization 6020 e0 ? chip initialization 6121 20 ? 6222 d0 ? 6323 d0 ? 6424 d0 ? 6525 40 ? chip initialization 6626 08 ? 6727 29 ? 6828 55 ? 6929 39 ? 702a 13 ? 712b 01 ? 722c ea ? 732d 00 ? 742e 00 ? not used? 752f 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 89typedef struct { 90 u8 oper, reg, val; 91} qt1010_i2c_oper_t; 92 93struct qt1010_priv { 94 struct qt1010_config *cfg; 95 struct i2c_adapter *i2c; 96 97 u8 reg1f_init_val; 98 u8 reg20_init_val; 99 u8 reg25_init_val; 100 101 u32 frequency; 102 u32 bandwidth; 103}; 104 105#endif 106