Description of problem: A Hauppauge PVR-500 will give video but no audio with a Hauppauge HVR-1800 also in the system if the kernel is 2.6.27.*. This problem exists in Fedora 9 with recent kernels (using kernel version 2.6.25.* there was no problem) and Fedora 10 always. I think it's the driver for the cx23885 chip is overriding the cx2341x driver or firmware based on my output below. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. boot a system with an HVR-1800 and PVR-500 and FC10 2. cat /dev/video2 > a.mpeg 3. watch a.mpeg in favorite video player Actual results: Videos without sound. Expected results: Videos with sound. Additional info: There are two workarounds I've found: remove the HVR-1800 (which causes one to lose the ability to watch DTV), or add "blacklist cx23885" to the end of /etc/modprobe.d/blacklist and then added "/sbin/modprobe cx23885" to /etc/rc.local (which doesn't seem to negatively impact functionality) I started a thread about this issue which can be read at http://www.gossamer-threads.com/lists/mythtv/users/366532 but I don't think I forgot to write anything here that I wrote there. Here is the relevant output of my dmesg with _ before the lines I thought looked like problems followed by dmesg from my system with the HVR-1800 removed cx23885 driver version 0.0.1 loaded cx23885 0000:02:00.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17 CORE cx23885[0]: subsystem: 0070:7801, board: Hauppauge WinTV-HVR1800 [card=2,autodetected] cx23885[0]: i2c bus 0 registered cx23885[0]: i2c bus 1 registered cx23885[0]: i2c bus 2 registered tveeprom 1-0050: Hauppauge model 78521, rev C1E9, serial# 4852744 tveeprom 1-0050: MAC address is 00-0D-FE-4A-0C-08 tveeprom 1-0050: tuner model is Philips 18271_8295 (idx 149, type 54) tveeprom 1-0050: TV standards NTSC(M) ATSC/DVB Digital (eeprom 0x88) tveeprom 1-0050: audio processor is CX23887 (idx 42) tveeprom 1-0050: decoder processor is CX23887 (idx 37) tveeprom 1-0050: has radio cx23885[0]: hauppauge eeprom: model=78521 ivtv: Start initialization, version 1.4.0 cx25840' 3-0044: cx25 0-21 found @ 0x88 (cx23885[0]) cx23885[0]/0: registered device video0 [v4l2] firmware: requesting v4l-cx23885-avcore-01.fw _cx25840' 3-0044: unable to open firmware v4l-cx23885-avcore-01.fw cx23885[0]: registered device video1 [mpeg] cx23885[0]: cx23885 based dvb card MT2131: successfully identified at address 0x61 DVB: registering new adapter (cx23885[0]) DVB: registering frontend 0 (Samsung S5H1409 QAM/8VSB Frontend)... cx23885_dev_checkrevision() Hardware revision = 0xb1 cx23885[0]/0: found at 0000:02:00.0, rev: 15, irq: 17, latency: 0, mmio: 0xfd800000 cx23885 0000:02:00.0: setting latency timer to 64 ivtv0: Initializing card #0 ivtv0: Autodetected Hauppauge card (cx23416 based) ivtv 0000:05:08.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20 tveeprom 4-0050: Hauppauge model 23552, rev D492, serial# 9554329 tveeprom 4-0050: tuner model is Philips FQ1236A MK4 (idx 92, type 57) tveeprom 4-0050: TV standards NTSC(M) (eeprom 0x08) tveeprom 4-0050: second tuner model is Philips TEA5768HL FM Radio (idx 101, type 62) tveeprom 4-0050: audio processor is CX25843 (idx 37) tveeprom 4-0050: decoder processor is CX25843 (idx 30) tveeprom 4-0050: has radio ivtv0: Autodetected WinTV PVR 500 (unit #1) tuner' 1-0061: chip found @ 0xc2 (cx23885[0]) tuner' 2-0042: chip found @ 0x84 (cx23885[0]) _tda829x 2-0042: could not clearly identify tuner address, defaulting to 60 tda18271 2-0060: creating new instance TDA18271HD/C1 detected @ 2-0060 tda829x 2-0042: type set to tda8295+18271 cx25840 4-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #0) tuner 4-0060: chip found @ 0xc0 (ivtv i2c driver #0) tea5767 4-0060: type set to Philips TEA5767HN FM Radio tuner 4-0043: chip found @ 0x86 (ivtv i2c driver #0) tda9887 4-0043: creating new instance tda9887 4-0043: tda988[5/6/7] found tuner 4-0061: chip found @ 0xc2 (ivtv i2c driver #0) wm8775 4-001b: chip found @ 0x36 (ivtv i2c driver #0) tuner-simple 4-0061: creating new instance tuner-simple 4-0061: type set to 57 (Philips FQ1236A MK4) ivtv0: Registered device video2 for encoder MPG (4096 kB) ivtv0: Registered device video32 for encoder YUV (2048 kB) ivtv0: Registered device vbi0 for encoder VBI (1024 kB) ivtv0: Registered device video24 for encoder PCM (320 kB) ivtv0: Registered device radio0 for encoder radio ivtv0: Initialized card #0: WinTV PVR 500 (unit #1) ivtv1: Initializing card #1 ivtv1: Autodetected Hauppauge card (cx23416 based) ivtv 0000:05:09.0: PCI INT A -> GSI 21 (level, low) -> IRQ 21 tveeprom 5-0050: Hauppauge model 23552, rev D492, serial# 9554329 tveeprom 5-0050: tuner model is Philips FQ1236A MK4 (idx 92, type 57) tveeprom 5-0050: TV standards NTSC(M) (eeprom 0x08) tveeprom 5-0050: second tuner model is Philips TEA5768HL FM Radio (idx 101, type 62) tveeprom 5-0050: audio processor is CX25843 (idx 37) tveeprom 5-0050: decoder processor is CX25843 (idx 30) tveeprom 5-0050: has radio ivtv1: Correcting tveeprom data: no radio present on second unit ivtv1: Autodetected WinTV PVR 500 (unit #2) cx25840 5-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #1) tuner 5-0043: chip found @ 0x86 (ivtv i2c driver #1) tda9887 5-0043: creating new instance tda9887 5-0043: tda988[5/6/7] found tuner 5-0061: chip found @ 0xc2 (ivtv i2c driver #1) wm8775 5-001b: chip found @ 0x36 (ivtv i2c driver #1) tuner-simple 5-0061: creating new instance tuner-simple 5-0061: type set to 57 (Philips FQ1236A MK4) ivtv1: Registered device video3 for encoder MPG (4096 kB) ivtv1: Registered device video33 for encoder YUV (2048 kB) ivtv1: Registered device vbi1 for encoder VBI (1024 kB) ivtv1: Registered device video25 for encoder PCM (320 kB) ivtv1: Initialized card #1: WinTV PVR 500 (unit #2) ivtv: End initialization device-mapper: multipath: version 1.0.5 loaded EXT3 FS on sdc3, internal journal Adding 2031608k swap on /dev/mapper/VolGroup00-LogVol01. Priority:-1 extents:1 across:2031608k powernow-k8: Found 1 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ processors (2 cpu cores) (version 2.20.00) powernow-k8: 0 : fid 0xc (2000 MHz), vid 0xe powernow-k8: 1 : fid 0xa (1800 MHz), vid 0x10 powernow-k8: 2 : fid 0x2 (1000 MHz), vid 0x12 NET: Registered protocol family 10 lo: Disabled Privacy Extensions ip6_tables: (C) 2000-2006 Netfilter Core Team Clocksource tsc unstable (delta = -85526117 ns) RPC: Registered udp transport module. RPC: Registered tcp transport module. firmware: requesting v4l-cx2341x-enc.fw ivtv0: Loaded v4l-cx2341x-enc.fw firmware (376836 bytes) ivtv0: Encoder revision: 0x02060039 firmware: requesting v4l-cx23885-avcore-01.fw _cx25840 4-0044: unable to open firmware v4l-cx23885-avcore-01.fw Bluetooth: Core ver 2.13 NET: Registered protocol family 31 Bluetooth: HCI device and connection manager initialized Bluetooth: HCI socket layer initialized Bluetooth: L2CAP ver 2.11 Bluetooth: L2CAP socket layer initialized Bluetooth: SCO (Voice Link) ver 0.6 Bluetooth: SCO socket layer initialized firmware: requesting v4l-cx2341x-enc.fw Bluetooth: BNEP (Ethernet Emulation) ver 1.3 Bluetooth: BNEP filters: protocol multicast ivtv1: Loaded v4l-cx2341x-enc.fw firmware (376836 bytes) Bridge firewalling registered pan0: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature. ivtv1: Encoder revision: 0x02060039 firmware: requesting v4l-cx23885-avcore-01.fw _cx25840 5-0044: unable to open firmware v4l-cx23885-avcore-01.fw ivtv: Start initialization, version 1.4.0 ivtv0: Initializing card #0 ivtv0: Autodetected Hauppauge card (cx23416 based) ivtv 0000:04:08.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20 tveeprom 1-0050: Hauppauge model 23552, rev D492, serial# 9554329 tveeprom 1-0050: tuner model is Philips FQ1236A MK4 (idx 92, type 57) tveeprom 1-0050: TV standards NTSC(M) (eeprom 0x08) tveeprom 1-0050: second tuner model is Philips TEA5768HL FM Radio (idx 101, type 62) tveeprom 1-0050: audio processor is CX25843 (idx 37) tveeprom 1-0050: decoder processor is CX25843 (idx 30) tveeprom 1-0050: has radio ivtv0: Autodetected WinTV PVR 500 (unit #1) HDA Intel 0000:00:14.2: PCI INT A -> GSI 16 (level, low) -> IRQ 16 cx25840 1-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #0) tuner 1-0060: chip found @ 0xc0 (ivtv i2c driver #0) tea5767 1-0060: type set to Philips TEA5767HN FM Radio tuner 1-0043: chip found @ 0x86 (ivtv i2c driver #0) tda9887 1-0043: creating new instance tda9887 1-0043: tda988[5/6/7] found tuner 1-0061: chip found @ 0xc2 (ivtv i2c driver #0) wm8775 1-001b: chip found @ 0x36 (ivtv i2c driver #0) tuner-simple 1-0061: creating new instance tuner-simple 1-0061: type set to 57 (Philips FQ1236A MK4) ivtv0: Registered device video0 for encoder MPG (4096 kB) ivtv0: Registered device video32 for encoder YUV (2048 kB) ivtv0: Registered device vbi0 for encoder VBI (1024 kB) ivtv0: Registered device video24 for encoder PCM (320 kB) ivtv0: Registered device radio0 for encoder radio ivtv0: Initialized card #0: WinTV PVR 500 (unit #1) ivtv1: Initializing card #1 ivtv1: Autodetected Hauppauge card (cx23416 based) ivtv 0000:04:09.0: PCI INT A -> GSI 21 (level, low) -> IRQ 21 tveeprom 2-0050: Hauppauge model 23552, rev D492, serial# 9554329 tveeprom 2-0050: tuner model is Philips FQ1236A MK4 (idx 92, type 57) tveeprom 2-0050: TV standards NTSC(M) (eeprom 0x08) tveeprom 2-0050: second tuner model is Philips TEA5768HL FM Radio (idx 101, type 62) tveeprom 2-0050: audio processor is CX25843 (idx 37) tveeprom 2-0050: decoder processor is CX25843 (idx 30) tveeprom 2-0050: has radio ivtv1: Correcting tveeprom data: no radio present on second unit ivtv1: Autodetected WinTV PVR 500 (unit #2) cx25840 2-0044: cx25843-23 found @ 0x88 (ivtv i2c driver #1) tuner 2-0043: chip found @ 0x86 (ivtv i2c driver #1) tda9887 2-0043: creating new instance tda9887 2-0043: tda988[5/6/7] found tuner 2-0061: chip found @ 0xc2 (ivtv i2c driver #1) wm8775 2-001b: chip found @ 0x36 (ivtv i2c driver #1) tuner-simple 2-0061: creating new instance tuner-simple 2-0061: type set to 57 (Philips FQ1236A MK4) ivtv1: Registered device video1 for encoder MPG (4096 kB) ivtv1: Registered device video33 for encoder YUV (2048 kB) ivtv1: Registered device vbi1 for encoder VBI (1024 kB) ivtv1: Registered device video25 for encoder PCM (320 kB) ivtv1: Initialized card #1: WinTV PVR 500 (unit #2) ivtv: End initialization device-mapper: multipath: version 1.0.5 loaded EXT3 FS on sdc3, internal journal Adding 2031608k swap on /dev/mapper/VolGroup00-LogVol01. Priority:-1 extents:1 across:2031608k powernow-k8: Found 1 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ processors (2 cpu cores) (version 2.20.00) powernow-k8: 0 : fid 0xc (2000 MHz), vid 0xe powernow-k8: 1 : fid 0xa (1800 MHz), vid 0x10 powernow-k8: 2 : fid 0x2 (1000 MHz), vid 0x12 NET: Registered protocol family 10 lo: Disabled Privacy Extensions ip6_tables: (C) 2000-2006 Netfilter Core Team Clocksource tsc unstable (delta = -209069468 ns) RPC: Registered udp transport module. RPC: Registered tcp transport module. firmware: requesting v4l-cx2341x-enc.fw ivtv0: Loaded v4l-cx2341x-enc.fw firmware (376836 bytes) ivtv0: Encoder revision: 0x02060039 firmware: requesting v4l-cx25840.fw Bluetooth: Core ver 2.13 NET: Registered protocol family 31 Bluetooth: HCI device and connection manager initialized Bluetooth: HCI socket layer initialized Bluetooth: L2CAP ver 2.11 Bluetooth: L2CAP socket layer initialized Bluetooth: SCO (Voice Link) ver 0.6 Bluetooth: SCO socket layer initialized Bluetooth: BNEP (Ethernet Emulation) ver 1.3 Bluetooth: BNEP filters: protocol multicast Bridge firewalling registered pan0: Dropping NETIF_F_UFO since no NETIF_F_HW_CSUM feature. r8169: eth0: link up r8169: eth0: link up cx25840 1-0044: loaded v4l-cx25840.fw firmware (16382 bytes) firmware: requesting v4l-cx2341x-enc.fw ivtv1: Loaded v4l-cx2341x-enc.fw firmware (376836 bytes) ivtv1: Encoder revision: 0x02060039 firmware: requesting v4l-cx25840.fw cx25840 2-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
Moving to the kernel bugzilla area, as the ivtv package doesn't carry the kernel modules anymore.
Ew. That's gross. Might need to get reported upstream on the linux-media list. I'll send something that direction in the morning.
In the morning, in three weeks, whatever. :\ Finally got a mail off to the linux-media mailing list, will see if anyone has any ideas...
From Hans Verkuil, upstream ivtv maintainer (among other things): Urgh. cx25840_loadfw() in cx25840_firmware.c contains this code: if (state->is_cx23885) firmware = FWFILE_CX23885; else if (state->is_cx231xx) firmware = FWFILE_CX231XX; Unfortunately firmware is a global string module option, initially setup to contain the 'normal' cx25840 firmware name. So loading a cx23885 or a cx231xx will overwrite that string and if ivtv is loaded afterwards it tries to load the wrong firmware. Sigh... I'll see if I have time to fix this today or tomorrow.
Steven Toth has posted a patch that ought to fix this. Relatively simple fix (2-line addition to cx25840_firmware.c), I've added to the F10 and F11 kernel cvs trees. Not built yet though.
And now Hans has a slightly more involved, more complete fix. I'll put this version onto 2.6.30.x for F11 and rawhide later tonight.
This message is a reminder that Fedora 10 is nearing its end of life. Approximately 30 (thirty) days from now Fedora will stop maintaining and issuing updates for Fedora 10. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as WONTFIX if it remains open with a Fedora 'version' of '10'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version prior to Fedora 10's end of life. Bug Reporter: Thank you for reporting this issue and we are sorry that we may not be able to fix it before Fedora 10 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora please change the 'version' of this bug to the applicable version. If you are unable to change the version, please add a comment here and someone will do it for you. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete. The process we are following is described here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Thanks Jarod, Now I'm using kernel 2.6.30.9-96.fc11.x86_64. I just undid my work around, and I'm still getting sound. Looks like the more involved complete fix worked fine. -Scott