Most recent kernel where this bug did not occur: 2.6.13 (git) Distribution: Gentoo Hardware Environment: athlon64 3000+ gentoo x86_64 512mb Ram Software Environment: Problem Description: I hava a hauppage video card that runs fine under linux. When I load bttv, I have to pass audiomux=1 in order to make sound work. This worked up to 2.6.11. On 2.6.12 and later, I get video, but no sound dmesg output looks like this (upon loading modules): Linux video capture interface: v1.00 bttv: driver version 0.9.15 loaded bttv: using 8 buffers with 2080k (520 pages) each for capture bttv: Bt8xx card found (0). ACPI: PCI interrupt 0000:00:09.0[A] -> GSI 16 (level, low) -> IRQ 16 bttv0: Bt878 (rev 2) at 0000:00:09.0, irq: 16, latency: 64, mmio: 0xfab00000 bttv0: detected: Hauppauge WinTV [card=10], PCI subsystem ID is 0070:13eb bttv0: using: Hauppauge (bt878) [card=10,autodetected] bttv0: gpio config override: mask=0xffffffff, mux=0x1,0xffffffff,0xffffffff,0xffffffff,0xffffffff bttv0: gpio: en=00000000, out=00000000 in=00ffffdb [init] bttv0: Hauppauge/Voodoo msp34xx: reset line init [5] tuner: chip found at addr 0xc2 i2c-bus bt878 #0 [sw] tveeprom: Hauppauge: model = 61344, rev = D221, serial# = 3755413 tveeprom: tuner = Philips FM1216 (idx = 21, type = 5) tveeprom: tuner fmt = PAL(B/G) (eeprom = 0x04, v4l2 = 0x00000007) tveeprom: audio_processor = MSP3415 (type = 6) bttv0: using tuner=5 tuner: type set to 5 (Philips PAL_BG (FI1216 and compatibles)) by bt878 #0 [sw] bttv0: i2c: checking for MSP34xx @ 0x80... found bttv0: i2c: checking for TDA9875 @ 0xb0... not found bttv0: i2c: checking for TDA7432 @ 0x8a... not found bttv0: i2c: checking for TDA9887 @ 0x86... not found bttv0: registered device video0 bttv0: registered device vbi0 bttv0: registered device radio0 bttv0: PLL: 28636363 => 35468950 .. ok On 2.6.13: Aug 30 21:45:40 [kernel] bttv: driver version 0.9.16 loaded Aug 30 21:45:40 [kernel] bttv: using 8 buffers with 2080k (520 pages) each for capture Aug 30 21:45:40 [kernel] bttv: Bt8xx card found (0). Aug 30 21:45:40 [kernel] ACPI: PCI Interrupt 0000:00:09.0[A] -> GSI 16 (level, low) -> IRQ 21 Aug 30 21:45:40 [kernel] bttv0: Bt878 (rev 2) at 0000:00:09.0, irq: 21, latency: 64, mmio: 0xfab00000 Aug 30 21:45:40 [kernel] bttv0: detected: Hauppauge WinTV [card=10], PCI subsystem ID is 0070:13eb Aug 30 21:45:40 [kernel] bttv0: using: Hauppauge (bt878) [card=10,autodetected] Aug 30 21:45:40 [kernel] bttv0: gpio config override: mask=0xffffffff, mux=0x1,0xffffffff,0xffffffff,0xffffffff,0xffffffff Aug 30 21:45:40 [kernel] bttv0: gpio: en=00000000, out=00000000 in=00ffffdb [init] Aug 30 21:45:40 [kernel] bttv0: Hauppauge/Voodoo msp34xx: reset line init [5] Aug 30 21:45:40 [kernel] : chip found @ 0xc2 (bt878 #0 [sw]) Aug 30 21:45:40 [kernel] tveeprom: Hauppauge: model = 61344, rev = D221, serial# = 3755413 Aug 30 21:45:40 [kernel] tveeprom: tuner = Philips FM1216 (idx = 21, type = 5) Aug 30 21:45:40 [kernel] tveeprom: tuner fmt = PAL(B/G) (eeprom = 0x04, v4l2 = 0x00000007) Aug 30 21:45:40 [kernel] tveeprom: audio_processor = MSP3415 (type = 6) Aug 30 21:45:40 [kernel] bttv0: using tuner=5 Aug 30 21:45:40 [kernel] tuner 1-0061: type set to 5 (Philips PAL_BG (FI1216 and compatibles)) Aug 30 21:45:40 [kernel] bttv0: registered device video0 Aug 30 21:45:40 [kernel] bttv0: registered device vbi0 Aug 30 21:45:40 [kernel] bttv0: registered device radio0 If you need more info, let me know
msp3400 has three different modes of working. There's an autodetection code inside, based on revision number of the chip. Maybe it is using the wrong mode on your card. Please use two insmod options to msp3400 module: debug=1 opmode=0 You should try also with opmode=1 and opmode=2.
I'm trying right now With opmode=2, I get a lot of output, tons of: msp3400: chip reset failed msp34xxg: status=0xffffffff, stereo=64, bilingual=256 -> rxsubchans=14 msp34xx: VIDIOCGAUDIO msp34xx: I/O error #1 (read 0x10/0x200) msp34xx: I/O error #2 (read 0x10/0x200) msp34xx: I/O error #3 (read 0x10/0x200) msp34xx: giving up, reseting chip. Sound will go off, sorry folks :-| msp3400: chip reset failed msp34xxg: status=0xffffffff, stereo=64, bilingual=256 -> rxsubchans=14 msp34xx: VIDIOCGAUDIO msp34xx: I/O error #1 (read 0x10/0x200) msp34xx: I/O error #2 (read 0x10/0x200) msp34xx: I/O error #3 (read 0x10/0x200) msp34xx: giving up, reseting chip. Sound will go off, sorry folks :-| msp3400: chip reset failed I loaded the modules in that order: modprobe tuner modprobe msp3400 debug=1 opmode=2 modprobe bttv (with and without audiomux=1) dmesg output upon loading: bttv0: Hauppauge/Voodoo msp34xx: reset line init [5] : chip found @ 0xc2 (bt878 #0 [sw]) msp34xx: setvolume: mute=on 58880:32768 v=0x00 b=0x00 msp34xx: init: chip=MSP3415D-B3 +nicam +simple mode=simpler msp34xx: setvolume: mute=on 0:0 v=0x00 b=0x00 msp34xxg: daemon started msp34xxg: thread: restart scan msp34xxg: set source to 1 (0x120) msp34xxg: triggered autodetect, waiting for result tveeprom: Hauppauge: model = 61344, rev = D221, serial# = 3755413 tveeprom: tuner = Philips FM1216 (idx = 21, type = 5) tveeprom: tuner fmt = PAL(B/G) (eeprom = 0x04, v4l2 = 0x00000007) tveeprom: audio_processor = MSP3415 (type = 6) bttv0: using tuner=5 tuner 1-0061: type set to 5 (Philips PAL_BG (FI1216 and compatibles)) bttv0: i2c: checking for MSP34xx @ 0x80... found bttv0: i2c: checking for TDA9875 @ 0xb0... not found bttv0: i2c: checking for TDA7432 @ 0x8a... not found bttv0: i2c: checking for TDA9887 @ 0x86... not found msp34xxg: detection still in progress bttv0: registered device video0 bttv0: registered device vbi0 bttv0: registered device radio0 msp34xx: AUDC_SET_INPUT(4) msp34xx: setvolume: mute=on 0:0 v=0x00 b=0x00 msp34xxg: thread: restart scan msp34xxg: set source to 1 (0x120) msp34xxg: triggered autodetect, waiting for result msp34xx: AUDC_SET_INPUT(4) bttv0: PLL: 28636363 => 35468950 . ok msp34xx: VIDIOCSCHAN (norm=0) msp34xx: setvolume: mute=on 0:0 v=0x00 b=0x00 msp34xxg: thread: restart scan msp34xxg: set source to 1 (0x120) msp34xxg: triggered autodetect, waiting for result msp34xxg: detection still in progress msp34xxg: detection still in progress msp34xxg: current mode: ERROR (0x0000) msp34xxg: unmute msp34xx: setbass: 32768 0x00 msp34xx: settreble: 32768 0x00 msp34xx: setvolume: mute=on 58880:32768 v=0x00 b=0x00 msp34xx: VIDIOCSCHAN (norm=0) msp34xx: setvolume: mute=on 0:0 v=0x00 b=0x00 msp34xxg: thread: restart scan msp34xxg: set source to 1 (0x120) msp34xxg: triggered autodetect, waiting for result msp34xx: AUDC_SET_INPUT(4) msp34xx: VIDIOCSCHAN (norm=0) msp34xx: setvolume: mute=on 0:0 v=0x00 b=0x00 msp34xxg: thread: restart scan msp34xxg: set source to 1 (0x120) msp34xxg: triggered autodetect, waiting for result msp34xx: VIDIOCSCHAN (norm=0) msp34xx: setvolume: mute=on 0:0 v=0x00 b=0x00 msp34xxg: thread: restart scan msp34xxg: set source to 1 (0x120) msp34xxg: triggered autodetect, waiting for result msp34xx: VIDIOCGAUDIO msp34xx: I/O error #1 (read 0x10/0x200) msp34xx: I/O error #2 (read 0x10/0x200) msp34xx: I/O error #3 (read 0x10/0x200)
Ok... sound works when I explicitelly load the msp3400 module - without any arguments at all. dmesg: bttv: driver version 0.9.16 loaded bttv: using 8 buffers with 2080k (520 pages) each for capture bttv: Bt8xx card found (0). ACPI: PCI Interrupt 0000:00:09.0[A] -> GSI 16 (level, low) -> IRQ 21 bttv0: Bt878 (rev 2) at 0000:00:09.0, irq: 21, latency: 64, mmio: 0xfab00000 bttv0: detected: Hauppauge WinTV [card=10], PCI subsystem ID is 0070:13eb bttv0: using: Hauppauge (bt878) [card=10,autodetected] bttv0: gpio: en=00000000, out=00000000 in=00ffffdb [init] bttv0: Hauppauge/Voodoo msp34xx: reset line init [5] : chip found @ 0xc2 (bt878 #0 [sw]) msp34xx: init: chip=MSP3415D-B3 +nicam +simple mode=simple msp3410: daemon started tveeprom: Hauppauge: model = 61344, rev = D221, serial# = 3755413 tveeprom: tuner = Philips FM1216 (idx = 21, type = 5) tveeprom: tuner fmt = PAL(B/G) (eeprom = 0x04, v4l2 = 0x00000007) tveeprom: audio_processor = MSP3415 (type = 6) bttv0: using tuner=5 tuner 1-0061: type set to 5 (Philips PAL_BG (FI1216 and compatibles)) bttv0: i2c: checking for MSP34xx @ 0x80... found bttv0: i2c: checking for TDA9875 @ 0xb0... not found bttv0: i2c: checking for TDA7432 @ 0x8a... not found bttv0: i2c: checking for TDA9887 @ 0x86... not found bttv0: registered device video0 bttv0: registered device vbi0 bttv0: registered device radio0 bttv0: PLL: 28636363 => 35468950 . ok i2c_adapter i2c-1: sendbytes: error - bailout. msp34xx: I/O error #1 (read 0x12/0x18) Despite this error, it works. However, before, I had to pass audiomux=1 to bttv for sound, but I didn't have to load the msp3400 module at all
Try again without loading msp3400 and without audiomux=1. bttv is capable of autoloading msp3400 module. Mauro.
Doesn't work here :-/ When I don't load the msp module, I hear cracking sound when switching channels, but nothing otherwise. When I load the module (msp3400), I hear the cracking too (doesn't happen with 2.6.11 oddly), but sound is there too