diff options
Diffstat (limited to 'drivers/media/dvb/frontends/dib0090.h')
-rw-r--r-- | drivers/media/dvb/frontends/dib0090.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/drivers/media/dvb/frontends/dib0090.h b/drivers/media/dvb/frontends/dib0090.h index aa7711e88776..13d85244ec16 100644 --- a/drivers/media/dvb/frontends/dib0090.h +++ b/drivers/media/dvb/frontends/dib0090.h | |||
@@ -27,6 +27,21 @@ struct dib0090_io_config { | |||
27 | u16 pll_int_loop_filt; | 27 | u16 pll_int_loop_filt; |
28 | }; | 28 | }; |
29 | 29 | ||
30 | struct dib0090_wbd_slope { | ||
31 | u16 max_freq; /* for every frequency less than or equal to that field: this information is correct */ | ||
32 | u16 slope_cold; | ||
33 | u16 offset_cold; | ||
34 | u16 slope_hot; | ||
35 | u16 offset_hot; | ||
36 | u8 wbd_gain; | ||
37 | }; | ||
38 | |||
39 | struct dib0090_low_if_offset_table { | ||
40 | int std; | ||
41 | u32 RF_freq; | ||
42 | s32 offset_khz; | ||
43 | }; | ||
44 | |||
30 | struct dib0090_config { | 45 | struct dib0090_config { |
31 | struct dib0090_io_config io; | 46 | struct dib0090_io_config io; |
32 | int (*reset) (struct dvb_frontend *, int); | 47 | int (*reset) (struct dvb_frontend *, int); |
@@ -47,10 +62,20 @@ struct dib0090_config { | |||
47 | u16 wbd_cband_offset; | 62 | u16 wbd_cband_offset; |
48 | u8 use_pwm_agc; | 63 | u8 use_pwm_agc; |
49 | u8 clkoutdrive; | 64 | u8 clkoutdrive; |
65 | |||
66 | u8 ls_cfg_pad_drv; | ||
67 | u8 data_tx_drv; | ||
68 | |||
69 | u8 in_soc; | ||
70 | const struct dib0090_low_if_offset_table *low_if; | ||
71 | u8 fref_clock_ratio; | ||
72 | u16 force_cband_input; | ||
73 | struct dib0090_wbd_slope *wbd; | ||
50 | }; | 74 | }; |
51 | 75 | ||
52 | #if defined(CONFIG_DVB_TUNER_DIB0090) || (defined(CONFIG_DVB_TUNER_DIB0090_MODULE) && defined(MODULE)) | 76 | #if defined(CONFIG_DVB_TUNER_DIB0090) || (defined(CONFIG_DVB_TUNER_DIB0090_MODULE) && defined(MODULE)) |
53 | extern struct dvb_frontend *dib0090_register(struct dvb_frontend *fe, struct i2c_adapter *i2c, const struct dib0090_config *config); | 77 | extern struct dvb_frontend *dib0090_register(struct dvb_frontend *fe, struct i2c_adapter *i2c, const struct dib0090_config *config); |
78 | extern struct dvb_frontend *dib0090_fw_register(struct dvb_frontend *fe, struct i2c_adapter *i2c, const struct dib0090_config *config); | ||
54 | extern void dib0090_dcc_freq(struct dvb_frontend *fe, u8 fast); | 79 | extern void dib0090_dcc_freq(struct dvb_frontend *fe, u8 fast); |
55 | extern void dib0090_pwm_gain_reset(struct dvb_frontend *fe); | 80 | extern void dib0090_pwm_gain_reset(struct dvb_frontend *fe); |
56 | extern u16 dib0090_get_wbd_offset(struct dvb_frontend *tuner); | 81 | extern u16 dib0090_get_wbd_offset(struct dvb_frontend *tuner); |
@@ -65,6 +90,12 @@ static inline struct dvb_frontend *dib0090_register(struct dvb_frontend *fe, str | |||
65 | return NULL; | 90 | return NULL; |
66 | } | 91 | } |
67 | 92 | ||
93 | static inline struct dvb_frontend *dib0090_fw_register(struct dvb_frontend *fe, struct i2c_adapter *i2c, struct dib0090_config *config) | ||
94 | { | ||
95 | printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); | ||
96 | return NULL; | ||
97 | } | ||
98 | |||
68 | static inline void dib0090_dcc_freq(struct dvb_frontend *fe, u8 fast) | 99 | static inline void dib0090_dcc_freq(struct dvb_frontend *fe, u8 fast) |
69 | { | 100 | { |
70 | printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); | 101 | printk(KERN_WARNING "%s: driver disabled by Kconfig\n", __func__); |