aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/em28xx/em28xx-cards.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@infradead.org>2008-01-05 15:01:41 -0500
committerMauro Carvalho Chehab <mchehab@infradead.org>2008-01-25 16:04:33 -0500
commit3abee53e4402b6ae39e1e610f9ef94eb74097138 (patch)
treebb96b460ebf6be07a127216dda86a1f896274afd /drivers/media/video/em28xx/em28xx-cards.c
parent0f6dac18ccc6fb0c95f3e0269e60239661c9b4c5 (diff)
V4L/DVB (6955): Properly implement 12MHz I2S support
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/em28xx/em28xx-cards.c')
-rw-r--r--drivers/media/video/em28xx/em28xx-cards.c20
1 files changed, 9 insertions, 11 deletions
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c
index 78be0dc25720..1011813ad7c2 100644
--- a/drivers/media/video/em28xx/em28xx-cards.c
+++ b/drivers/media/video/em28xx/em28xx-cards.c
@@ -174,13 +174,14 @@ struct em28xx_board em28xx_boards[] = {
174 } }, 174 } },
175 }, 175 },
176 [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_950] = { 176 [EM2880_BOARD_HAUPPAUGE_WINTV_HVR_950] = {
177 .name = "Hauppauge WinTV HVR 950", 177 .name = "Hauppauge WinTV HVR 950",
178 .vchannels = 3, 178 .vchannels = 3,
179 .tda9887_conf = TDA9887_PRESENT, 179 .tda9887_conf = TDA9887_PRESENT,
180 .tuner_type = TUNER_XC2028, 180 .tuner_type = TUNER_XC2028,
181 .has_tuner = 1, 181 .has_tuner = 1,
182 .mts_firmware = 1, 182 .mts_firmware = 1,
183 .decoder = EM28XX_TVP5150, 183 .has_12mhz_i2s = 1,
184 .decoder = EM28XX_TVP5150,
184 .input = { { 185 .input = { {
185 .type = EM28XX_VMUX_TELEVISION, 186 .type = EM28XX_VMUX_TELEVISION,
186 .vmux = TVP5150_COMPOSITE0, 187 .vmux = TVP5150_COMPOSITE0,
@@ -641,6 +642,7 @@ static void em28xx_set_model(struct em28xx *dev)
641 dev->decoder = em28xx_boards[dev->model].decoder; 642 dev->decoder = em28xx_boards[dev->model].decoder;
642 dev->video_inputs = em28xx_boards[dev->model].vchannels; 643 dev->video_inputs = em28xx_boards[dev->model].vchannels;
643 dev->analog_gpio = em28xx_boards[dev->model].analog_gpio; 644 dev->analog_gpio = em28xx_boards[dev->model].analog_gpio;
645 dev->has_12mhz_i2s = em28xx_boards[dev->model].has_12mhz_i2s;
644 646
645 if (!em28xx_boards[dev->model].has_tuner) 647 if (!em28xx_boards[dev->model].has_tuner)
646 dev->tuner_type = UNSET; 648 dev->tuner_type = UNSET;
@@ -676,10 +678,6 @@ void em28xx_card_setup(struct em28xx *dev)
676 if (tv.has_ir) 678 if (tv.has_ir)
677 request_module("ir-kbd-i2c"); 679 request_module("ir-kbd-i2c");
678#endif 680#endif
679 /* enable audio 12 mhz i2s */
680 em28xx_write_regs(dev, XCLK_REG, "\xa7", 1);
681 msleep(10);
682
683 break; 681 break;
684 } 682 }
685 case EM2820_BOARD_KWORLD_PVRTV2800RF: 683 case EM2820_BOARD_KWORLD_PVRTV2800RF: