xref: /openbmc/linux/drivers/media/tuners/qt1010.h (revision bc5aa3a0)
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_H
23 #define QT1010_H
24 
25 #include "dvb_frontend.h"
26 
27 struct qt1010_config {
28 	u8 i2c_address;
29 };
30 
31 /**
32  * Attach a qt1010 tuner to the supplied frontend structure.
33  *
34  * @param fe   frontend to attach to
35  * @param i2c  i2c adapter to use
36  * @param cfg  tuner hw based configuration
37  * @return fe  pointer on success, NULL on failure
38  */
39 #if IS_REACHABLE(CONFIG_MEDIA_TUNER_QT1010)
40 extern struct dvb_frontend *qt1010_attach(struct dvb_frontend *fe,
41 					  struct i2c_adapter *i2c,
42 					  struct qt1010_config *cfg);
43 #else
44 static inline struct dvb_frontend *qt1010_attach(struct dvb_frontend *fe,
45 						 struct i2c_adapter *i2c,
46 						 struct qt1010_config *cfg)
47 {
48 	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
49 	return NULL;
50 }
51 #endif // CONFIG_MEDIA_TUNER_QT1010
52 
53 #endif
54