174ba9207SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
29a0bf528SMauro Carvalho Chehab /*
39a0bf528SMauro Carvalho Chehab     Legend Silicon LGS-8GL5 DMB-TH OFDM demodulator driver
49a0bf528SMauro Carvalho Chehab 
59a0bf528SMauro Carvalho Chehab     Copyright (C) 2008 Sirius International (Hong Kong) Limited
69a0bf528SMauro Carvalho Chehab 	Timothy Lee <timothy.lee@siriushk.com>
79a0bf528SMauro Carvalho Chehab 
89a0bf528SMauro Carvalho Chehab 
99a0bf528SMauro Carvalho Chehab */
109a0bf528SMauro Carvalho Chehab 
119a0bf528SMauro Carvalho Chehab #ifndef LGS8GL5_H
129a0bf528SMauro Carvalho Chehab #define LGS8GL5_H
139a0bf528SMauro Carvalho Chehab 
149a0bf528SMauro Carvalho Chehab #include <linux/dvb/frontend.h>
159a0bf528SMauro Carvalho Chehab 
169a0bf528SMauro Carvalho Chehab struct lgs8gl5_config {
179a0bf528SMauro Carvalho Chehab 	/* the demodulator's i2c address */
189a0bf528SMauro Carvalho Chehab 	u8 demod_address;
199a0bf528SMauro Carvalho Chehab };
209a0bf528SMauro Carvalho Chehab 
219b174527SArnd Bergmann #if IS_REACHABLE(CONFIG_DVB_LGS8GL5)
229a0bf528SMauro Carvalho Chehab extern struct dvb_frontend *lgs8gl5_attach(
239a0bf528SMauro Carvalho Chehab 	const struct lgs8gl5_config *config, struct i2c_adapter *i2c);
249a0bf528SMauro Carvalho Chehab #else
lgs8gl5_attach(const struct lgs8gl5_config * config,struct i2c_adapter * i2c)259a0bf528SMauro Carvalho Chehab static inline struct dvb_frontend *lgs8gl5_attach(
269a0bf528SMauro Carvalho Chehab 	const struct lgs8gl5_config *config, struct i2c_adapter *i2c) {
279a0bf528SMauro Carvalho Chehab 	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
289a0bf528SMauro Carvalho Chehab 	return NULL;
299a0bf528SMauro Carvalho Chehab }
309a0bf528SMauro Carvalho Chehab #endif /* CONFIG_DVB_LGS8GL5 */
319a0bf528SMauro Carvalho Chehab 
329a0bf528SMauro Carvalho Chehab #endif /* LGS8GL5_H */
33