1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * public header file of the frontend drivers for mobile DVB-T demodulators
4 * DiBcom 3000M-B and DiBcom 3000P/M-C (http://www.dibcom.fr/)
6 * Copyright (C) 2004-5 Patrick Boettcher (patrick.boettcher@posteo.de)
8 * based on GPL code from DibCom, which has
10 * Copyright (C) 2004 Amaury Demol for DiBcom
14 * Amaury Demol from DiBcom for providing specs and driver
15 * sources, on which this driver (and the dvb-dibusb) are based.
17 * see Documentation/driver-api/media/drivers/dvb-usb.rst for more information
23 #include <linux/dvb/frontend.h>
27 /* the demodulator's i2c address */
31 struct dib_fe_xfer_ops
33 /* pid and transfer handling is done in the demodulator */
34 int (*pid_parse
)(struct dvb_frontend
*fe
, int onoff
);
35 int (*fifo_ctrl
)(struct dvb_frontend
*fe
, int onoff
);
36 int (*pid_ctrl
)(struct dvb_frontend
*fe
, int index
, int pid
, int onoff
);
37 int (*tuner_pass_ctrl
)(struct dvb_frontend
*fe
, int onoff
, u8 pll_ctrl
);
40 #if IS_REACHABLE(CONFIG_DVB_DIB3000MB)
41 extern struct dvb_frontend
* dib3000mb_attach(const struct dib3000_config
* config
,
42 struct i2c_adapter
* i2c
, struct dib_fe_xfer_ops
*xfer_ops
);
44 static inline struct dvb_frontend
* dib3000mb_attach(const struct dib3000_config
* config
,
45 struct i2c_adapter
* i2c
, struct dib_fe_xfer_ops
*xfer_ops
)
47 printk(KERN_WARNING
"%s: driver disabled by Kconfig\n", __func__
);
50 #endif // CONFIG_DVB_DIB3000MB