xref: /linux/drivers/media/tuners/tea5761.h (revision ca55b2fef3a9373fcfc30f82fd26bc7fccbda732)
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 __TEA5761_H__
18 #define __TEA5761_H__
19 
20 #include <linux/i2c.h>
21 #include "dvb_frontend.h"
22 
23 #if IS_REACHABLE(CONFIG_MEDIA_TUNER_TEA5761)
24 extern int tea5761_autodetection(struct i2c_adapter* i2c_adap, u8 i2c_addr);
25 
26 extern struct dvb_frontend *tea5761_attach(struct dvb_frontend *fe,
27 					   struct i2c_adapter* i2c_adap,
28 					   u8 i2c_addr);
29 #else
30 static inline int tea5761_autodetection(struct i2c_adapter* i2c_adap,
31 					u8 i2c_addr)
32 {
33 	printk(KERN_INFO "%s: not probed - driver disabled by Kconfig\n",
34 	       __func__);
35 	return -EINVAL;
36 }
37 
38 static inline struct dvb_frontend *tea5761_attach(struct dvb_frontend *fe,
39 						   struct i2c_adapter* i2c_adap,
40 						   u8 i2c_addr)
41 {
42 	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
43 	return NULL;
44 }
45 #endif
46 
47 #endif /* __TEA5761_H__ */
48