diff options
author | Mauro Carvalho Chehab <mchehab@infradead.org> | 2006-01-16 02:31:10 +0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2006-01-16 02:31:10 +0300 |
commit | 21e2379b9ef705fcb3ba3be738decd3397fc30b7 (patch) | |
tree | 6e4f5334547aa538150fe52b60bfe014425eb53b /include | |
parent | d04ae27bae42bcce1b3fa70ca2edf25d92b1cf39 (diff) | |
parent | 366cc64b0d9ac922ac4f0f54e06c13ec95249928 (diff) | |
download | linux-21e2379b9ef705fcb3ba3be738decd3397fc30b7.tar.xz |
Merge branch 'work'
Diffstat (limited to 'include')
-rw-r--r-- | include/media/tuner-types.h | 20 | ||||
-rw-r--r-- | include/media/tuner.h | 8 | ||||
-rw-r--r-- | include/media/v4l2-common.h | 7 |
3 files changed, 31 insertions, 4 deletions
diff --git a/include/media/tuner-types.h b/include/media/tuner-types.h index 64b16b1f1926..15821ab14a9e 100644 --- a/include/media/tuner-types.h +++ b/include/media/tuner-types.h @@ -19,6 +19,25 @@ struct tuner_range { struct tuner_params { enum param_type type; + /* Many Philips based tuners have a comment like this in their + * datasheet: + * + * For channel selection involving band switching, and to ensure + * smooth tuning to the desired channel without causing + * unnecessary charge pump action, it is recommended to consider + * the difference between wanted channel frequency and the + * current channel frequency. Unnecessary charge pump action + * will result in very low tuning voltage which may drive the + * oscillator to extreme conditions. + * + * Set cb_first_if_lower_freq to 1, if this check is + * required for this tuner. + * + * I tested this for PAL by first setting the TV frequency to + * 203 MHz and then switching to 96.6 MHz FM radio. The result was + * static unless the control byte was sent first. + */ + unsigned int cb_first_if_lower_freq:1; unsigned char config; /* to be moved into struct tuner_range for dvb-pll merge */ unsigned int count; @@ -27,7 +46,6 @@ struct tuner_params { struct tunertype { char *name; - unsigned int has_tda988x:1; struct tuner_params *params; }; diff --git a/include/media/tuner.h b/include/media/tuner.h index a1d63787bc08..a5beeac495c7 100644 --- a/include/media/tuner.h +++ b/include/media/tuner.h @@ -179,7 +179,9 @@ struct tuner { unsigned int mode; unsigned int mode_mask; /* Combination of allowable modes */ - unsigned int freq; /* keep track of the current settings */ + unsigned int tv_freq; /* keep track of the current settings */ + unsigned int radio_freq; + u16 last_div; unsigned int audmode; v4l2_std_id std; @@ -197,8 +199,8 @@ struct tuner { unsigned int sgIF; /* function ptrs */ - void (*tv_freq)(struct i2c_client *c, unsigned int freq); - void (*radio_freq)(struct i2c_client *c, unsigned int freq); + void (*set_tv_freq)(struct i2c_client *c, unsigned int freq); + void (*set_radio_freq)(struct i2c_client *c, unsigned int freq); int (*has_signal)(struct i2c_client *c); int (*is_stereo)(struct i2c_client *c); void (*standby)(struct i2c_client *c); diff --git a/include/media/v4l2-common.h b/include/media/v4l2-common.h index c74052abb189..d4030a7e16e0 100644 --- a/include/media/v4l2-common.h +++ b/include/media/v4l2-common.h @@ -120,6 +120,13 @@ enum v4l2_chip_ident { /* select from TV,radio,extern,MUTE */ #define AUDC_SET_INPUT _IOW('d',89,int) +/* msp3400 ioctl: will be removed in the near future */ +struct msp_matrix { + int input; + int output; +}; +#define MSP_SET_MATRIX _IOW('m',17,struct msp_matrix) + /* tuner ioctls */ /* Sets tuner type and its I2C addr */ #define TUNER_SET_TYPE_ADDR _IOW('d',90,int) |