1 /* 2 This program is free software; you can redistribute it and/or modify 3 it under the terms of the GNU General Public License as published by 4 the Free Software Foundation; either version 2 of the License, or 5 (at your option) any later version. 6 7 This program is distributed in the hope that it will be useful, 8 but WITHOUT ANY WARRANTY; without even the implied warranty of 9 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10 GNU General Public License for more details. 11 12 You should have received a copy of the GNU General Public License 13 along with this program; if not, write to the Free Software 14 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 15 */ 16 17 #ifndef __TDA8290_H__ 18 #define __TDA8290_H__ 19 20 #include <linux/i2c.h> 21 #include "dvb_frontend.h" 22 23 struct tda829x_config { 24 unsigned int lna_cfg; 25 26 unsigned int probe_tuner:1; 27 #define TDA829X_PROBE_TUNER 0 28 #define TDA829X_DONT_PROBE 1 29 }; 30 31 #if defined(CONFIG_MEDIA_TUNER_TDA8290) || (defined(CONFIG_MEDIA_TUNER_TDA8290_MODULE) && defined(MODULE)) 32 extern int tda829x_probe(struct i2c_adapter *i2c_adap, u8 i2c_addr); 33 34 extern struct dvb_frontend *tda829x_attach(struct dvb_frontend *fe, 35 struct i2c_adapter *i2c_adap, 36 u8 i2c_addr, 37 struct tda829x_config *cfg); 38 #else 39 static inline int tda829x_probe(struct i2c_adapter *i2c_adap, u8 i2c_addr) 40 { 41 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); 42 return -EINVAL; 43 } 44 45 static inline struct dvb_frontend *tda829x_attach(struct dvb_frontend *fe, 46 struct i2c_adapter *i2c_adap, 47 u8 i2c_addr, 48 struct tda829x_config *cfg) 49 { 50 printk(KERN_INFO "%s: not probed - driver disabled by Kconfig\n", 51 __func__); 52 return NULL; 53 } 54 #endif 55 56 #endif /* __TDA8290_H__ */ 57