b-rad-NDi / Ubuntu-media-tree-kernel-builder

Slip stream the latest LinuxTV.org media drivers into an installable Ubuntu kernel package
98 stars 9 forks source link

New Hauppauge WinTV quadHD PCI express, only 2 or 3 adapters (tuners/frontends) found #173

Open tzimmo opened 1 week ago

tzimmo commented 1 week ago

I have 2 "old" Hauppauge WInTV quadHD PCI express that are working great. (bought about a year ago)

However, I bought 2 more of seemingly very same (cannot tell the difference), however, found only 2 adapters on both cards. I tried with Debian 12 and actually, for some reason, managed one system + one of the cards to find 3 tuners after a while (I don't think if I changed something) but the other one has found only 2 so far.

When I replace the identical looking "old" adapter with a new one in the same working system, only 2 are found. Changing back to the "old" adapters, all 4 are found again. So there seems to be some kind of difference between "old" and "new" cards, but what is it?

I have used multiple kernel versions, for example shipped with Debian 12, like 6.1.0-26-amd64, also 6.1.0-25-amd64 with TBS drivers (currently running and finds 3 adapters of "1st new" quadHD card. As Hauppauge officially supports only Ubuntu, I installed Ubuntu 24.04.1 in another machine ("2nd new" quadHD card) but it only found 2, even after following the instructions to fetch mediatree via ppa.

Then I even installed Windows and it was able to find all 4 tuners. At least I was able (after fighting hard with the buggy WinTV application that was mostly just crashing) save 4 channels at the time all from different multiplexes at different frequencies successfully, so the adapter hardware seems to be ok...

I also downloaded the latest kernel from kernel.org (linux-6.11.5.tar.xz) and build it but only 2 adapters found. I added some debugging in it but have not so far figured out why it finds 4x si2168 but fails to find 2x si2157:

grep si /sys/bus/i2c/devices/*/name

/sys/bus/i2c/devices/11-0067/name:si2168 /sys/bus/i2c/devices/12-0060/name:si2157 /sys/bus/i2c/devices/13-0063/name:si2157 /sys/bus/i2c/devices/5-0064/name:si2168 /sys/bus/i2c/devices/7-0067/name:si2168 /sys/bus/i2c/devices/9-0064/name:si2168

lsusb

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 8087:8008 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 002: ID 8087:8000 Intel Corp. Integrated Rate Matching Hub Bus 002 Device 003: ID 067b:2517 Prolific Technology, Inc. Flash Disk Mass Storage Device Bus 002 Device 004: ID 413c:2005 Dell Computer Corp. RT7D50 Keyboard Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 002: ID 2040:8265 Hauppauge dualHD Bus 005 Device 003: ID 2040:8265 Hauppauge dualHD Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

ls -la /dev/dvb/adapter/

crw-rw---- 1 root video 212, 1 marras 13 22:07 /dev/dvb/adapter0/demux0 crw-rw---- 1 root video 212, 2 marras 13 22:07 /dev/dvb/adapter0/dvr0 crw-rw---- 1 root video 212, 0 marras 13 22:07 /dev/dvb/adapter0/frontend0 crw-rw---- 1 root video 212, 3 marras 13 22:07 /dev/dvb/adapter0/net0 crw-rw---- 1 root video 212, 5 marras 13 22:07 /dev/dvb/adapter1/demux0 crw-rw---- 1 root video 212, 6 marras 13 22:07 /dev/dvb/adapter1/dvr0 crw-rw---- 1 root video 212, 4 marras 13 22:07 /dev/dvb/adapter1/frontend0 crw-rw---- 1 root video 212, 7 marras 13 22:07 /dev/dvb/adapter1/net0

dmesg | grep -i 'dvb|si2168'

[ 8.678292] em28xx 5-1:1.0: DVB interface 0 found: bulk [ 9.930499] em28xx 5-1:1.0: Identified as Hauppauge WinTV-dualHD DVB (card=99) [ 9.931754] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) [ 9.931764] em28xx 5-1:1.0: dvb set to bulk mode. [ 11.177489] em28xx 5-1:1.0: Identified as Hauppauge WinTV-dualHD DVB (card=99) [ 11.178832] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) [ 11.178836] em28xx 5-1:1.0: dvb ts2 set to bulk mode. [ 11.379121] em28xx 5-2:1.0: DVB interface 0 found: bulk [ 12.627513] em28xx 5-2:1.0: Identified as Hauppauge WinTV-dualHD DVB (card=99) [ 12.629203] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) [ 12.629232] em28xx 5-2:1.0: dvb set to bulk mode. [ 13.882521] em28xx 5-2:1.0: Identified as Hauppauge WinTV-dualHD DVB (card=99) [ 13.884509] tveeprom: TV standards PAL(B/G) NTSC(M) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xfc) [ 13.884516] em28xx 5-2:1.0: dvb ts2 set to bulk mode. [ 14.176901] em28xx 5-1:1.0: Binding DVB extension [ 14.739440] si2168 5-0064: Silicon Labs Si2168-B40 successfully identified [ 14.739445] si2168 5-0064: firmware version: B 4.0.2 [ 14.789085] dvbdev: DVB: registering new adapter (5-1:1.0) [ 14.789091] em28xx 5-1:1.0: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)... [ 14.789100] dvbdev: dvb_create_media_entity: media entity 'Silicon Labs Si2168' registered. [ 14.789708] dvbdev: dvb_create_media_entity: media entity 'dvb-demux' registered. [ 14.793700] em28xx 5-1:1.0: DVB extension successfully initialized [ 14.793706] em28xx 5-1:1.0: Binding DVB extension [ 14.800371] si2168 7-0067: Silicon Labs Si2168-B40 successfully identified [ 14.800375] si2168 7-0067: firmware version: B 4.0.2 [ 14.802515] dvbdev: DVB: registering new adapter (5-1:1.0) [ 14.802519] em28xx 5-1:1.0: DVB: registering adapter 1 frontend 0 (Silicon Labs Si2168)... [ 14.802525] dvbdev: dvb_create_media_entity: media entity 'Silicon Labs Si2168' registered. [ 14.802846] dvbdev: dvb_create_media_entity: media entity 'dvb-demux' registered. [ 14.806343] em28xx 5-1:1.0: DVB extension successfully initialized [ 14.806348] em28xx 5-2:1.0: Binding DVB extension [ 14.808436] si2168 9-0064: probe failed = -6 [ 14.808597] em28xx 5-2:1.0: Binding DVB extension [ 14.810487] si2168 11-0067: probe failed = -6 [ 14.810742] em28xx: Registered (Em28xx dvb Extension) extension [ 15.243755] rc rc0: Hauppauge WinTV-dualHD DVB as /devices/pci0000:00/0000:00:1c.2/0000:05:00.0/usb5/5-1/5-1:1.0/rc/rc0 [ 15.243903] input: Hauppauge WinTV-dualHD DVB as /devices/pci0000:00/0000:00:1c.2/0000:05:00.0/usb5/5-1/5-1:1.0/rc/rc0/input7 [ 15.244354] rc rc1: Hauppauge WinTV-dualHD DVB as /devices/pci0000:00/0000:00:1c.2/0000:05:00.0/usb5/5-2/5-2:1.0/rc/rc1 [ 15.244467] input: Hauppauge WinTV-dualHD DVB as /devices/pci0000:00/0000:00:1c.2/0000:05:00.0/usb5/5-2/5-2:1.0/rc/rc1/input8

I took the latest official kernel and added some debugging there in the driver (this is from Debian 12 side but the same hardware):

[ 10.514411] em28xx 5-1:1.0: DVB extension successfully initialized [ 10.514414] em28xx 5-2:1.0: Binding DVB extension [ 10.516085] [936] si2168:si2168_probe:705: si2168 9-0064: [ 10.516087] [936] si2168:si2168_cmd_execute:32: si2168 9-0064: i2c_master_send(len 13) [ 10.516088] [936] si2168:si2168_cmd_execute:34: si2168 9-0064: cmd->args[0..12] 0xc012000c 000d1600 00000000 00 [ 10.516218] [936] si2168:si2168_cmd_execute:49: si2168 9-0064: i2c_master_send() returned -6 [ 10.516220] [936] si2168:si2168_cmd_execute:102: si2168 9-0064: failed=-6 [ 10.516221] si2168 9-0064: probe failed = -6 [ 10.516363] em28xx 5-2:1.0: Binding DVB extension [ 10.517827] [936] si2168:si2168_probe:705: si2168 11-0067: [ 10.517828] [936] si2168:si2168_cmd_execute:32: si2168 11-0067: i2c_master_send(len 13) [ 10.517829] [936] si2168:si2168_cmd_execute:34: si2168 11-0067: cmd->args[0..12] 0xc012000c 000d1600 00000000 00 [ 10.517965] [936] si2168:si2168_cmd_execute:49: si2168 11-0067: i2c_master_send() returned -6 [ 10.517966] [936] si2168:si2168_cmd_execute:102: si2168 11-0067: failed=-6 [ 10.517967] si2168 11-0067: probe failed = -6 [ 10.518093] em28xx: Registered (Em28xx dvb Extension) extension

And all this happens before any firmware gets loaded (I think?) so this cannot be a firmware issue, right? As those firmware loading messages only appear after actually starting to use the adapter device.

Anyone else having similar issues? Anything I could try or fix?

tzimmo commented 1 day ago

@b-rad-NDi Any idea what is wrong / how to fix?