aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/media/dvb-frontends/af9033.c98
1 files changed, 46 insertions, 52 deletions
diff --git a/drivers/media/dvb-frontends/af9033.c b/drivers/media/dvb-frontends/af9033.c
index c40ae49effb5..1bd5a9af7db5 100644
--- a/drivers/media/dvb-frontends/af9033.c
+++ b/drivers/media/dvb-frontends/af9033.c
@@ -55,8 +55,8 @@ static int af9033_wr_regs(struct af9033_dev *dev, u32 reg, const u8 *val,
55 55
56 if (3 + len > sizeof(buf)) { 56 if (3 + len > sizeof(buf)) {
57 dev_warn(&dev->client->dev, 57 dev_warn(&dev->client->dev,
58 "%s: i2c wr reg=%04x: len=%d is too big!\n", 58 "i2c wr reg=%04x: len=%d is too big!\n",
59 KBUILD_MODNAME, reg, len); 59 reg, len);
60 return -EINVAL; 60 return -EINVAL;
61 } 61 }
62 62
@@ -69,9 +69,8 @@ static int af9033_wr_regs(struct af9033_dev *dev, u32 reg, const u8 *val,
69 if (ret == 1) { 69 if (ret == 1) {
70 ret = 0; 70 ret = 0;
71 } else { 71 } else {
72 dev_warn(&dev->client->dev, 72 dev_warn(&dev->client->dev, "i2c wr failed=%d reg=%06x len=%d\n",
73 "%s: i2c wr failed=%d reg=%06x len=%d\n", 73 ret, reg, len);
74 KBUILD_MODNAME, ret, reg, len);
75 ret = -EREMOTEIO; 74 ret = -EREMOTEIO;
76 } 75 }
77 76
@@ -102,9 +101,8 @@ static int af9033_rd_regs(struct af9033_dev *dev, u32 reg, u8 *val, int len)
102 if (ret == 2) { 101 if (ret == 2) {
103 ret = 0; 102 ret = 0;
104 } else { 103 } else {
105 dev_warn(&dev->client->dev, 104 dev_warn(&dev->client->dev, "i2c rd failed=%d reg=%06x len=%d\n",
106 "%s: i2c rd failed=%d reg=%06x len=%d\n", 105 ret, reg, len);
107 KBUILD_MODNAME, ret, reg, len);
108 ret = -EREMOTEIO; 106 ret = -EREMOTEIO;
109 } 107 }
110 108
@@ -176,11 +174,10 @@ static int af9033_wr_reg_val_tab(struct af9033_dev *dev,
176 int ret, i, j; 174 int ret, i, j;
177 u8 buf[1 + MAX_TAB_LEN]; 175 u8 buf[1 + MAX_TAB_LEN];
178 176
179 dev_dbg(&dev->client->dev, "%s: tab_len=%d\n", __func__, tab_len); 177 dev_dbg(&dev->client->dev, "tab_len=%d\n", tab_len);
180 178
181 if (tab_len > sizeof(buf)) { 179 if (tab_len > sizeof(buf)) {
182 dev_warn(&dev->client->dev, "%s: tab len %d is too big\n", 180 dev_warn(&dev->client->dev, "tab len %d is too big\n", tab_len);
183 KBUILD_MODNAME, tab_len);
184 return -EINVAL; 181 return -EINVAL;
185 } 182 }
186 183
@@ -201,7 +198,7 @@ static int af9033_wr_reg_val_tab(struct af9033_dev *dev,
201 return 0; 198 return 0;
202 199
203err: 200err:
204 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 201 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
205 202
206 return ret; 203 return ret;
207} 204}
@@ -210,7 +207,7 @@ static u32 af9033_div(struct af9033_dev *dev, u32 a, u32 b, u32 x)
210{ 207{
211 u32 r = 0, c = 0, i; 208 u32 r = 0, c = 0, i;
212 209
213 dev_dbg(&dev->client->dev, "%s: a=%d b=%d x=%d\n", __func__, a, b, x); 210 dev_dbg(&dev->client->dev, "a=%d b=%d x=%d\n", a, b, x);
214 211
215 if (a > b) { 212 if (a > b) {
216 c = a / b; 213 c = a / b;
@@ -227,8 +224,7 @@ static u32 af9033_div(struct af9033_dev *dev, u32 a, u32 b, u32 x)
227 } 224 }
228 r = (c << (u32)x) + r; 225 r = (c << (u32)x) + r;
229 226
230 dev_dbg(&dev->client->dev, "%s: a=%d b=%d x=%d r=%d r=%x\n", 227 dev_dbg(&dev->client->dev, "a=%d b=%d x=%d r=%d r=%x\n", a, b, x, r, r);
231 __func__, a, b, x, r, r);
232 228
233 return r; 229 return r;
234} 230}
@@ -276,8 +272,8 @@ static int af9033_init(struct dvb_frontend *fe)
276 buf[2] = (clock_cw >> 16) & 0xff; 272 buf[2] = (clock_cw >> 16) & 0xff;
277 buf[3] = (clock_cw >> 24) & 0xff; 273 buf[3] = (clock_cw >> 24) & 0xff;
278 274
279 dev_dbg(&dev->client->dev, "%s: clock=%d clock_cw=%08x\n", 275 dev_dbg(&dev->client->dev, "clock=%d clock_cw=%08x\n",
280 __func__, dev->cfg.clock, clock_cw); 276 dev->cfg.clock, clock_cw);
281 277
282 ret = af9033_wr_regs(dev, 0x800025, buf, 4); 278 ret = af9033_wr_regs(dev, 0x800025, buf, 4);
283 if (ret < 0) 279 if (ret < 0)
@@ -294,8 +290,8 @@ static int af9033_init(struct dvb_frontend *fe)
294 buf[1] = (adc_cw >> 8) & 0xff; 290 buf[1] = (adc_cw >> 8) & 0xff;
295 buf[2] = (adc_cw >> 16) & 0xff; 291 buf[2] = (adc_cw >> 16) & 0xff;
296 292
297 dev_dbg(&dev->client->dev, "%s: adc=%d adc_cw=%06x\n", 293 dev_dbg(&dev->client->dev, "adc=%d adc_cw=%06x\n",
298 __func__, clock_adc_lut[i].adc, adc_cw); 294 clock_adc_lut[i].adc, adc_cw);
299 295
300 ret = af9033_wr_regs(dev, 0x80f1cd, buf, 3); 296 ret = af9033_wr_regs(dev, 0x80f1cd, buf, 3);
301 if (ret < 0) 297 if (ret < 0)
@@ -336,7 +332,7 @@ static int af9033_init(struct dvb_frontend *fe)
336 } 332 }
337 333
338 /* load OFSM settings */ 334 /* load OFSM settings */
339 dev_dbg(&dev->client->dev, "%s: load ofsm settings\n", __func__); 335 dev_dbg(&dev->client->dev, "load ofsm settings\n");
340 switch (dev->cfg.tuner) { 336 switch (dev->cfg.tuner) {
341 case AF9033_TUNER_IT9135_38: 337 case AF9033_TUNER_IT9135_38:
342 case AF9033_TUNER_IT9135_51: 338 case AF9033_TUNER_IT9135_51:
@@ -361,8 +357,7 @@ static int af9033_init(struct dvb_frontend *fe)
361 goto err; 357 goto err;
362 358
363 /* load tuner specific settings */ 359 /* load tuner specific settings */
364 dev_dbg(&dev->client->dev, "%s: load tuner specific settings\n", 360 dev_dbg(&dev->client->dev, "load tuner specific settings\n");
365 __func__);
366 switch (dev->cfg.tuner) { 361 switch (dev->cfg.tuner) {
367 case AF9033_TUNER_TUA9001: 362 case AF9033_TUNER_TUA9001:
368 len = ARRAY_SIZE(tuner_init_tua9001); 363 len = ARRAY_SIZE(tuner_init_tua9001);
@@ -413,8 +408,8 @@ static int af9033_init(struct dvb_frontend *fe)
413 init = tuner_init_it9135_62; 408 init = tuner_init_it9135_62;
414 break; 409 break;
415 default: 410 default:
416 dev_dbg(&dev->client->dev, "%s: unsupported tuner ID=%d\n", 411 dev_dbg(&dev->client->dev, "unsupported tuner ID=%d\n",
417 __func__, dev->cfg.tuner); 412 dev->cfg.tuner);
418 ret = -ENODEV; 413 ret = -ENODEV;
419 goto err; 414 goto err;
420 } 415 }
@@ -451,7 +446,7 @@ static int af9033_init(struct dvb_frontend *fe)
451 return 0; 446 return 0;
452 447
453err: 448err:
454 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 449 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
455 450
456 return ret; 451 return ret;
457} 452}
@@ -478,7 +473,7 @@ static int af9033_sleep(struct dvb_frontend *fe)
478 usleep_range(200, 10000); 473 usleep_range(200, 10000);
479 } 474 }
480 475
481 dev_dbg(&dev->client->dev, "%s: loop=%d\n", __func__, i); 476 dev_dbg(&dev->client->dev, "loop=%d\n", i);
482 477
483 if (i == 0) { 478 if (i == 0) {
484 ret = -ETIMEDOUT; 479 ret = -ETIMEDOUT;
@@ -504,7 +499,7 @@ static int af9033_sleep(struct dvb_frontend *fe)
504 return 0; 499 return 0;
505 500
506err: 501err:
507 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 502 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
508 503
509 return ret; 504 return ret;
510} 505}
@@ -528,8 +523,8 @@ static int af9033_set_frontend(struct dvb_frontend *fe)
528 u8 tmp, buf[3], bandwidth_reg_val; 523 u8 tmp, buf[3], bandwidth_reg_val;
529 u32 if_frequency, freq_cw, adc_freq; 524 u32 if_frequency, freq_cw, adc_freq;
530 525
531 dev_dbg(&dev->client->dev, "%s: frequency=%d bandwidth_hz=%d\n", 526 dev_dbg(&dev->client->dev, "frequency=%d bandwidth_hz=%d\n",
532 __func__, c->frequency, c->bandwidth_hz); 527 c->frequency, c->bandwidth_hz);
533 528
534 /* check bandwidth */ 529 /* check bandwidth */
535 switch (c->bandwidth_hz) { 530 switch (c->bandwidth_hz) {
@@ -543,8 +538,7 @@ static int af9033_set_frontend(struct dvb_frontend *fe)
543 bandwidth_reg_val = 0x02; 538 bandwidth_reg_val = 0x02;
544 break; 539 break;
545 default: 540 default:
546 dev_dbg(&dev->client->dev, "%s: invalid bandwidth_hz\n", 541 dev_dbg(&dev->client->dev, "invalid bandwidth_hz\n");
547 __func__);
548 ret = -EINVAL; 542 ret = -EINVAL;
549 goto err; 543 goto err;
550 } 544 }
@@ -646,7 +640,7 @@ static int af9033_set_frontend(struct dvb_frontend *fe)
646 return 0; 640 return 0;
647 641
648err: 642err:
649 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 643 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
650 644
651 return ret; 645 return ret;
652} 646}
@@ -658,7 +652,7 @@ static int af9033_get_frontend(struct dvb_frontend *fe)
658 int ret; 652 int ret;
659 u8 buf[8]; 653 u8 buf[8];
660 654
661 dev_dbg(&dev->client->dev, "%s:\n", __func__); 655 dev_dbg(&dev->client->dev, "\n");
662 656
663 /* read all needed registers */ 657 /* read all needed registers */
664 ret = af9033_rd_regs(dev, 0x80f900, buf, sizeof(buf)); 658 ret = af9033_rd_regs(dev, 0x80f900, buf, sizeof(buf));
@@ -773,7 +767,7 @@ static int af9033_get_frontend(struct dvb_frontend *fe)
773 return 0; 767 return 0;
774 768
775err: 769err:
776 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 770 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
777 771
778 return ret; 772 return ret;
779} 773}
@@ -819,7 +813,7 @@ static int af9033_read_status(struct dvb_frontend *fe, fe_status_t *status)
819 return 0; 813 return 0;
820 814
821err: 815err:
822 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 816 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
823 817
824 return ret; 818 return ret;
825} 819}
@@ -873,7 +867,7 @@ static int af9033_read_snr(struct dvb_frontend *fe, u16 *snr)
873 return 0; 867 return 0;
874 868
875err: 869err:
876 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 870 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
877 871
878 return ret; 872 return ret;
879} 873}
@@ -895,7 +889,7 @@ static int af9033_read_signal_strength(struct dvb_frontend *fe, u16 *strength)
895 return 0; 889 return 0;
896 890
897err: 891err:
898 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 892 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
899 893
900 return ret; 894 return ret;
901} 895}
@@ -941,7 +935,7 @@ static int af9033_update_ch_stat(struct af9033_dev *dev)
941 935
942 return 0; 936 return 0;
943err: 937err:
944 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 938 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
945 939
946 return ret; 940 return ret;
947} 941}
@@ -979,7 +973,7 @@ static int af9033_i2c_gate_ctrl(struct dvb_frontend *fe, int enable)
979 struct af9033_dev *dev = fe->demodulator_priv; 973 struct af9033_dev *dev = fe->demodulator_priv;
980 int ret; 974 int ret;
981 975
982 dev_dbg(&dev->client->dev, "%s: enable=%d\n", __func__, enable); 976 dev_dbg(&dev->client->dev, "enable=%d\n", enable);
983 977
984 ret = af9033_wr_reg_mask(dev, 0x00fa04, enable, 0x01); 978 ret = af9033_wr_reg_mask(dev, 0x00fa04, enable, 0x01);
985 if (ret < 0) 979 if (ret < 0)
@@ -988,7 +982,7 @@ static int af9033_i2c_gate_ctrl(struct dvb_frontend *fe, int enable)
988 return 0; 982 return 0;
989 983
990err: 984err:
991 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 985 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
992 986
993 return ret; 987 return ret;
994} 988}
@@ -998,7 +992,7 @@ static int af9033_pid_filter_ctrl(struct dvb_frontend *fe, int onoff)
998 struct af9033_dev *dev = fe->demodulator_priv; 992 struct af9033_dev *dev = fe->demodulator_priv;
999 int ret; 993 int ret;
1000 994
1001 dev_dbg(&dev->client->dev, "%s: onoff=%d\n", __func__, onoff); 995 dev_dbg(&dev->client->dev, "onoff=%d\n", onoff);
1002 996
1003 ret = af9033_wr_reg_mask(dev, 0x80f993, onoff, 0x01); 997 ret = af9033_wr_reg_mask(dev, 0x80f993, onoff, 0x01);
1004 if (ret < 0) 998 if (ret < 0)
@@ -1007,7 +1001,7 @@ static int af9033_pid_filter_ctrl(struct dvb_frontend *fe, int onoff)
1007 return 0; 1001 return 0;
1008 1002
1009err: 1003err:
1010 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 1004 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
1011 1005
1012 return ret; 1006 return ret;
1013} 1007}
@@ -1019,8 +1013,8 @@ static int af9033_pid_filter(struct dvb_frontend *fe, int index, u16 pid,
1019 int ret; 1013 int ret;
1020 u8 wbuf[2] = {(pid >> 0) & 0xff, (pid >> 8) & 0xff}; 1014 u8 wbuf[2] = {(pid >> 0) & 0xff, (pid >> 8) & 0xff};
1021 1015
1022 dev_dbg(&dev->client->dev, "%s: index=%d pid=%04x onoff=%d\n", 1016 dev_dbg(&dev->client->dev, "index=%d pid=%04x onoff=%d\n",
1023 __func__, index, pid, onoff); 1017 index, pid, onoff);
1024 1018
1025 if (pid > 0x1fff) 1019 if (pid > 0x1fff)
1026 return 0; 1020 return 0;
@@ -1040,7 +1034,7 @@ static int af9033_pid_filter(struct dvb_frontend *fe, int index, u16 pid,
1040 return 0; 1034 return 0;
1041 1035
1042err: 1036err:
1043 dev_dbg(&dev->client->dev, "%s: failed=%d\n", __func__, ret); 1037 dev_dbg(&dev->client->dev, "failed=%d\n", ret);
1044 1038
1045 return ret; 1039 return ret;
1046} 1040}
@@ -1110,8 +1104,8 @@ static int af9033_probe(struct i2c_client *client,
1110 if (dev->cfg.clock != 12000000) { 1104 if (dev->cfg.clock != 12000000) {
1111 ret = -ENODEV; 1105 ret = -ENODEV;
1112 dev_err(&dev->client->dev, 1106 dev_err(&dev->client->dev,
1113 "%s: af9033: unsupported clock=%d, only 12000000 Hz is supported currently\n", 1107 "unsupported clock %d Hz, only 12000000 Hz is supported currently\n",
1114 KBUILD_MODNAME, dev->cfg.clock); 1108 dev->cfg.clock);
1115 goto err_kfree; 1109 goto err_kfree;
1116 } 1110 }
1117 1111
@@ -1139,9 +1133,9 @@ static int af9033_probe(struct i2c_client *client,
1139 goto err_kfree; 1133 goto err_kfree;
1140 1134
1141 dev_info(&dev->client->dev, 1135 dev_info(&dev->client->dev,
1142 "%s: firmware version: LINK=%d.%d.%d.%d OFDM=%d.%d.%d.%d\n", 1136 "firmware version: LINK %d.%d.%d.%d - OFDM %d.%d.%d.%d\n",
1143 KBUILD_MODNAME, buf[0], buf[1], buf[2], buf[3], buf[4], 1137 buf[0], buf[1], buf[2], buf[3], buf[4], buf[5], buf[6],
1144 buf[5], buf[6], buf[7]); 1138 buf[7]);
1145 1139
1146 /* sleep */ 1140 /* sleep */
1147 switch (dev->cfg.tuner) { 1141 switch (dev->cfg.tuner) {
@@ -1192,7 +1186,7 @@ static int af9033_probe(struct i2c_client *client,
1192err_kfree: 1186err_kfree:
1193 kfree(dev); 1187 kfree(dev);
1194err: 1188err:
1195 dev_dbg(&client->dev, "failed %d\n", ret); 1189 dev_dbg(&client->dev, "failed=%d\n", ret);
1196 return ret; 1190 return ret;
1197} 1191}
1198 1192
@@ -1200,7 +1194,7 @@ static int af9033_remove(struct i2c_client *client)
1200{ 1194{
1201 struct af9033_dev *dev = i2c_get_clientdata(client); 1195 struct af9033_dev *dev = i2c_get_clientdata(client);
1202 1196
1203 dev_dbg(&client->dev, "%s\n", __func__); 1197 dev_dbg(&dev->client->dev, "\n");
1204 1198
1205 dev->fe.ops.release = NULL; 1199 dev->fe.ops.release = NULL;
1206 dev->fe.demodulator_priv = NULL; 1200 dev->fe.demodulator_priv = NULL;