1 /*
2 	Fujitsu MB86A16 DVB-S/DSS DC Receiver driver
3 
4 	Copyright (C) Manu Abraham (abraham.manu@gmail.com)
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 	You should have received a copy of the GNU General Public License
17 	along with this program; if not, write to the Free Software
18 	Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 */
20 
21 #ifndef __MB86A16_H
22 #define __MB86A16_H
23 
24 #include <linux/dvb/frontend.h>
25 #include <media/dvb_frontend.h>
26 
27 
28 struct mb86a16_config {
29 	u8 demod_address;
30 
31 	int (*set_voltage)(struct dvb_frontend *fe,
32 			   enum fe_sec_voltage voltage);
33 };
34 
35 
36 
37 #if IS_REACHABLE(CONFIG_DVB_MB86A16)
38 
39 extern struct dvb_frontend *mb86a16_attach(const struct mb86a16_config *config,
40 					   struct i2c_adapter *i2c_adap);
41 
42 #else
43 
44 static inline struct dvb_frontend *mb86a16_attach(const struct mb86a16_config *config,
45 					   struct i2c_adapter *i2c_adap)
46 {
47 	printk(KERN_WARNING "%s: Driver disabled by Kconfig\n", __func__);
48 	return NULL;
49 }
50 
51 #endif /* CONFIG_DVB_MB86A16 */
52 
53 #endif /* __MB86A16_H */
54