1 /* 2 * Driver for Silicon Labs SI2165 DVB-C/-T Demodulator 3 * 4 * Copyright (C) 2013-2017 Matthias Schwarzott <zzam@gentoo.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 * GNU General Public License for more details. 15 * 16 * References: 17 * http://www.silabs.com/Support%20Documents/TechnicalDocs/Si2165-short.pdf 18 * 19 */ 20 21 #ifndef _DVB_SI2165_H 22 #define _DVB_SI2165_H 23 24 #include <linux/dvb/frontend.h> 25 26 enum { 27 SI2165_MODE_OFF = 0x00, 28 SI2165_MODE_PLL_EXT = 0x20, 29 SI2165_MODE_PLL_XTAL = 0x21 30 }; 31 32 /* I2C addresses 33 * possible values: 0x64,0x65,0x66,0x67 34 */ 35 struct si2165_platform_data { 36 /* 37 * frontend 38 * returned by driver 39 */ 40 struct dvb_frontend **fe; 41 42 /* external clock or XTAL */ 43 u8 chip_mode; 44 45 /* frequency of external clock or xtal in Hz 46 * possible values: 4000000, 16000000, 20000000, 240000000, 27000000 47 */ 48 u32 ref_freq_hz; 49 50 /* invert the spectrum */ 51 bool inversion; 52 }; 53 54 #endif /* _DVB_SI2165_H */ 55