Merge branch 'sfi-release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb...
[cascardo/linux.git] / drivers / media / dvb / frontends / dib0070.h
index 9670f5d..8a2e1e7 100644 (file)
@@ -15,6 +15,11 @@ struct i2c_adapter;
 
 #define DEFAULT_DIB0070_I2C_ADDRESS 0x60
 
+struct dib0070_wbd_gain_cfg {
+       u16 freq;
+       u16 wbd_gain_val;
+};
+
 struct dib0070_config {
        u8 i2c_address;
 
@@ -26,26 +31,28 @@ struct dib0070_config {
        int freq_offset_khz_uhf;
        int freq_offset_khz_vhf;
 
-       u8 osc_buffer_state; /* 0= normal, 1= tri-state */
-       u32  clock_khz;
-       u8 clock_pad_drive; /* (Drive + 1) * 2mA */
+       u8 osc_buffer_state;    /* 0= normal, 1= tri-state */
+       u32 clock_khz;
+       u8 clock_pad_drive;     /* (Drive + 1) * 2mA */
 
-       u8 invert_iq; /* invert Q - in case I or Q is inverted on the board */
+       u8 invert_iq;           /* invert Q - in case I or Q is inverted on the board */
 
-       u8 force_crystal_mode; /* if == 0 -> decision is made in the driver default: <24 -> 2, >=24 -> 1 */
+       u8 force_crystal_mode;  /* if == 0 -> decision is made in the driver default: <24 -> 2, >=24 -> 1 */
 
        u8 flip_chip;
+       u8 enable_third_order_filter;
+       u8 charge_pump;
+
+       const struct dib0070_wbd_gain_cfg *wbd_gain;
+
+       u8 vga_filter;
 };
 
 #if defined(CONFIG_DVB_TUNER_DIB0070) || (defined(CONFIG_DVB_TUNER_DIB0070_MODULE) && defined(MODULE))
-extern struct dvb_frontend *dib0070_attach(struct dvb_frontend *fe,
-                                          struct i2c_adapter *i2c,
-                                          struct dib0070_config *cfg);
+extern struct dvb_frontend *dib0070_attach(struct dvb_frontend *fe, struct i2c_adapter *i2c, struct dib0070_config *cfg);
 extern u16 dib0070_wbd_offset(struct dvb_frontend *);
 #else
-static inline struct dvb_frontend *dib0070_attach(struct dvb_frontend *fe,
-                                                 struct i2c_adapter *i2c,
-                                                 struct dib0070_config *cfg)
+static inline struct dvb_frontend *dib0070_attach(struct dvb_frontend *fe, struct i2c_adapter *i2c, struct dib0070_config *cfg)
 {
        printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__);
        return NULL;
@@ -57,5 +64,6 @@ static inline u16 dib0070_wbd_offset(struct dvb_frontend *fe)
        return -ENODEV;
 }
 #endif
+extern void dib0070_ctrl_agc_filter(struct dvb_frontend *, u8 open);
 
 #endif