1c942fddfSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
29a0bf528SMauro Carvalho Chehab /*
39a0bf528SMauro Carvalho Chehab  *    Support for OR51132 (pcHDTV HD-3000) - VSB/QAM
49a0bf528SMauro Carvalho Chehab  *
59a0bf528SMauro Carvalho Chehab  *    Copyright (C) 2005 Kirk Lapray <kirk_lapray@bigfoot.com>
69a0bf528SMauro Carvalho Chehab */
79a0bf528SMauro Carvalho Chehab 
89a0bf528SMauro Carvalho Chehab #ifndef OR51132_H
99a0bf528SMauro Carvalho Chehab #define OR51132_H
109a0bf528SMauro Carvalho Chehab 
119a0bf528SMauro Carvalho Chehab #include <linux/firmware.h>
129a0bf528SMauro Carvalho Chehab #include <linux/dvb/frontend.h>
139a0bf528SMauro Carvalho Chehab 
149a0bf528SMauro Carvalho Chehab struct or51132_config
159a0bf528SMauro Carvalho Chehab {
169a0bf528SMauro Carvalho Chehab 	/* The demodulator's i2c address */
179a0bf528SMauro Carvalho Chehab 	u8 demod_address;
189a0bf528SMauro Carvalho Chehab 
199a0bf528SMauro Carvalho Chehab 	/* Need to set device param for start_dma */
209a0bf528SMauro Carvalho Chehab 	int (*set_ts_params)(struct dvb_frontend* fe, int is_punctured);
219a0bf528SMauro Carvalho Chehab };
229a0bf528SMauro Carvalho Chehab 
239b174527SArnd Bergmann #if IS_REACHABLE(CONFIG_DVB_OR51132)
249a0bf528SMauro Carvalho Chehab extern struct dvb_frontend* or51132_attach(const struct or51132_config* config,
259a0bf528SMauro Carvalho Chehab 					   struct i2c_adapter* i2c);
269a0bf528SMauro Carvalho Chehab #else
or51132_attach(const struct or51132_config * config,struct i2c_adapter * i2c)279a0bf528SMauro Carvalho Chehab static inline struct dvb_frontend* or51132_attach(const struct or51132_config* config,
289a0bf528SMauro Carvalho Chehab 					   struct i2c_adapter* i2c)
299a0bf528SMauro Carvalho Chehab {
309a0bf528SMauro Carvalho Chehab 	printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
319a0bf528SMauro Carvalho Chehab 	return NULL;
329a0bf528SMauro Carvalho Chehab }
339a0bf528SMauro Carvalho Chehab #endif // CONFIG_DVB_OR51132
349a0bf528SMauro Carvalho Chehab 
359a0bf528SMauro Carvalho Chehab #endif // OR51132_H
36