diff options
Diffstat (limited to 'drivers/media/video/em28xx/em28xx-cards.c')
-rw-r--r-- | drivers/media/video/em28xx/em28xx-cards.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c index 49107fd0c0d3..57779e63f35d 100644 --- a/drivers/media/video/em28xx/em28xx-cards.c +++ b/drivers/media/video/em28xx/em28xx-cards.c | |||
@@ -128,7 +128,7 @@ struct em28xx_board em28xx_boards[] = { | |||
128 | .input = {{ | 128 | .input = {{ |
129 | .type = EM28XX_VMUX_TELEVISION, | 129 | .type = EM28XX_VMUX_TELEVISION, |
130 | .vmux = 0, | 130 | .vmux = 0, |
131 | .amux = 0, | 131 | .amux = 6, |
132 | },{ | 132 | },{ |
133 | .type = EM28XX_VMUX_SVIDEO, | 133 | .type = EM28XX_VMUX_SVIDEO, |
134 | .vmux = 2, | 134 | .vmux = 2, |
@@ -261,9 +261,11 @@ void em28xx_card_setup(struct em28xx *dev) | |||
261 | /* request some modules */ | 261 | /* request some modules */ |
262 | if (dev->model == EM2820_BOARD_HAUPPAUGE_WINTV_USB_2) { | 262 | if (dev->model == EM2820_BOARD_HAUPPAUGE_WINTV_USB_2) { |
263 | struct tveeprom tv; | 263 | struct tveeprom tv; |
264 | struct v4l2_audioout ao; | ||
264 | #ifdef CONFIG_MODULES | 265 | #ifdef CONFIG_MODULES |
265 | request_module("tveeprom"); | 266 | request_module("tveeprom"); |
266 | request_module("ir-kbd-i2c"); | 267 | request_module("ir-kbd-i2c"); |
268 | request_module("msp3400"); | ||
267 | #endif | 269 | #endif |
268 | /* Call first TVeeprom */ | 270 | /* Call first TVeeprom */ |
269 | 271 | ||
@@ -273,10 +275,13 @@ void em28xx_card_setup(struct em28xx *dev) | |||
273 | dev->tuner_type= tv.tuner_type; | 275 | dev->tuner_type= tv.tuner_type; |
274 | if (tv.audio_processor == AUDIO_CHIP_MSP34XX) { | 276 | if (tv.audio_processor == AUDIO_CHIP_MSP34XX) { |
275 | dev->has_msp34xx=1; | 277 | dev->has_msp34xx=1; |
276 | } else dev->has_msp34xx=0; | 278 | memset (&ao,0,sizeof(ao)); |
277 | em28xx_write_regs_req(dev,0x06,0x00,"\x40",1);// Serial Bus Frequency Select Register | 279 | |
278 | em28xx_write_regs_req(dev,0x0f,0x00,"\x87",1);// XCLK Frequency Select Register | 280 | ao.index=2; |
279 | em28xx_write_regs_req(dev,0x88,0x0d,"\xd0",1); | 281 | ao.mode=V4L2_AUDMODE_32BITS; |
282 | em28xx_i2c_call_clients(dev, VIDIOC_S_AUDOUT, &ao); | ||
283 | } else | ||
284 | dev->has_msp34xx=0; | ||
280 | } | 285 | } |
281 | } | 286 | } |
282 | 287 | ||