xref: /openbmc/linux/drivers/media/dvb-frontends/cx24117.h (revision 58e16d792a6a8c6b750f637a4649967fcac853dc)
1*74ba9207SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
20d788680SLuis Alves /*
30d788680SLuis Alves     Conexant cx24117/cx24132 - Dual DVBS/S2 Satellite demod/tuner driver
40d788680SLuis Alves 
50d788680SLuis Alves     Copyright (C) 2013 Luis Alves <ljalvs@gmail.com>
60d788680SLuis Alves 	(based on cx24116.h by Steven Toth)
70d788680SLuis Alves 
80d788680SLuis Alves */
90d788680SLuis Alves 
100d788680SLuis Alves #ifndef CX24117_H
110d788680SLuis Alves #define CX24117_H
120d788680SLuis Alves 
130d788680SLuis Alves #include <linux/dvb/frontend.h>
140d788680SLuis Alves 
150d788680SLuis Alves struct cx24117_config {
160d788680SLuis Alves 	/* the demodulator's i2c address */
170d788680SLuis Alves 	u8 demod_address;
180d788680SLuis Alves };
190d788680SLuis Alves 
209b174527SArnd Bergmann #if IS_REACHABLE(CONFIG_DVB_CX24117)
210d788680SLuis Alves extern struct dvb_frontend *cx24117_attach(
220d788680SLuis Alves 	const struct cx24117_config *config,
23d10e8280SLuis Alves 	struct i2c_adapter *i2c);
240d788680SLuis Alves #else
cx24117_attach(const struct cx24117_config * config,struct i2c_adapter * i2c)250d788680SLuis Alves static inline struct dvb_frontend *cx24117_attach(
260d788680SLuis Alves 	const struct cx24117_config *config,
27d10e8280SLuis Alves 	struct i2c_adapter *i2c)
280d788680SLuis Alves {
290d788680SLuis Alves 	dev_warn(&i2c->dev, "%s: driver disabled by Kconfig\n", __func__);
300d788680SLuis Alves 	return NULL;
310d788680SLuis Alves }
320d788680SLuis Alves #endif
330d788680SLuis Alves 
340d788680SLuis Alves #endif /* CX24117_H */
35