xref: /linux/drivers/media/dvb-frontends/tda665x.h (revision bb9707077b4ee5f77bc9939b057ff8a0d410296f)
1 /*
2 	TDA665x tuner driver
3 	Copyright (C) Manu Abraham (abraham.manu@gmail.com)
4 
5 	This program is free software; you can redistribute it and/or modify
6 	it under the terms of the GNU General Public License as published by
7 	the Free Software Foundation; either version 2 of the License, or
8 	(at your option) any later version.
9 
10 	This program is distributed in the hope that it will be useful,
11 	but WITHOUT ANY WARRANTY; without even the implied warranty of
12 	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 	GNU General Public License for more details.
14 
15 	You should have received a copy of the GNU General Public License
16 	along with this program; if not, write to the Free Software
17 	Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18 */
19 
20 #ifndef __TDA665x_H
21 #define __TDA665x_H
22 
23 struct tda665x_config {
24 	char name[128];
25 
26 	u8	addr;
27 	u32	frequency_min;
28 	u32	frequency_max;
29 	u32	frequency_offst;
30 	u32	ref_multiplier;
31 	u32	ref_divider;
32 };
33 
34 #if IS_REACHABLE(CONFIG_DVB_TDA665x)
35 
36 extern struct dvb_frontend *tda665x_attach(struct dvb_frontend *fe,
37 					   const struct tda665x_config *config,
38 					   struct i2c_adapter *i2c);
39 
40 #else
41 
42 static inline struct dvb_frontend *tda665x_attach(struct dvb_frontend *fe,
43 						  const struct tda665x_config *config,
44 						  struct i2c_adapter *i2c)
45 {
46 	printk(KERN_WARNING "%s: Driver disabled by Kconfig\n", __func__);
47 	return NULL;
48 }
49 
50 #endif /* CONFIG_DVB_TDA665x */
51 
52 #endif /* __TDA665x_H */
53