diff options
| -rw-r--r-- | drivers/media/video/em28xx/em28xx-dvb.c | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/drivers/media/video/em28xx/em28xx-dvb.c b/drivers/media/video/em28xx/em28xx-dvb.c index d8dd971ad644..503a8d5b5382 100644 --- a/drivers/media/video/em28xx/em28xx-dvb.c +++ b/drivers/media/video/em28xx/em28xx-dvb.c | |||
| @@ -338,13 +338,6 @@ struct drxk_config pctv_520e_drxk = { | |||
| 338 | .chunk_size = 58, | 338 | .chunk_size = 58, |
| 339 | }; | 339 | }; |
| 340 | 340 | ||
| 341 | struct drxk_config pctv_520e_drxk = { | ||
| 342 | .adr = 0x29, | ||
| 343 | .single_master = 1, | ||
| 344 | .microcode_name = "dvb-demod-drxk-pctv.fw", | ||
| 345 | .chunk_size = 58, | ||
| 346 | }; | ||
| 347 | |||
| 348 | static int drxk_gate_ctrl(struct dvb_frontend *fe, int enable) | 341 | static int drxk_gate_ctrl(struct dvb_frontend *fe, int enable) |
| 349 | { | 342 | { |
| 350 | struct em28xx_dvb *dvb = fe->sec_priv; | 343 | struct em28xx_dvb *dvb = fe->sec_priv; |
| @@ -505,33 +498,6 @@ static void pctv_520e_init(struct em28xx *dev) | |||
| 505 | i2c_master_send(&dev->i2c_client, regs[i].r, regs[i].len); | 498 | i2c_master_send(&dev->i2c_client, regs[i].r, regs[i].len); |
| 506 | }; | 499 | }; |
| 507 | 500 | ||
| 508 | static void pctv_520e_init(struct em28xx *dev) | ||
| 509 | { | ||
| 510 | /* | ||
| 511 | * Init TDA8295(?) analog demodulator. Looks like I2C traffic to | ||
| 512 | * digital demodulator and tuner are routed via TDA8295. | ||
| 513 | */ | ||
| 514 | int i; | ||
| 515 | struct { | ||
| 516 | unsigned char r[4]; | ||
| 517 | int len; | ||
| 518 | } regs[] = { | ||
| 519 | {{ 0x06, 0x02, 0x00, 0x31 }, 4}, | ||
| 520 | {{ 0x01, 0x02 }, 2}, | ||
| 521 | {{ 0x01, 0x02, 0x00, 0xc6 }, 4}, | ||
| 522 | {{ 0x01, 0x00 }, 2}, | ||
| 523 | {{ 0x01, 0x00, 0xff, 0xaf }, 4}, | ||
| 524 | {{ 0x01, 0x00, 0x03, 0xa0 }, 4}, | ||
| 525 | {{ 0x01, 0x00 }, 2}, | ||
| 526 | {{ 0x01, 0x00, 0x73, 0xaf }, 4}, | ||
| 527 | }; | ||
| 528 | |||
| 529 | dev->i2c_client.addr = 0x82 >> 1; /* 0x41 */ | ||
| 530 | |||
| 531 | for (i = 0; i < ARRAY_SIZE(regs); i++) | ||
| 532 | i2c_master_send(&dev->i2c_client, regs[i].r, regs[i].len); | ||
| 533 | }; | ||
| 534 | |||
| 535 | static int em28xx_mt352_terratec_xs_init(struct dvb_frontend *fe) | 501 | static int em28xx_mt352_terratec_xs_init(struct dvb_frontend *fe) |
| 536 | { | 502 | { |
| 537 | /* Values extracted from a USB trace of the Terratec Windows driver */ | 503 | /* Values extracted from a USB trace of the Terratec Windows driver */ |
| @@ -1033,24 +999,6 @@ static int em28xx_dvb_init(struct em28xx *dev) | |||
| 1033 | "driver version\n"); | 999 | "driver version\n"); |
| 1034 | 1000 | ||
| 1035 | break; | 1001 | break; |
| 1036 | case EM2884_BOARD_PCTV_520E: | ||
| 1037 | pctv_520e_init(dev); | ||
| 1038 | |||
| 1039 | /* attach demodulator */ | ||
| 1040 | dvb->fe[0] = dvb_attach(drxk_attach, &pctv_520e_drxk, | ||
| 1041 | &dev->i2c_adap); | ||
| 1042 | |||
| 1043 | if (dvb->fe[0]) { | ||
| 1044 | /* attach tuner */ | ||
| 1045 | if (!dvb_attach(tda18271_attach, dvb->fe[0], 0x60, | ||
| 1046 | &dev->i2c_adap, | ||
| 1047 | &em28xx_cxd2820r_tda18271_config)) { | ||
| 1048 | dvb_frontend_detach(dvb->fe[0]); | ||
| 1049 | result = -EINVAL; | ||
| 1050 | goto out_free; | ||
| 1051 | } | ||
| 1052 | } | ||
| 1053 | break; | ||
| 1054 | case EM2884_BOARD_PCTV_510E: | 1002 | case EM2884_BOARD_PCTV_510E: |
| 1055 | case EM2884_BOARD_PCTV_520E: | 1003 | case EM2884_BOARD_PCTV_520E: |
| 1056 | pctv_520e_init(dev); | 1004 | pctv_520e_init(dev); |
