diff options
Diffstat (limited to 'drivers/media/video/tuner-simple.c')
-rw-r--r-- | drivers/media/video/tuner-simple.c | 143 |
1 files changed, 86 insertions, 57 deletions
diff --git a/drivers/media/video/tuner-simple.c b/drivers/media/video/tuner-simple.c index 8edd73abe1d8..d832205818f2 100644 --- a/drivers/media/video/tuner-simple.c +++ b/drivers/media/video/tuner-simple.c | |||
@@ -102,7 +102,7 @@ struct tunertype | |||
102 | */ | 102 | */ |
103 | static struct tunertype tuners[] = { | 103 | static struct tunertype tuners[] = { |
104 | /* 0-9 */ | 104 | /* 0-9 */ |
105 | { "Temic PAL (4002 FH5)", TEMIC, PAL, | 105 | { "Temic PAL (4002 FH5)", TEMIC, PAL, |
106 | 16*140.25,16*463.25,0x02,0x04,0x01,0x8e,623}, | 106 | 16*140.25,16*463.25,0x02,0x04,0x01,0x8e,623}, |
107 | { "Philips PAL_I (FI1246 and compatibles)", Philips, PAL_I, | 107 | { "Philips PAL_I (FI1246 and compatibles)", Philips, PAL_I, |
108 | 16*140.25,16*463.25,0xa0,0x90,0x30,0x8e,623}, | 108 | 16*140.25,16*463.25,0xa0,0x90,0x30,0x8e,623}, |
@@ -118,41 +118,41 @@ static struct tunertype tuners[] = { | |||
118 | 16*157.25,16*463.25,0x02,0x04,0x01,0x8e,732}, | 118 | 16*157.25,16*463.25,0x02,0x04,0x01,0x8e,732}, |
119 | { "Temic PAL_I (4062 FY5)", TEMIC, PAL_I, | 119 | { "Temic PAL_I (4062 FY5)", TEMIC, PAL_I, |
120 | 16*170.00,16*450.00,0x02,0x04,0x01,0x8e,623}, | 120 | 16*170.00,16*450.00,0x02,0x04,0x01,0x8e,623}, |
121 | { "Temic NTSC (4036 FY5)", TEMIC, NTSC, | 121 | { "Temic NTSC (4036 FY5)", TEMIC, NTSC, |
122 | 16*157.25,16*463.25,0xa0,0x90,0x30,0x8e,732}, | 122 | 16*157.25,16*463.25,0xa0,0x90,0x30,0x8e,732}, |
123 | { "Alps HSBH1", TEMIC, NTSC, | 123 | { "Alps HSBH1", TEMIC, NTSC, |
124 | 16*137.25,16*385.25,0x01,0x02,0x08,0x8e,732}, | 124 | 16*137.25,16*385.25,0x01,0x02,0x08,0x8e,732}, |
125 | 125 | ||
126 | /* 10-19 */ | 126 | /* 10-19 */ |
127 | { "Alps TSBE1", TEMIC, PAL, | 127 | { "Alps TSBE1", TEMIC, PAL, |
128 | 16*137.25,16*385.25,0x01,0x02,0x08,0x8e,732}, | 128 | 16*137.25,16*385.25,0x01,0x02,0x08,0x8e,732}, |
129 | { "Alps TSBB5", Alps, PAL_I, /* tested (UK UHF) with Modulartech MM205 */ | 129 | { "Alps TSBB5", Alps, PAL_I, /* tested (UK UHF) with Modulartech MM205 */ |
130 | 16*133.25,16*351.25,0x01,0x02,0x08,0x8e,632}, | 130 | 16*133.25,16*351.25,0x01,0x02,0x08,0x8e,632}, |
131 | { "Alps TSBE5", Alps, PAL, /* untested - data sheet guess. Only IF differs. */ | 131 | { "Alps TSBE5", Alps, PAL, /* untested - data sheet guess. Only IF differs. */ |
132 | 16*133.25,16*351.25,0x01,0x02,0x08,0x8e,622}, | 132 | 16*133.25,16*351.25,0x01,0x02,0x08,0x8e,622}, |
133 | { "Alps TSBC5", Alps, PAL, /* untested - data sheet guess. Only IF differs. */ | 133 | { "Alps TSBC5", Alps, PAL, /* untested - data sheet guess. Only IF differs. */ |
134 | 16*133.25,16*351.25,0x01,0x02,0x08,0x8e,608}, | 134 | 16*133.25,16*351.25,0x01,0x02,0x08,0x8e,608}, |
135 | { "Temic PAL_BG (4006FH5)", TEMIC, PAL, | 135 | { "Temic PAL_BG (4006FH5)", TEMIC, PAL, |
136 | 16*170.00,16*450.00,0xa0,0x90,0x30,0x8e,623}, | 136 | 16*170.00,16*450.00,0xa0,0x90,0x30,0x8e,623}, |
137 | { "Alps TSCH6", Alps, NTSC, | 137 | { "Alps TSCH6", Alps, NTSC, |
138 | 16*137.25,16*385.25,0x14,0x12,0x11,0x8e,732}, | 138 | 16*137.25,16*385.25,0x14,0x12,0x11,0x8e,732}, |
139 | { "Temic PAL_DK (4016 FY5)", TEMIC, PAL, | 139 | { "Temic PAL_DK (4016 FY5)", TEMIC, PAL, |
140 | 16*168.25,16*456.25,0xa0,0x90,0x30,0x8e,623}, | 140 | 16*168.25,16*456.25,0xa0,0x90,0x30,0x8e,623}, |
141 | { "Philips NTSC_M (MK2)", Philips, NTSC, | 141 | { "Philips NTSC_M (MK2)", Philips, NTSC, |
142 | 16*160.00,16*454.00,0xa0,0x90,0x30,0x8e,732}, | 142 | 16*160.00,16*454.00,0xa0,0x90,0x30,0x8e,732}, |
143 | { "Temic PAL_I (4066 FY5)", TEMIC, PAL_I, | 143 | { "Temic PAL_I (4066 FY5)", TEMIC, PAL_I, |
144 | 16*169.00, 16*454.00, 0xa0,0x90,0x30,0x8e,623}, | 144 | 16*169.00, 16*454.00, 0xa0,0x90,0x30,0x8e,623}, |
145 | { "Temic PAL* auto (4006 FN5)", TEMIC, PAL, | 145 | { "Temic PAL* auto (4006 FN5)", TEMIC, PAL, |
146 | 16*169.00, 16*454.00, 0xa0,0x90,0x30,0x8e,623}, | 146 | 16*169.00, 16*454.00, 0xa0,0x90,0x30,0x8e,623}, |
147 | 147 | ||
148 | /* 20-29 */ | 148 | /* 20-29 */ |
149 | { "Temic PAL_BG (4009 FR5) or PAL_I (4069 FR5)", TEMIC, PAL, | 149 | { "Temic PAL_BG (4009 FR5) or PAL_I (4069 FR5)", TEMIC, PAL, |
150 | 16*141.00, 16*464.00, 0xa0,0x90,0x30,0x8e,623}, | 150 | 16*141.00, 16*464.00, 0xa0,0x90,0x30,0x8e,623}, |
151 | { "Temic NTSC (4039 FR5)", TEMIC, NTSC, | 151 | { "Temic NTSC (4039 FR5)", TEMIC, NTSC, |
152 | 16*158.00, 16*453.00, 0xa0,0x90,0x30,0x8e,732}, | 152 | 16*158.00, 16*453.00, 0xa0,0x90,0x30,0x8e,732}, |
153 | { "Temic PAL/SECAM multi (4046 FM5)", TEMIC, PAL, | 153 | { "Temic PAL/SECAM multi (4046 FM5)", TEMIC, PAL, |
154 | 16*169.00, 16*454.00, 0xa0,0x90,0x30,0x8e,623}, | 154 | 16*169.00, 16*454.00, 0xa0,0x90,0x30,0x8e,623}, |
155 | { "Philips PAL_DK (FI1256 and compatibles)", Philips, PAL, | 155 | { "Philips PAL_DK (FI1256 and compatibles)", Philips, PAL, |
156 | 16*170.00,16*450.00,0xa0,0x90,0x30,0x8e,623}, | 156 | 16*170.00,16*450.00,0xa0,0x90,0x30,0x8e,623}, |
157 | { "Philips PAL/SECAM multi (FQ1216ME)", Philips, PAL, | 157 | { "Philips PAL/SECAM multi (FQ1216ME)", Philips, PAL, |
158 | 16*170.00,16*450.00,0xa0,0x90,0x30,0x8e,623}, | 158 | 16*170.00,16*450.00,0xa0,0x90,0x30,0x8e,623}, |
@@ -173,21 +173,21 @@ static struct tunertype tuners[] = { | |||
173 | { "SHARP NTSC_JP (2U5JF5540)", SHARP, NTSC, /* 940=16*58.75 NTSC@Japan */ | 173 | { "SHARP NTSC_JP (2U5JF5540)", SHARP, NTSC, /* 940=16*58.75 NTSC@Japan */ |
174 | 16*137.25,16*317.25,0x01,0x02,0x08,0x8e,940 }, | 174 | 16*137.25,16*317.25,0x01,0x02,0x08,0x8e,940 }, |
175 | { "Samsung PAL TCPM9091PD27", Samsung, PAL, /* from sourceforge v3tv */ | 175 | { "Samsung PAL TCPM9091PD27", Samsung, PAL, /* from sourceforge v3tv */ |
176 | 16*169,16*464,0xA0,0x90,0x30,0x8e,623}, | 176 | 16*169,16*464,0xA0,0x90,0x30,0x8e,623}, |
177 | { "MT20xx universal", Microtune, PAL|NTSC, | 177 | { "MT20xx universal", Microtune, PAL|NTSC, |
178 | /* see mt20xx.c for details */ }, | 178 | /* see mt20xx.c for details */ }, |
179 | { "Temic PAL_BG (4106 FH5)", TEMIC, PAL, | 179 | { "Temic PAL_BG (4106 FH5)", TEMIC, PAL, |
180 | 16*141.00, 16*464.00, 0xa0,0x90,0x30,0x8e,623}, | 180 | 16*141.00, 16*464.00, 0xa0,0x90,0x30,0x8e,623}, |
181 | { "Temic PAL_DK/SECAM_L (4012 FY5)", TEMIC, PAL, | 181 | { "Temic PAL_DK/SECAM_L (4012 FY5)", TEMIC, PAL, |
182 | 16*140.25, 16*463.25, 0x02,0x04,0x01,0x8e,623}, | 182 | 16*140.25, 16*463.25, 0x02,0x04,0x01,0x8e,623}, |
183 | { "Temic NTSC (4136 FY5)", TEMIC, NTSC, | 183 | { "Temic NTSC (4136 FY5)", TEMIC, NTSC, |
184 | 16*158.00, 16*453.00, 0xa0,0x90,0x30,0x8e,732}, | 184 | 16*158.00, 16*453.00, 0xa0,0x90,0x30,0x8e,732}, |
185 | { "LG PAL (newer TAPC series)", LGINNOTEK, PAL, | 185 | { "LG PAL (newer TAPC series)", LGINNOTEK, PAL, |
186 | 16*170.00, 16*450.00, 0x01,0x02,0x08,0x8e,623}, | 186 | 16*170.00, 16*450.00, 0x01,0x02,0x08,0x8e,623}, |
187 | { "Philips PAL/SECAM multi (FM1216ME MK3)", Philips, PAL, | 187 | { "Philips PAL/SECAM multi (FM1216ME MK3)", Philips, PAL, |
188 | 16*160.00,16*442.00,0x01,0x02,0x04,0x8e,623 }, | 188 | 16*158.00,16*442.00,0x01,0x02,0x04,0x8e,623 }, |
189 | { "LG NTSC (newer TAPC series)", LGINNOTEK, NTSC, | 189 | { "LG NTSC (newer TAPC series)", LGINNOTEK, NTSC, |
190 | 16*170.00, 16*450.00, 0x01,0x02,0x08,0x8e,732}, | 190 | 16*170.00, 16*450.00, 0x01,0x02,0x08,0x8e,732}, |
191 | 191 | ||
192 | /* 40-49 */ | 192 | /* 40-49 */ |
193 | { "HITACHI V7-J180AT", HITACHI, NTSC, | 193 | { "HITACHI V7-J180AT", HITACHI, NTSC, |
@@ -196,24 +196,24 @@ static struct tunertype tuners[] = { | |||
196 | 16*140.25,16*463.25,0x01,0xc2,0xcf,0x8e,623}, | 196 | 16*140.25,16*463.25,0x01,0xc2,0xcf,0x8e,623}, |
197 | { "Philips 1236D ATSC/NTSC daul in", Philips, ATSC, | 197 | { "Philips 1236D ATSC/NTSC daul in", Philips, ATSC, |
198 | 16*157.25,16*454.00,0xa0,0x90,0x30,0x8e,732}, | 198 | 16*157.25,16*454.00,0xa0,0x90,0x30,0x8e,732}, |
199 | { "Philips NTSC MK3 (FM1236MK3 or FM1236/F)", Philips, NTSC, | 199 | { "Philips NTSC MK3 (FM1236MK3 or FM1236/F)", Philips, NTSC, |
200 | 16*160.00,16*442.00,0x01,0x02,0x04,0x8e,732}, | 200 | 16*160.00,16*442.00,0x01,0x02,0x04,0x8e,732}, |
201 | { "Philips 4 in 1 (ATI TV Wonder Pro/Conexant)", Philips, NTSC, | 201 | { "Philips 4 in 1 (ATI TV Wonder Pro/Conexant)", Philips, NTSC, |
202 | 16*160.00,16*442.00,0x01,0x02,0x04,0x8e,732}, | 202 | 16*160.00,16*442.00,0x01,0x02,0x04,0x8e,732}, |
203 | { "Microtune 4049 FM5", Microtune, PAL, | 203 | { "Microtune 4049 FM5", Microtune, PAL, |
204 | 16*141.00,16*464.00,0xa0,0x90,0x30,0x8e,623}, | 204 | 16*141.00,16*464.00,0xa0,0x90,0x30,0x8e,623}, |
205 | { "Panasonic VP27s/ENGE4324D", Panasonic, NTSC, | 205 | { "Panasonic VP27s/ENGE4324D", Panasonic, NTSC, |
206 | 16*160.00,16*454.00,0x01,0x02,0x08,0xce,940}, | 206 | 16*160.00,16*454.00,0x01,0x02,0x08,0xce,940}, |
207 | { "LG NTSC (TAPE series)", LGINNOTEK, NTSC, | 207 | { "LG NTSC (TAPE series)", LGINNOTEK, NTSC, |
208 | 16*160.00,16*442.00,0x01,0x02,0x04,0x8e,732 }, | 208 | 16*160.00,16*442.00,0x01,0x02,0x04,0x8e,732 }, |
209 | { "Tenna TNF 8831 BGFF)", Philips, PAL, | 209 | { "Tenna TNF 8831 BGFF)", Philips, PAL, |
210 | 16*161.25,16*463.25,0xa0,0x90,0x30,0x8e,623}, | 210 | 16*161.25,16*463.25,0xa0,0x90,0x30,0x8e,623}, |
211 | { "Microtune 4042 FI5 ATSC/NTSC dual in", Microtune, NTSC, | 211 | { "Microtune 4042 FI5 ATSC/NTSC dual in", Microtune, NTSC, |
212 | 16*162.00,16*457.00,0xa2,0x94,0x31,0x8e,732}, | 212 | 16*162.00,16*457.00,0xa2,0x94,0x31,0x8e,732}, |
213 | 213 | ||
214 | /* 50-59 */ | 214 | /* 50-59 */ |
215 | { "TCL 2002N", TCL, NTSC, | 215 | { "TCL 2002N", TCL, NTSC, |
216 | 16*172.00,16*448.00,0x01,0x02,0x08,0x8e,732}, | 216 | 16*172.00,16*448.00,0x01,0x02,0x08,0x8e,732}, |
217 | { "Philips PAL/SECAM_D (FM 1256 I-H3)", Philips, PAL, | 217 | { "Philips PAL/SECAM_D (FM 1256 I-H3)", Philips, PAL, |
218 | 16*160.00,16*442.00,0x01,0x02,0x04,0x8e,623 }, | 218 | 16*160.00,16*442.00,0x01,0x02,0x04,0x8e,623 }, |
219 | { "Thomson DDT 7610 (ATSC/NTSC)", THOMSON, ATSC, | 219 | { "Thomson DDT 7610 (ATSC/NTSC)", THOMSON, ATSC, |
@@ -222,8 +222,8 @@ static struct tunertype tuners[] = { | |||
222 | 16*160.00,16*454.00,0x41,0x42,0x04,0x8e,940}, /* UHF band untested */ | 222 | 16*160.00,16*454.00,0x41,0x42,0x04,0x8e,940}, /* UHF band untested */ |
223 | { "tda8290+75", Philips, PAL|NTSC, | 223 | { "tda8290+75", Philips, PAL|NTSC, |
224 | /* see tda8290.c for details */ }, | 224 | /* see tda8290.c for details */ }, |
225 | { "LG PAL (TAPE series)", LGINNOTEK, PAL, | 225 | { "TCL 2002MB", TCL, PAL, |
226 | 16*170.00, 16*450.00, 0x01,0x02,0x08,0xce,623}, | 226 | 16*170.00, 16*450.00, 0x01,0x02,0x08,0xce,623}, |
227 | { "Philips PAL/SECAM multi (FQ1216AME MK4)", Philips, PAL, | 227 | { "Philips PAL/SECAM multi (FQ1216AME MK4)", Philips, PAL, |
228 | 16*160.00,16*442.00,0x01,0x02,0x04,0xce,623 }, | 228 | 16*160.00,16*442.00,0x01,0x02,0x04,0xce,623 }, |
229 | { "Philips FQ1236A MK4", Philips, NTSC, | 229 | { "Philips FQ1236A MK4", Philips, NTSC, |
@@ -233,21 +233,25 @@ static struct tunertype tuners[] = { | |||
233 | { "Ymec TVision TVF-5533MF", Philips, NTSC, | 233 | { "Ymec TVision TVF-5533MF", Philips, NTSC, |
234 | 16*160.00,16*454.00,0x01,0x02,0x04,0x8e,732}, | 234 | 16*160.00,16*454.00,0x01,0x02,0x04,0x8e,732}, |
235 | 235 | ||
236 | /* 60-66 */ | 236 | /* 60-68 */ |
237 | { "Thomson DDT 7611 (ATSC/NTSC)", THOMSON, ATSC, | 237 | { "Thomson DDT 7611 (ATSC/NTSC)", THOMSON, ATSC, |
238 | 16*157.25,16*454.00,0x39,0x3a,0x3c,0x8e,732}, | 238 | 16*157.25,16*454.00,0x39,0x3a,0x3c,0x8e,732}, |
239 | { "Tena TNF9533-D/IF/TNF9533-B/DF", Philips, PAL, | 239 | { "Tena TNF9533-D/IF/TNF9533-B/DF", Philips, PAL, |
240 | 16*160.25,16*464.25,0x01,0x02,0x04,0x8e,623}, | 240 | 16*160.25,16*464.25,0x01,0x02,0x04,0x8e,623}, |
241 | { "Philips TEA5767HN FM Radio", Philips, RADIO, | 241 | { "Philips TEA5767HN FM Radio", Philips, RADIO, |
242 | /* see tea5767.c for details */}, | 242 | /* see tea5767.c for details */}, |
243 | { "Philips FMD1216ME MK3 Hybrid Tuner", Philips, PAL, | 243 | { "Philips FMD1216ME MK3 Hybrid Tuner", Philips, PAL, |
244 | 16*160.00,16*442.00,0x51,0x52,0x54,0x86,623 }, | 244 | 16*160.00,16*442.00,0x51,0x52,0x54,0x86,623 }, |
245 | { "LG TDVS-H062F/TUA6034", LGINNOTEK, ATSC, | 245 | { "LG TDVS-H062F/TUA6034", LGINNOTEK, ATSC, |
246 | 16*160.00,16*455.00,0x01,0x02,0x04,0x8e,732}, | 246 | 16*160.00,16*455.00,0x01,0x02,0x04,0x8e,732}, |
247 | { "Ymec TVF66T5-B/DFF", Philips, PAL, | 247 | { "Ymec TVF66T5-B/DFF", Philips, PAL, |
248 | 16*160.25,16*464.25,0x01,0x02,0x08,0x8e,623}, | 248 | 16*160.25,16*464.25,0x01,0x02,0x08,0x8e,623}, |
249 | { "LG NTSC (TALN mini series)", LGINNOTEK, NTSC, | 249 | { "LG NTSC (TALN mini series)", LGINNOTEK, NTSC, |
250 | 16*137.25,16*373.25,0x01,0x02,0x08,0x8e,732 }, | 250 | 16*137.25,16*373.25,0x01,0x02,0x08,0x8e,732 }, |
251 | { "Philips TD1316 Hybrid Tuner", Philips, PAL, | ||
252 | 16*160.00,16*442.00,0xa1,0xa2,0xa4,0xc8,623 }, | ||
253 | { "Philips TUV1236D ATSC/NTSC dual in", Philips, ATSC, | ||
254 | 16*157.25,16*454.00,0x01,0x02,0x04,0xce,732 }, | ||
251 | }; | 255 | }; |
252 | 256 | ||
253 | unsigned const int tuner_count = ARRAY_SIZE(tuners); | 257 | unsigned const int tuner_count = ARRAY_SIZE(tuners); |
@@ -277,7 +281,7 @@ static int tuner_stereo(struct i2c_client *c) | |||
277 | status = tuner_getstatus (c); | 281 | status = tuner_getstatus (c); |
278 | 282 | ||
279 | switch (t->type) { | 283 | switch (t->type) { |
280 | case TUNER_PHILIPS_FM1216ME_MK3: | 284 | case TUNER_PHILIPS_FM1216ME_MK3: |
281 | case TUNER_PHILIPS_FM1236_MK3: | 285 | case TUNER_PHILIPS_FM1236_MK3: |
282 | case TUNER_PHILIPS_FM1256_IH3: | 286 | case TUNER_PHILIPS_FM1256_IH3: |
283 | stereo = ((status & TUNER_SIGNAL) == TUNER_STEREO_MK3); | 287 | stereo = ((status & TUNER_SIGNAL) == TUNER_STEREO_MK3); |
@@ -295,10 +299,10 @@ static int tuner_stereo(struct i2c_client *c) | |||
295 | static void default_set_tv_freq(struct i2c_client *c, unsigned int freq) | 299 | static void default_set_tv_freq(struct i2c_client *c, unsigned int freq) |
296 | { | 300 | { |
297 | struct tuner *t = i2c_get_clientdata(c); | 301 | struct tuner *t = i2c_get_clientdata(c); |
298 | u8 config; | 302 | u8 config, tuneraddr; |
299 | u16 div; | 303 | u16 div; |
300 | struct tunertype *tun; | 304 | struct tunertype *tun; |
301 | unsigned char buffer[4]; | 305 | unsigned char buffer[4]; |
302 | int rc; | 306 | int rc; |
303 | 307 | ||
304 | tun = &tuners[t->type]; | 308 | tun = &tuners[t->type]; |
@@ -373,6 +377,31 @@ static void default_set_tv_freq(struct i2c_client *c, unsigned int freq) | |||
373 | /* Set the charge pump for fast tuning */ | 377 | /* Set the charge pump for fast tuning */ |
374 | tun->config |= TUNER_CHARGE_PUMP; | 378 | tun->config |= TUNER_CHARGE_PUMP; |
375 | break; | 379 | break; |
380 | |||
381 | case TUNER_PHILIPS_TUV1236D: | ||
382 | /* 0x40 -> ATSC antenna input 1 */ | ||
383 | /* 0x48 -> ATSC antenna input 2 */ | ||
384 | /* 0x00 -> NTSC antenna input 1 */ | ||
385 | /* 0x08 -> NTSC antenna input 2 */ | ||
386 | buffer[0] = 0x14; | ||
387 | buffer[1] = 0x00; | ||
388 | buffer[2] = 0x17; | ||
389 | buffer[3] = 0x00; | ||
390 | config &= ~0x40; | ||
391 | if (t->std & V4L2_STD_ATSC) { | ||
392 | config |= 0x40; | ||
393 | buffer[1] = 0x04; | ||
394 | } | ||
395 | /* set to the correct mode (analog or digital) */ | ||
396 | tuneraddr = c->addr; | ||
397 | c->addr = 0x0a; | ||
398 | if (2 != (rc = i2c_master_send(c,&buffer[0],2))) | ||
399 | tuner_warn("i2c i/o error: rc == %d (should be 2)\n",rc); | ||
400 | if (2 != (rc = i2c_master_send(c,&buffer[2],2))) | ||
401 | tuner_warn("i2c i/o error: rc == %d (should be 2)\n",rc); | ||
402 | c->addr = tuneraddr; | ||
403 | /* FIXME: input */ | ||
404 | break; | ||
376 | } | 405 | } |
377 | 406 | ||
378 | /* | 407 | /* |
@@ -404,7 +433,7 @@ static void default_set_tv_freq(struct i2c_client *c, unsigned int freq) | |||
404 | tuner_dbg("tv 0x%02x 0x%02x 0x%02x 0x%02x\n", | 433 | tuner_dbg("tv 0x%02x 0x%02x 0x%02x 0x%02x\n", |
405 | buffer[0],buffer[1],buffer[2],buffer[3]); | 434 | buffer[0],buffer[1],buffer[2],buffer[3]); |
406 | 435 | ||
407 | if (4 != (rc = i2c_master_send(c,buffer,4))) | 436 | if (4 != (rc = i2c_master_send(c,buffer,4))) |
408 | tuner_warn("i2c i/o error: rc == %d (should be 4)\n",rc); | 437 | tuner_warn("i2c i/o error: rc == %d (should be 4)\n",rc); |
409 | 438 | ||
410 | if (t->type == TUNER_MICROTUNE_4042FI5) { | 439 | if (t->type == TUNER_MICROTUNE_4042FI5) { |
@@ -443,7 +472,7 @@ static void default_set_radio_freq(struct i2c_client *c, unsigned int freq) | |||
443 | { | 472 | { |
444 | struct tunertype *tun; | 473 | struct tunertype *tun; |
445 | struct tuner *t = i2c_get_clientdata(c); | 474 | struct tuner *t = i2c_get_clientdata(c); |
446 | unsigned char buffer[4]; | 475 | unsigned char buffer[4]; |
447 | unsigned div; | 476 | unsigned div; |
448 | int rc; | 477 | int rc; |
449 | 478 | ||
@@ -476,13 +505,13 @@ static void default_set_radio_freq(struct i2c_client *c, unsigned int freq) | |||
476 | buffer[3] = 0xa4; | 505 | buffer[3] = 0xa4; |
477 | break; | 506 | break; |
478 | } | 507 | } |
479 | buffer[0] = (div>>8) & 0x7f; | 508 | buffer[0] = (div>>8) & 0x7f; |
480 | buffer[1] = div & 0xff; | 509 | buffer[1] = div & 0xff; |
481 | 510 | ||
482 | tuner_dbg("radio 0x%02x 0x%02x 0x%02x 0x%02x\n", | 511 | tuner_dbg("radio 0x%02x 0x%02x 0x%02x 0x%02x\n", |
483 | buffer[0],buffer[1],buffer[2],buffer[3]); | 512 | buffer[0],buffer[1],buffer[2],buffer[3]); |
484 | 513 | ||
485 | if (4 != (rc = i2c_master_send(c,buffer,4))) | 514 | if (4 != (rc = i2c_master_send(c,buffer,4))) |
486 | tuner_warn("i2c i/o error: rc == %d (should be 4)\n",rc); | 515 | tuner_warn("i2c i/o error: rc == %d (should be 4)\n",rc); |
487 | } | 516 | } |
488 | 517 | ||