diff options
-rw-r--r-- | drivers/media/video/em28xx/em28xx-dvb.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/drivers/media/video/em28xx/em28xx-dvb.c b/drivers/media/video/em28xx/em28xx-dvb.c index 5ebc274c1b2f..cf0ac7f2a30d 100644 --- a/drivers/media/video/em28xx/em28xx-dvb.c +++ b/drivers/media/video/em28xx/em28xx-dvb.c | |||
@@ -245,7 +245,7 @@ static struct s5h1409_config em28xx_s5h1409_with_xc3028 = { | |||
245 | .mpeg_timing = S5H1409_MPEGTIMING_CONTINOUS_NONINVERTING_CLOCK | 245 | .mpeg_timing = S5H1409_MPEGTIMING_CONTINOUS_NONINVERTING_CLOCK |
246 | }; | 246 | }; |
247 | 247 | ||
248 | static struct zl10353_config em28xx_terratec_xs_zl10353_xc3028 = { | 248 | static struct zl10353_config em28xx_zl10353_xc3028_no_i2c_gate = { |
249 | .demod_address = (0x1e >> 1), | 249 | .demod_address = (0x1e >> 1), |
250 | .no_tuner = 1, | 250 | .no_tuner = 1, |
251 | .disable_i2c_gate_ctrl = 1, | 251 | .disable_i2c_gate_ctrl = 1, |
@@ -477,7 +477,6 @@ static int dvb_init(struct em28xx *dev) | |||
477 | goto out_free; | 477 | goto out_free; |
478 | } | 478 | } |
479 | break; | 479 | break; |
480 | case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900: | ||
481 | case EM2880_BOARD_KWORLD_DVB_310U: | 480 | case EM2880_BOARD_KWORLD_DVB_310U: |
482 | case EM2880_BOARD_EMPIRE_DUAL_TV: | 481 | case EM2880_BOARD_EMPIRE_DUAL_TV: |
483 | dvb->frontend = dvb_attach(zl10353_attach, | 482 | dvb->frontend = dvb_attach(zl10353_attach, |
@@ -488,10 +487,19 @@ static int dvb_init(struct em28xx *dev) | |||
488 | goto out_free; | 487 | goto out_free; |
489 | } | 488 | } |
490 | break; | 489 | break; |
490 | case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900: | ||
491 | dvb->frontend = dvb_attach(zl10353_attach, | ||
492 | &em28xx_zl10353_xc3028_no_i2c_gate, | ||
493 | &dev->i2c_adap); | ||
494 | if (attach_xc3028(0x61, dev) < 0) { | ||
495 | result = -EINVAL; | ||
496 | goto out_free; | ||
497 | } | ||
498 | break; | ||
491 | case EM2880_BOARD_TERRATEC_HYBRID_XS: | 499 | case EM2880_BOARD_TERRATEC_HYBRID_XS: |
492 | case EM2881_BOARD_PINNACLE_HYBRID_PRO: | 500 | case EM2881_BOARD_PINNACLE_HYBRID_PRO: |
493 | dvb->frontend = dvb_attach(zl10353_attach, | 501 | dvb->frontend = dvb_attach(zl10353_attach, |
494 | &em28xx_terratec_xs_zl10353_xc3028, | 502 | &em28xx_zl10353_xc3028_no_i2c_gate, |
495 | &dev->i2c_adap); | 503 | &dev->i2c_adap); |
496 | if (dvb->frontend == NULL) { | 504 | if (dvb->frontend == NULL) { |
497 | /* This board could have either a zl10353 or a mt352. | 505 | /* This board could have either a zl10353 or a mt352. |