xref: /linux/drivers/staging/media/av7110/sp8870.h (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  *  Driver for Spase SP8870 demodulator
4  *
5  *  Copyright (C) 1999 Juergen Peitz
6  */
7 
8 #ifndef SP8870_H
9 #define SP8870_H
10 
11 #include <linux/dvb/frontend.h>
12 #include <linux/firmware.h>
13 
14 struct sp8870_config {
15 	/* the demodulator's i2c address */
16 	u8 demod_address;
17 
18 	/* request firmware for device */
19 	int (*request_firmware)(struct dvb_frontend *fe, const struct firmware **fw, char *name);
20 };
21 
22 #if IS_REACHABLE(CONFIG_DVB_SP8870)
23 struct dvb_frontend *sp8870_attach(const struct sp8870_config *config, struct i2c_adapter *i2c);
24 #else
sp8870_attach(const struct sp8870_config * config,struct i2c_adapter * i2c)25 static inline struct dvb_frontend *sp8870_attach(const struct sp8870_config *config,
26 						 struct i2c_adapter *i2c)
27 {
28 	pr_warn(KBUILD_MODNAME ": %s(): driver disabled by Kconfig\n", __func__);
29 	return NULL;
30 }
31 #endif // CONFIG_DVB_SP8870
32 
33 #endif // SP8870_H
34