4 #include "dibx000_common.h"
6 struct dib7000p_config
{
7 u8 output_mpeg2_in_188_bytes
;
10 int (*update_lna
) (struct dvb_frontend
*, u16 agc_global
);
13 struct dibx000_agc_config
*agc
;
14 struct dibx000_bandwidth_config
*bw
;
16 #define DIB7000P_GPIO_DEFAULT_DIRECTIONS 0xffff
18 #define DIB7000P_GPIO_DEFAULT_VALUES 0x0000
20 #define DIB7000P_GPIO_PWM_POS0(v) ((v & 0xf) << 12)
21 #define DIB7000P_GPIO_PWM_POS1(v) ((v & 0xf) << 8 )
22 #define DIB7000P_GPIO_PWM_POS2(v) ((v & 0xf) << 4 )
23 #define DIB7000P_GPIO_PWM_POS3(v) (v & 0xf)
24 #define DIB7000P_GPIO_DEFAULT_PWM_POS 0xffff
33 int (*agc_control
) (struct dvb_frontend
*, u8 before
);
38 #define DEFAULT_DIB7000P_I2C_ADDRESS 18
40 #if defined(CONFIG_DVB_DIB7000P) || (defined(CONFIG_DVB_DIB7000P_MODULE) && defined(MODULE))
41 extern struct dvb_frontend
*dib7000p_attach(struct i2c_adapter
*i2c_adap
,
43 struct dib7000p_config
*cfg
);
45 static inline struct dvb_frontend
*dib7000p_attach(struct i2c_adapter
*i2c_adap
,
47 struct dib7000p_config
*cfg
)
49 printk(KERN_WARNING
"%s: driver disabled by Kconfig\n", __func__
);
54 extern int dib7000p_i2c_enumeration(struct i2c_adapter
*i2c
, int no_of_demods
, u8 default_addr
, struct dib7000p_config cfg
[]);
56 extern struct i2c_adapter
* dib7000p_get_i2c_master(struct dvb_frontend
*, enum dibx000_i2c_interface
, int);
57 extern int dib7000pc_detection(struct i2c_adapter
*i2c_adap
);
58 extern int dib7000p_set_gpio(struct dvb_frontend
*, u8 num
, u8 dir
, u8 val
);
59 extern int dib7000p_set_wbd_ref(struct dvb_frontend
*, u16 value
);