1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  *   Sharp s921 driver
4  *
5  *   Copyright (C) 2009 Mauro Carvalho Chehab
6  *   Copyright (C) 2009 Douglas Landgraf <dougsland@redhat.com>
7  */
8 
9 #ifndef S921_H
10 #define S921_H
11 
12 #include <linux/dvb/frontend.h>
13 
14 struct s921_config {
15 	/* the demodulator's i2c address */
16 	u8 demod_address;
17 };
18 
19 #if IS_REACHABLE(CONFIG_DVB_S921)
20 extern struct dvb_frontend *s921_attach(const struct s921_config *config,
21 					   struct i2c_adapter *i2c);
22 extern struct i2c_adapter *s921_get_tuner_i2c_adapter(struct dvb_frontend *);
23 #else
24 static inline struct dvb_frontend *s921_attach(
25 	const struct s921_config *config, struct i2c_adapter *i2c)
26 {
27 	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
28 	return NULL;
29 }
30 static inline struct i2c_adapter *
31 	s921_get_tuner_i2c_adapter(struct dvb_frontend *fe)
32 {
33 	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
34 	return NULL;
35 }
36 #endif
37 
38 #endif /* S921_H */
39