0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 #ifndef DIB3000_H
0021 #define DIB3000_H
0022
0023 #include <linux/dvb/frontend.h>
0024
0025 struct dib3000_config
0026 {
0027
0028 u8 demod_address;
0029 };
0030
0031 struct dib_fe_xfer_ops
0032 {
0033
0034 int (*pid_parse)(struct dvb_frontend *fe, int onoff);
0035 int (*fifo_ctrl)(struct dvb_frontend *fe, int onoff);
0036 int (*pid_ctrl)(struct dvb_frontend *fe, int index, int pid, int onoff);
0037 int (*tuner_pass_ctrl)(struct dvb_frontend *fe, int onoff, u8 pll_ctrl);
0038 };
0039
0040 #if IS_REACHABLE(CONFIG_DVB_DIB3000MB)
0041 extern struct dvb_frontend* dib3000mb_attach(const struct dib3000_config* config,
0042 struct i2c_adapter* i2c, struct dib_fe_xfer_ops *xfer_ops);
0043 #else
0044 static inline struct dvb_frontend* dib3000mb_attach(const struct dib3000_config* config,
0045 struct i2c_adapter* i2c, struct dib_fe_xfer_ops *xfer_ops)
0046 {
0047 printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
0048 return NULL;
0049 }
0050 #endif
0051
0052 #endif