diff options
author | Antti Palosaari <crope@iki.fi> | 2014-12-13 00:28:33 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@osg.samsung.com> | 2015-02-03 13:03:04 -0500 |
commit | 6e6aac6525c8db5181cdd43cbe0343960c484e82 (patch) | |
tree | 174ecd880c9975d22569801da5b30906586c4041 | |
parent | 038c6f240e02d3c497b5ab741402d28b3871d23c (diff) |
[media] rtl2832: enhance / fix logging
Pass correct device pointer to dev_* logging functions in order
print logs correctly.
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
-rw-r--r-- | drivers/media/dvb-frontends/rtl2832.c | 102 |
1 files changed, 57 insertions, 45 deletions
diff --git a/drivers/media/dvb-frontends/rtl2832.c b/drivers/media/dvb-frontends/rtl2832.c index 065c5fe16fe1..6c324aa88c97 100644 --- a/drivers/media/dvb-frontends/rtl2832.c +++ b/drivers/media/dvb-frontends/rtl2832.c | |||
@@ -159,6 +159,7 @@ static const struct rtl2832_reg_entry registers[] = { | |||
159 | /* write multiple hardware registers */ | 159 | /* write multiple hardware registers */ |
160 | static int rtl2832_wr(struct rtl2832_dev *dev, u8 reg, u8 *val, int len) | 160 | static int rtl2832_wr(struct rtl2832_dev *dev, u8 reg, u8 *val, int len) |
161 | { | 161 | { |
162 | struct i2c_client *client = dev->client; | ||
162 | int ret; | 163 | int ret; |
163 | u8 buf[MAX_XFER_SIZE]; | 164 | u8 buf[MAX_XFER_SIZE]; |
164 | struct i2c_msg msg[1] = { | 165 | struct i2c_msg msg[1] = { |
@@ -171,9 +172,8 @@ static int rtl2832_wr(struct rtl2832_dev *dev, u8 reg, u8 *val, int len) | |||
171 | }; | 172 | }; |
172 | 173 | ||
173 | if (1 + len > sizeof(buf)) { | 174 | if (1 + len > sizeof(buf)) { |
174 | dev_warn(&dev->i2c->dev, | 175 | dev_warn(&client->dev, "i2c wr reg=%04x: len=%d is too big!\n", |
175 | "%s: i2c wr reg=%04x: len=%d is too big!\n", | 176 | reg, len); |
176 | KBUILD_MODNAME, reg, len); | ||
177 | return -EINVAL; | 177 | return -EINVAL; |
178 | } | 178 | } |
179 | 179 | ||
@@ -184,9 +184,8 @@ static int rtl2832_wr(struct rtl2832_dev *dev, u8 reg, u8 *val, int len) | |||
184 | if (ret == 1) { | 184 | if (ret == 1) { |
185 | ret = 0; | 185 | ret = 0; |
186 | } else { | 186 | } else { |
187 | dev_warn(&dev->i2c->dev, | 187 | dev_warn(&client->dev, "i2c wr failed=%d reg=%02x len=%d\n", |
188 | "%s: i2c wr failed=%d reg=%02x len=%d\n", | 188 | ret, reg, len); |
189 | KBUILD_MODNAME, ret, reg, len); | ||
190 | ret = -EREMOTEIO; | 189 | ret = -EREMOTEIO; |
191 | } | 190 | } |
192 | return ret; | 191 | return ret; |
@@ -195,6 +194,7 @@ static int rtl2832_wr(struct rtl2832_dev *dev, u8 reg, u8 *val, int len) | |||
195 | /* read multiple hardware registers */ | 194 | /* read multiple hardware registers */ |
196 | static int rtl2832_rd(struct rtl2832_dev *dev, u8 reg, u8 *val, int len) | 195 | static int rtl2832_rd(struct rtl2832_dev *dev, u8 reg, u8 *val, int len) |
197 | { | 196 | { |
197 | struct i2c_client *client = dev->client; | ||
198 | int ret; | 198 | int ret; |
199 | struct i2c_msg msg[2] = { | 199 | struct i2c_msg msg[2] = { |
200 | { | 200 | { |
@@ -214,9 +214,8 @@ static int rtl2832_rd(struct rtl2832_dev *dev, u8 reg, u8 *val, int len) | |||
214 | if (ret == 2) { | 214 | if (ret == 2) { |
215 | ret = 0; | 215 | ret = 0; |
216 | } else { | 216 | } else { |
217 | dev_warn(&dev->i2c->dev, | 217 | dev_warn(&client->dev, "i2c rd failed=%d reg=%02x len=%d\n", |
218 | "%s: i2c rd failed=%d reg=%02x len=%d\n", | 218 | ret, reg, len); |
219 | KBUILD_MODNAME, ret, reg, len); | ||
220 | ret = -EREMOTEIO; | 219 | ret = -EREMOTEIO; |
221 | } | 220 | } |
222 | return ret; | 221 | return ret; |
@@ -235,9 +234,8 @@ static int rtl2832_wr_regs(struct rtl2832_dev *dev, u8 reg, u8 page, u8 *val, | |||
235 | return ret; | 234 | return ret; |
236 | 235 | ||
237 | dev->page = page; | 236 | dev->page = page; |
238 | } | 237 | } |
239 | 238 | return rtl2832_wr(dev, reg, val, len); | |
240 | return rtl2832_wr(dev, reg, val, len); | ||
241 | } | 239 | } |
242 | 240 | ||
243 | /* read multiple registers */ | 241 | /* read multiple registers */ |
@@ -254,7 +252,6 @@ static int rtl2832_rd_regs(struct rtl2832_dev *dev, u8 reg, u8 page, u8 *val, | |||
254 | 252 | ||
255 | dev->page = page; | 253 | dev->page = page; |
256 | } | 254 | } |
257 | |||
258 | return rtl2832_rd(dev, reg, val, len); | 255 | return rtl2832_rd(dev, reg, val, len); |
259 | } | 256 | } |
260 | 257 | ||
@@ -272,6 +269,7 @@ static int rtl2832_rd_reg(struct rtl2832_dev *dev, u8 reg, u8 page, u8 *val) | |||
272 | 269 | ||
273 | static int rtl2832_rd_demod_reg(struct rtl2832_dev *dev, int reg, u32 *val) | 270 | static int rtl2832_rd_demod_reg(struct rtl2832_dev *dev, int reg, u32 *val) |
274 | { | 271 | { |
272 | struct i2c_client *client = dev->client; | ||
275 | int ret; | 273 | int ret; |
276 | 274 | ||
277 | u8 reg_start_addr; | 275 | u8 reg_start_addr; |
@@ -305,13 +303,14 @@ static int rtl2832_rd_demod_reg(struct rtl2832_dev *dev, int reg, u32 *val) | |||
305 | return ret; | 303 | return ret; |
306 | 304 | ||
307 | err: | 305 | err: |
308 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 306 | dev_dbg(&client->dev, "failed=%d\n", ret); |
309 | return ret; | 307 | return ret; |
310 | 308 | ||
311 | } | 309 | } |
312 | 310 | ||
313 | static int rtl2832_wr_demod_reg(struct rtl2832_dev *dev, int reg, u32 val) | 311 | static int rtl2832_wr_demod_reg(struct rtl2832_dev *dev, int reg, u32 val) |
314 | { | 312 | { |
313 | struct i2c_client *client = dev->client; | ||
315 | int ret, i; | 314 | int ret, i; |
316 | u8 len; | 315 | u8 len; |
317 | u8 reg_start_addr; | 316 | u8 reg_start_addr; |
@@ -357,17 +356,18 @@ static int rtl2832_wr_demod_reg(struct rtl2832_dev *dev, int reg, u32 val) | |||
357 | return ret; | 356 | return ret; |
358 | 357 | ||
359 | err: | 358 | err: |
360 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 359 | dev_dbg(&client->dev, "failed=%d\n", ret); |
361 | return ret; | 360 | return ret; |
362 | 361 | ||
363 | } | 362 | } |
364 | 363 | ||
365 | static int rtl2832_i2c_gate_ctrl(struct dvb_frontend *fe, int enable) | 364 | static int rtl2832_i2c_gate_ctrl(struct dvb_frontend *fe, int enable) |
366 | { | 365 | { |
367 | int ret; | ||
368 | struct rtl2832_dev *dev = fe->demodulator_priv; | 366 | struct rtl2832_dev *dev = fe->demodulator_priv; |
367 | struct i2c_client *client = dev->client; | ||
368 | int ret; | ||
369 | 369 | ||
370 | dev_dbg(&dev->i2c->dev, "%s: enable=%d\n", __func__, enable); | 370 | dev_dbg(&client->dev, "enable=%d\n", enable); |
371 | 371 | ||
372 | /* gate already open or close */ | 372 | /* gate already open or close */ |
373 | if (dev->i2c_gate_state == enable) | 373 | if (dev->i2c_gate_state == enable) |
@@ -381,7 +381,7 @@ static int rtl2832_i2c_gate_ctrl(struct dvb_frontend *fe, int enable) | |||
381 | 381 | ||
382 | return ret; | 382 | return ret; |
383 | err: | 383 | err: |
384 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 384 | dev_dbg(&client->dev, "failed=%d\n", ret); |
385 | return ret; | 385 | return ret; |
386 | } | 386 | } |
387 | 387 | ||
@@ -389,6 +389,7 @@ err: | |||
389 | static int rtl2832_set_if(struct dvb_frontend *fe, u32 if_freq) | 389 | static int rtl2832_set_if(struct dvb_frontend *fe, u32 if_freq) |
390 | { | 390 | { |
391 | struct rtl2832_dev *dev = fe->demodulator_priv; | 391 | struct rtl2832_dev *dev = fe->demodulator_priv; |
392 | struct i2c_client *client = dev->client; | ||
392 | int ret; | 393 | int ret; |
393 | u64 pset_iffreq; | 394 | u64 pset_iffreq; |
394 | u8 en_bbin = (if_freq == 0 ? 0x1 : 0x0); | 395 | u8 en_bbin = (if_freq == 0 ? 0x1 : 0x0); |
@@ -403,8 +404,8 @@ static int rtl2832_set_if(struct dvb_frontend *fe, u32 if_freq) | |||
403 | pset_iffreq = div_u64(pset_iffreq, dev->cfg.xtal); | 404 | pset_iffreq = div_u64(pset_iffreq, dev->cfg.xtal); |
404 | pset_iffreq = -pset_iffreq; | 405 | pset_iffreq = -pset_iffreq; |
405 | pset_iffreq = pset_iffreq & 0x3fffff; | 406 | pset_iffreq = pset_iffreq & 0x3fffff; |
406 | dev_dbg(&dev->i2c->dev, "%s: if_frequency=%d pset_iffreq=%08x\n", | 407 | dev_dbg(&client->dev, "if_frequency=%d pset_iffreq=%08x\n", |
407 | __func__, if_freq, (unsigned)pset_iffreq); | 408 | if_freq, (unsigned)pset_iffreq); |
408 | 409 | ||
409 | ret = rtl2832_wr_demod_reg(dev, DVBT_EN_BBIN, en_bbin); | 410 | ret = rtl2832_wr_demod_reg(dev, DVBT_EN_BBIN, en_bbin); |
410 | if (ret) | 411 | if (ret) |
@@ -418,9 +419,9 @@ static int rtl2832_set_if(struct dvb_frontend *fe, u32 if_freq) | |||
418 | static int rtl2832_init(struct dvb_frontend *fe) | 419 | static int rtl2832_init(struct dvb_frontend *fe) |
419 | { | 420 | { |
420 | struct rtl2832_dev *dev = fe->demodulator_priv; | 421 | struct rtl2832_dev *dev = fe->demodulator_priv; |
422 | struct i2c_client *client = dev->client; | ||
421 | const struct rtl2832_reg_value *init; | 423 | const struct rtl2832_reg_value *init; |
422 | int i, ret, len; | 424 | int i, ret, len; |
423 | |||
424 | /* initialization values for the demodulator registers */ | 425 | /* initialization values for the demodulator registers */ |
425 | struct rtl2832_reg_value rtl2832_initial_regs[] = { | 426 | struct rtl2832_reg_value rtl2832_initial_regs[] = { |
426 | {DVBT_AD_EN_REG, 0x1}, | 427 | {DVBT_AD_EN_REG, 0x1}, |
@@ -467,7 +468,7 @@ static int rtl2832_init(struct dvb_frontend *fe) | |||
467 | {DVBT_CR_THD_SET2, 0x1}, | 468 | {DVBT_CR_THD_SET2, 0x1}, |
468 | }; | 469 | }; |
469 | 470 | ||
470 | dev_dbg(&dev->i2c->dev, "%s:\n", __func__); | 471 | dev_dbg(&client->dev, "\n"); |
471 | 472 | ||
472 | for (i = 0; i < ARRAY_SIZE(rtl2832_initial_regs); i++) { | 473 | for (i = 0; i < ARRAY_SIZE(rtl2832_initial_regs); i++) { |
473 | ret = rtl2832_wr_demod_reg(dev, rtl2832_initial_regs[i].reg, | 474 | ret = rtl2832_wr_demod_reg(dev, rtl2832_initial_regs[i].reg, |
@@ -477,8 +478,7 @@ static int rtl2832_init(struct dvb_frontend *fe) | |||
477 | } | 478 | } |
478 | 479 | ||
479 | /* load tuner specific settings */ | 480 | /* load tuner specific settings */ |
480 | dev_dbg(&dev->i2c->dev, "%s: load settings for tuner=%02x\n", | 481 | dev_dbg(&client->dev, "load settings for tuner=%02x\n", dev->cfg.tuner); |
481 | __func__, dev->cfg.tuner); | ||
482 | switch (dev->cfg.tuner) { | 482 | switch (dev->cfg.tuner) { |
483 | case RTL2832_TUNER_FC0012: | 483 | case RTL2832_TUNER_FC0012: |
484 | case RTL2832_TUNER_FC0013: | 484 | case RTL2832_TUNER_FC0013: |
@@ -530,15 +530,16 @@ static int rtl2832_init(struct dvb_frontend *fe) | |||
530 | return ret; | 530 | return ret; |
531 | 531 | ||
532 | err: | 532 | err: |
533 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 533 | dev_dbg(&client->dev, "failed=%d\n", ret); |
534 | return ret; | 534 | return ret; |
535 | } | 535 | } |
536 | 536 | ||
537 | static int rtl2832_sleep(struct dvb_frontend *fe) | 537 | static int rtl2832_sleep(struct dvb_frontend *fe) |
538 | { | 538 | { |
539 | struct rtl2832_dev *dev = fe->demodulator_priv; | 539 | struct rtl2832_dev *dev = fe->demodulator_priv; |
540 | struct i2c_client *client = dev->client; | ||
540 | 541 | ||
541 | dev_dbg(&dev->i2c->dev, "%s:\n", __func__); | 542 | dev_dbg(&client->dev, "\n"); |
542 | dev->sleeping = true; | 543 | dev->sleeping = true; |
543 | return 0; | 544 | return 0; |
544 | } | 545 | } |
@@ -547,8 +548,9 @@ static int rtl2832_get_tune_settings(struct dvb_frontend *fe, | |||
547 | struct dvb_frontend_tune_settings *s) | 548 | struct dvb_frontend_tune_settings *s) |
548 | { | 549 | { |
549 | struct rtl2832_dev *dev = fe->demodulator_priv; | 550 | struct rtl2832_dev *dev = fe->demodulator_priv; |
551 | struct i2c_client *client = dev->client; | ||
550 | 552 | ||
551 | dev_dbg(&dev->i2c->dev, "%s:\n", __func__); | 553 | dev_dbg(&client->dev, "\n"); |
552 | s->min_delay_ms = 1000; | 554 | s->min_delay_ms = 1000; |
553 | s->step_size = fe->ops.info.frequency_stepsize * 2; | 555 | s->step_size = fe->ops.info.frequency_stepsize * 2; |
554 | s->max_drift = (fe->ops.info.frequency_stepsize * 2) + 1; | 556 | s->max_drift = (fe->ops.info.frequency_stepsize * 2) + 1; |
@@ -558,6 +560,7 @@ static int rtl2832_get_tune_settings(struct dvb_frontend *fe, | |||
558 | static int rtl2832_set_frontend(struct dvb_frontend *fe) | 560 | static int rtl2832_set_frontend(struct dvb_frontend *fe) |
559 | { | 561 | { |
560 | struct rtl2832_dev *dev = fe->demodulator_priv; | 562 | struct rtl2832_dev *dev = fe->demodulator_priv; |
563 | struct i2c_client *client = dev->client; | ||
561 | struct dtv_frontend_properties *c = &fe->dtv_property_cache; | 564 | struct dtv_frontend_properties *c = &fe->dtv_property_cache; |
562 | int ret, i, j; | 565 | int ret, i, j; |
563 | u64 bw_mode, num, num2; | 566 | u64 bw_mode, num, num2; |
@@ -589,9 +592,8 @@ static int rtl2832_set_frontend(struct dvb_frontend *fe) | |||
589 | }; | 592 | }; |
590 | 593 | ||
591 | 594 | ||
592 | dev_dbg(&dev->i2c->dev, | 595 | dev_dbg(&client->dev, "frequency=%u bandwidth_hz=%u inversion=%u\n", |
593 | "%s: frequency=%d bandwidth_hz=%d inversion=%d\n", | 596 | c->frequency, c->bandwidth_hz, c->inversion); |
594 | __func__, c->frequency, c->bandwidth_hz, c->inversion); | ||
595 | 597 | ||
596 | /* program tuner */ | 598 | /* program tuner */ |
597 | if (fe->ops.tuner_ops.set_params) | 599 | if (fe->ops.tuner_ops.set_params) |
@@ -629,8 +631,10 @@ static int rtl2832_set_frontend(struct dvb_frontend *fe) | |||
629 | bw_mode = 64000000; | 631 | bw_mode = 64000000; |
630 | break; | 632 | break; |
631 | default: | 633 | default: |
632 | dev_dbg(&dev->i2c->dev, "%s: invalid bandwidth\n", __func__); | 634 | dev_err(&client->dev, "invalid bandwidth_hz %u\n", |
633 | return -EINVAL; | 635 | c->bandwidth_hz); |
636 | ret = -EINVAL; | ||
637 | goto err; | ||
634 | } | 638 | } |
635 | 639 | ||
636 | for (j = 0; j < sizeof(bw_params[0]); j++) { | 640 | for (j = 0; j < sizeof(bw_params[0]); j++) { |
@@ -675,13 +679,14 @@ static int rtl2832_set_frontend(struct dvb_frontend *fe) | |||
675 | 679 | ||
676 | return ret; | 680 | return ret; |
677 | err: | 681 | err: |
678 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 682 | dev_dbg(&client->dev, "failed=%d\n", ret); |
679 | return ret; | 683 | return ret; |
680 | } | 684 | } |
681 | 685 | ||
682 | static int rtl2832_get_frontend(struct dvb_frontend *fe) | 686 | static int rtl2832_get_frontend(struct dvb_frontend *fe) |
683 | { | 687 | { |
684 | struct rtl2832_dev *dev = fe->demodulator_priv; | 688 | struct rtl2832_dev *dev = fe->demodulator_priv; |
689 | struct i2c_client *client = dev->client; | ||
685 | struct dtv_frontend_properties *c = &fe->dtv_property_cache; | 690 | struct dtv_frontend_properties *c = &fe->dtv_property_cache; |
686 | int ret; | 691 | int ret; |
687 | u8 buf[3]; | 692 | u8 buf[3]; |
@@ -697,7 +702,7 @@ static int rtl2832_get_frontend(struct dvb_frontend *fe) | |||
697 | if (ret) | 702 | if (ret) |
698 | goto err; | 703 | goto err; |
699 | 704 | ||
700 | dev_dbg(&dev->i2c->dev, "%s: TPS=%*ph\n", __func__, 3, buf); | 705 | dev_dbg(&client->dev, "TPS=%*ph\n", 3, buf); |
701 | 706 | ||
702 | switch ((buf[0] >> 2) & 3) { | 707 | switch ((buf[0] >> 2) & 3) { |
703 | case 0: | 708 | case 0: |
@@ -787,18 +792,20 @@ static int rtl2832_get_frontend(struct dvb_frontend *fe) | |||
787 | 792 | ||
788 | return 0; | 793 | return 0; |
789 | err: | 794 | err: |
790 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 795 | dev_dbg(&client->dev, "failed=%d\n", ret); |
791 | return ret; | 796 | return ret; |
792 | } | 797 | } |
793 | 798 | ||
794 | static int rtl2832_read_status(struct dvb_frontend *fe, fe_status_t *status) | 799 | static int rtl2832_read_status(struct dvb_frontend *fe, fe_status_t *status) |
795 | { | 800 | { |
796 | struct rtl2832_dev *dev = fe->demodulator_priv; | 801 | struct rtl2832_dev *dev = fe->demodulator_priv; |
802 | struct i2c_client *client = dev->client; | ||
797 | int ret; | 803 | int ret; |
798 | u32 tmp; | 804 | u32 tmp; |
799 | *status = 0; | ||
800 | 805 | ||
801 | dev_dbg(&dev->i2c->dev, "%s:\n", __func__); | 806 | dev_dbg(&client->dev, "\n"); |
807 | |||
808 | *status = 0; | ||
802 | if (dev->sleeping) | 809 | if (dev->sleeping) |
803 | return 0; | 810 | return 0; |
804 | 811 | ||
@@ -818,13 +825,14 @@ static int rtl2832_read_status(struct dvb_frontend *fe, fe_status_t *status) | |||
818 | 825 | ||
819 | return ret; | 826 | return ret; |
820 | err: | 827 | err: |
821 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 828 | dev_dbg(&client->dev, "failed=%d\n", ret); |
822 | return ret; | 829 | return ret; |
823 | } | 830 | } |
824 | 831 | ||
825 | static int rtl2832_read_snr(struct dvb_frontend *fe, u16 *snr) | 832 | static int rtl2832_read_snr(struct dvb_frontend *fe, u16 *snr) |
826 | { | 833 | { |
827 | struct rtl2832_dev *dev = fe->demodulator_priv; | 834 | struct rtl2832_dev *dev = fe->demodulator_priv; |
835 | struct i2c_client *client = dev->client; | ||
828 | int ret, hierarchy, constellation; | 836 | int ret, hierarchy, constellation; |
829 | u8 buf[2], tmp; | 837 | u8 buf[2], tmp; |
830 | u16 tmp16; | 838 | u16 tmp16; |
@@ -864,13 +872,14 @@ static int rtl2832_read_snr(struct dvb_frontend *fe, u16 *snr) | |||
864 | 872 | ||
865 | return 0; | 873 | return 0; |
866 | err: | 874 | err: |
867 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 875 | dev_dbg(&client->dev, "failed=%d\n", ret); |
868 | return ret; | 876 | return ret; |
869 | } | 877 | } |
870 | 878 | ||
871 | static int rtl2832_read_ber(struct dvb_frontend *fe, u32 *ber) | 879 | static int rtl2832_read_ber(struct dvb_frontend *fe, u32 *ber) |
872 | { | 880 | { |
873 | struct rtl2832_dev *dev = fe->demodulator_priv; | 881 | struct rtl2832_dev *dev = fe->demodulator_priv; |
882 | struct i2c_client *client = dev->client; | ||
874 | int ret; | 883 | int ret; |
875 | u8 buf[2]; | 884 | u8 buf[2]; |
876 | 885 | ||
@@ -882,7 +891,7 @@ static int rtl2832_read_ber(struct dvb_frontend *fe, u32 *ber) | |||
882 | 891 | ||
883 | return 0; | 892 | return 0; |
884 | err: | 893 | err: |
885 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 894 | dev_dbg(&client->dev, "failed=%d\n", ret); |
886 | return ret; | 895 | return ret; |
887 | } | 896 | } |
888 | 897 | ||
@@ -897,6 +906,7 @@ static void rtl2832_i2c_gate_work(struct work_struct *work) | |||
897 | { | 906 | { |
898 | struct rtl2832_dev *dev = container_of(work, | 907 | struct rtl2832_dev *dev = container_of(work, |
899 | struct rtl2832_dev, i2c_gate_work.work); | 908 | struct rtl2832_dev, i2c_gate_work.work); |
909 | struct i2c_client *client = dev->client; | ||
900 | struct i2c_adapter *adap = dev->i2c; | 910 | struct i2c_adapter *adap = dev->i2c; |
901 | int ret; | 911 | int ret; |
902 | u8 buf[2]; | 912 | u8 buf[2]; |
@@ -909,6 +919,8 @@ static void rtl2832_i2c_gate_work(struct work_struct *work) | |||
909 | } | 919 | } |
910 | }; | 920 | }; |
911 | 921 | ||
922 | dev_dbg(&client->dev, "\n"); | ||
923 | |||
912 | /* select reg bank 1 */ | 924 | /* select reg bank 1 */ |
913 | buf[0] = 0x00; | 925 | buf[0] = 0x00; |
914 | buf[1] = 0x01; | 926 | buf[1] = 0x01; |
@@ -929,14 +941,14 @@ static void rtl2832_i2c_gate_work(struct work_struct *work) | |||
929 | 941 | ||
930 | return; | 942 | return; |
931 | err: | 943 | err: |
932 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 944 | dev_dbg(&client->dev, "failed=%d\n", ret); |
933 | |||
934 | return; | 945 | return; |
935 | } | 946 | } |
936 | 947 | ||
937 | static int rtl2832_select(struct i2c_adapter *adap, void *mux_priv, u32 chan_id) | 948 | static int rtl2832_select(struct i2c_adapter *adap, void *mux_priv, u32 chan_id) |
938 | { | 949 | { |
939 | struct rtl2832_dev *dev = mux_priv; | 950 | struct rtl2832_dev *dev = mux_priv; |
951 | struct i2c_client *client = dev->client; | ||
940 | int ret; | 952 | int ret; |
941 | u8 buf[2], val; | 953 | u8 buf[2], val; |
942 | struct i2c_msg msg[1] = { | 954 | struct i2c_msg msg[1] = { |
@@ -996,8 +1008,7 @@ static int rtl2832_select(struct i2c_adapter *adap, void *mux_priv, u32 chan_id) | |||
996 | 1008 | ||
997 | return 0; | 1009 | return 0; |
998 | err: | 1010 | err: |
999 | dev_dbg(&dev->i2c->dev, "%s: failed=%d\n", __func__, ret); | 1011 | dev_dbg(&client->dev, "failed=%d\n", ret); |
1000 | |||
1001 | return -EREMOTEIO; | 1012 | return -EREMOTEIO; |
1002 | } | 1013 | } |
1003 | 1014 | ||
@@ -1005,6 +1016,7 @@ static int rtl2832_deselect(struct i2c_adapter *adap, void *mux_priv, | |||
1005 | u32 chan_id) | 1016 | u32 chan_id) |
1006 | { | 1017 | { |
1007 | struct rtl2832_dev *dev = mux_priv; | 1018 | struct rtl2832_dev *dev = mux_priv; |
1019 | |||
1008 | schedule_delayed_work(&dev->i2c_gate_work, usecs_to_jiffies(100)); | 1020 | schedule_delayed_work(&dev->i2c_gate_work, usecs_to_jiffies(100)); |
1009 | return 0; | 1021 | return 0; |
1010 | } | 1022 | } |
@@ -1077,7 +1089,7 @@ static int rtl2832_enable_slave_ts(struct i2c_client *client) | |||
1077 | struct rtl2832_dev *dev = i2c_get_clientdata(client); | 1089 | struct rtl2832_dev *dev = i2c_get_clientdata(client); |
1078 | int ret; | 1090 | int ret; |
1079 | 1091 | ||
1080 | dev_dbg(&client->dev, "setting PIP mode\n"); | 1092 | dev_dbg(&client->dev, "\n"); |
1081 | 1093 | ||
1082 | ret = rtl2832_wr_regs(dev, 0x0c, 1, "\x5f\xff", 2); | 1094 | ret = rtl2832_wr_regs(dev, 0x0c, 1, "\x5f\xff", 2); |
1083 | if (ret) | 1095 | if (ret) |