I have a bttv compatible Hauppauge WinTV card which supports analog TV and analog FM radio. Up to the 2.6.30 kernels everything worked fine. With 2.6.31.6 TV still works fine, but radio does not. With the radio applications radio (from the xawtv package) gkrellm-radio and fm I can still "turn on" the radio but hear only white noise. In gkrellm-radio the frequency is fixed to 0.0, but I don't get an error message. radio (from the xawtv package) behaves optically as usual, but tuning the frequency has no effect. I also do not get an error message. The command "fm -d /dev/v4l/radio0 100.50" (which means tune the frequency to 100.50Mhz) leads to the following error message ioctl VIDIOCGTUNER: Invalid argument The bug occured on my gentoo linux with a (gentoo patched) 2.6.31 kernel and on the KNOPPIX_V6.2 live dvd that uses the 2.6.31.6 (maybe also with some patches). On my gentoo linux with a (gentoo patched) 2.6.30 kernel everything workes fine. For the kernels of my gentoo system, I selected bttv to be build as module and added "options tveeprom debug=1" to my /etc/modprobe.conf. The IMHO important parts of the dmesg are the following. With 2.6.31-gentoo-r6 kernel: Bt87x 0000:04:06.1: PCI INT A -> GSI 21 (level, low) -> IRQ 21 bt87x0: Using board 1, analog, digital (rate 32000 Hz) bttv: driver version 0.9.18 loaded bttv: using 8 buffers with 2080k (520 pages) each for capture bttv: Bt8xx card found (0). bttv 0000:04:06.0: PCI INT A -> GSI 21 (level, low) -> IRQ 21 bttv0: Bt878 (rev 17) at 0000:04:06.0, irq: 21, latency: 64, mmio: 0xfdfff000 bttv0: detected: Hauppauge WinTV [card=10], PCI subsystem ID is 0070:13eb bttv0: using: Hauppauge (bt878) [card=10,autodetected] IRQ 21/bttv0: IRQF_DISABLED is not guaranteed on shared IRQs bttv0: gpio: en=00000000, out=00000000 in=00ffffdb [init] bttv0: Hauppauge/Voodoo msp34xx: reset line init [5] tveeprom 0-0050: full 256-byte eeprom dump: tveeprom 0-0050: 00: 84 12 00 00 05 50 0e 7f 04 2a 23 42 ad 12 25 8d tveeprom 0-0050: 10: 00 00 00 00 05 84 0a 00 01 01 20 77 00 40 e0 8b tveeprom 0-0050: 20: 3b 00 74 02 01 86 02 79 fa 00 00 00 00 00 00 00 tveeprom 0-0050: 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 0-0050: 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 0-0050: 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 0-0050: 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 0-0050: 70: 00 00 00 00 00 00 00 00 00 00 00 00 13 eb 00 70 tveeprom 0-0050: 80: 84 12 00 00 05 50 0e 7f 04 2a 23 42 ad 12 25 8d tveeprom 0-0050: 90: 00 00 00 00 05 84 0a 00 01 01 20 77 00 40 e0 8b tveeprom 0-0050: a0: 3b 00 74 02 01 86 02 79 fa 00 00 00 00 00 00 00 tveeprom 0-0050: b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 0-0050: c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 0-0050: d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 0-0050: e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 0-0050: f0: 00 00 00 00 00 00 00 00 00 00 00 00 13 eb 00 70 tveeprom 0-0050: Tag [00] + 17 bytes: 05 50 0e 7f 04 2a 23 42 ad 12 25 8d 00 00 00 00 05 tveeprom 0-0050: Tag [01] + 9 bytes: 01 20 77 00 40 e0 8b 3b 00 tveeprom 0-0050: Tag [02] + 3 bytes: 01 86 02 tveeprom 0-0050: Hauppauge model 44354, rev C242, serial# 3902432 tveeprom 0-0050: tuner model is Temic 4009FR5 (idx 42, type 20) tveeprom 0-0050: TV standards PAL(B/G) (eeprom 0x04) tveeprom 0-0050: audio processor is MSP3415 (idx 6) tveeprom 0-0050: has radio bttv0: Hauppauge eeprom indicates model#44354 bttv0: tuner type=20 msp3400 0-0040: MSP3415G-B8 found @ 0x80 (bt878 #0 [sw]) msp3400 0-0040: msp3400 supports nicam and radio, mode is autodetect and autoselect tuner 0-0061: chip found @ 0xc2 (bt878 #0 [sw]) tuner-simple 0-0061: creating new instance tuner-simple 0-0061: type set to 20 (Temic PAL_BG (4009 FR5) or PAL_I (4069 FR5)) bttv0: registered device video0 bttv0: registered device vbi0 bttv0: registered device radio0 bttv0: PLL: 28636363 => 35468950 .. ok With 2.6.30-gentoo-r8 kernel: bttv: driver version 0.9.18 loaded bttv: using 8 buffers with 2080k (520 pages) each for capture bttv: Bt8xx card found (0). bttv 0000:04:06.0: PCI INT A -> GSI 21 (level, low) -> IRQ 21 bttv0: Bt878 (rev 17) at 0000:04:06.0, irq: 21, latency: 64, mmio: 0xfdfff000 bttv0: detected: Hauppauge WinTV [card=10], PCI subsystem ID is 0070:13eb bttv0: using: Hauppauge (bt878) [card=10,autodetected] IRQ 21/bttv0: IRQF_DISABLED is not guaranteed on shared IRQs bttv0: gpio: en=00000000, out=00000000 in=00ffffdb [init] bttv0: Hauppauge/Voodoo msp34xx: reset line init [5] tveeprom 1-0050: full 256-byte eeprom dump: tveeprom 1-0050: 00: 84 12 00 00 05 50 0e 7f 04 2a 23 42 ad 12 25 8d tveeprom 1-0050: 10: 00 00 00 00 05 84 0a 00 01 01 20 77 00 40 e0 8b tveeprom 1-0050: 20: 3b 00 74 02 01 86 02 79 fa 00 00 00 00 00 00 00 tveeprom 1-0050: 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 1-0050: 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 1-0050: 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 1-0050: 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 1-0050: 70: 00 00 00 00 00 00 00 00 00 00 00 00 13 eb 00 70 tveeprom 1-0050: 80: 84 12 00 00 05 50 0e 7f 04 2a 23 42 ad 12 25 8d tveeprom 1-0050: 90: 00 00 00 00 05 84 0a 00 01 01 20 77 00 40 e0 8b tveeprom 1-0050: a0: 3b 00 74 02 01 86 02 79 fa 00 00 00 00 00 00 00 tveeprom 1-0050: b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 1-0050: c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 1-0050: d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 1-0050: e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 tveeprom 1-0050: f0: 00 00 00 00 00 00 00 00 00 00 00 00 13 eb 00 70 tveeprom 1-0050: Tag [00] + 17 bytes: 05 50 0e 7f 04 2a 23 42 ad 12 25 8d 00 00 00 00 05 tveeprom 1-0050: Tag [01] + 9 bytes: 01 20 77 00 40 e0 8b 3b 00 tveeprom 1-0050: Tag [02] + 3 bytes: 01 86 02 tveeprom 1-0050: Hauppauge model 44354, rev C242, serial# 3902432 tveeprom 1-0050: tuner model is Temic 4009FR5 (idx 42, type 20) tveeprom 1-0050: TV standards PAL(B/G) (eeprom 0x04) tveeprom 1-0050: audio processor is MSP3415 (idx 6) tveeprom 1-0050: has radio bttv0: Hauppauge eeprom indicates model#44354 bttv0: tuner type=20 tuner 1-0061: chip found @ 0xc2 (bt878 #0 [sw]) tuner-simple 1-0061: creating new instance tuner-simple 1-0061: type set to 20 (Temic PAL_BG (4009 FR5) or PAL_I (4069 FR5)) msp3400 1-0040: MSP3415G-B8 found @ 0x80 (bt878 #0 [sw]) msp3400 1-0040: msp3400 supports nicam and radio, mode is autodetect and autoselect bttv0: registered device video0 bttv0: registered device vbi0 bttv0: registered device radio0 bttv0: PLL: 28636363 => 35468950 .. ok The difference seems to be that the first number after tveeprom, tuner and msp3400 are different. The problem may be related to bug numer 14551 http://bugzilla.kernel.org/show_bug.cgi?id=14551 You can see the complete output of dmesg, the kernel configuration, output of lsmod and ver_linux for the used kernels here: http://heizmann.name/bttvBugReport/GENTOO_2.6.31-gentoo-r6_config http://heizmann.name/bttvBugReport/GENTOO_2.6.31-gentoo-r6_dmesg http://heizmann.name/bttvBugReport/GENTOO_2.6.31-gentoo-r6_lsmod http://heizmann.name/bttvBugReport/GENTOO_2.6.31-gentoo-r6_ver_linux http://heizmann.name/bttvBugReport/KNOPPIX_2.6.31.6_config http://heizmann.name/bttvBugReport/KNOPPIX_2.6.31.6_dmesg http://heizmann.name/bttvBugReport/KNOPPIX_2.6.31.6_lsmod http://heizmann.name/bttvBugReport/KNOPPIX_2.6.31.6_ver_linux http://heizmann.name/bttvBugReport/GENTOO_2.6.30-gentoo-r8_config http://heizmann.name/bttvBugReport/GENTOO_2.6.30-gentoo-r8_dmesg http://heizmann.name/bttvBugReport/GENTOO_2.6.30-gentoo-r8_lsmod http://heizmann.name/bttvBugReport/GENTOO_2.6.30-gentoo-r8_ver_linux The output of lspci -v is the following. 04:06.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11) Subsystem: Hauppauge computer works Inc. WinTV Series Flags: bus master, medium devsel, latency 64, IRQ 21 Memory at fdfff000 (32-bit, prefetchable) [size=4K] Capabilities: [44] Vital Product Data <?> Capabilities: [4c] Power Management version 2 Kernel driver in use: bttv Kernel modules: bttv 04:06.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11) Subsystem: Hauppauge computer works Inc. WinTV Series Flags: bus master, medium devsel, latency 64, IRQ 21 Memory at fdffe000 (32-bit, prefetchable) [size=4K] Capabilities: [44] Vital Product Data <?> Capabilities: [4c] Power Management version 2 Kernel driver in use: Bt87x
Sorry, I just mentioned that the problem is not bttv specific and this bug is a duplicate of bug 14114. A patch is already available. *** This bug has been marked as a duplicate of bug 14114 ***