无法在 Ubuntu 22.04 LTS 下运行 WinTV-HVR-5525

无法在 Ubuntu 22.04 LTS 下运行 WinTV-HVR-5525

我刚刚为正在构建的媒体 PC 买了一个 WinTV-HVR-5525。但出于某种原因,我似乎无法让该卡在 Ubuntu 22.04 LTS 下工作。我按照 [此处][1] 的说明操作,可以让 DVB-T 和 DVB-C 调谐器工作。但是,该卡还带有卫星调谐器,无论如何我似乎都无法使其工作。我在 /lib/firmware 下安装了固件文件,但不知何故调谐器无法被识别。事实上,甚至连卡本身也无法被识别,直到我在 /etc/modeprobe.d 下创建了一个 .conf 文件,告诉系统它正在使用什么卡:
options cx23885 card=52

因为否则什么都不会发生,在 dmesg 下它只会说

未知 hauppauge 模型 #150339

现在 dmesg 的输出如下所示(删除任何不重要的内容):

[    5.478658] tveeprom: Hauppauge model 150339, rev C6I6, serial# 40########
[    5.478665] tveeprom: MAC address is 00:##:##:##:##:##
[    5.478667] tveeprom: tuner model is SiLabs Si2157 (idx 186, type 4)
[    5.478668] tveeprom: TV standards PAL(B/G) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xf4)
[    5.478670] tveeprom: audio processor is CX23888 (idx 40)
[    5.478671] tveeprom: decoder processor is CX23888 (idx 34)
[    5.478672] tveeprom: has radio, has IR receiver, has no IR transmitter
[    5.478673] cx23885: cx23885[0]: warning: unknown hauppauge model #150339
[    5.478675] cx23885: cx23885[0]: hauppauge eeprom: model=150339

[    5.644995] cx25840 9-0044: cx23888 A/V decoder found @ 0x88 (cx23885[0])
[    6.695716] cx25840 9-0044: loaded v4l-cx23885-avcore-01.fw firmware (16382 bytes)

[    7.443658] cx23885: cx23885[0]: registered device video0 [v4l2]
[    7.446938] cx23885: cx23885[0]: registered device vbi0
[    7.450921] cx23885: cx23885[0]: alsa: registered ALSA audio device
[    7.450925] cx23885: cx23885_dvb_register() allocating 1 frontend(s)
[    7.450928] cx23885: cx23885[0]: cx23885 based dvb card
[    7.451504] m88ds3103 7-0069: Unknown device. Chip_id=71
[    7.451796] cx23885: cx23885[0]: frontend initialization failed
[    7.452061] cx23885: cx23885_dvb_register() dvb_register failed err = -22
[    7.452327] cx23885: cx23885_dev_setup() Failed to register dvb adapters on VID_B
[    7.452595] cx23885: cx23885_dvb_register() allocating 1 frontend(s)
[    7.452598] cx23885: cx23885[0]: cx23885 based dvb card
[    7.502717] i2c i2c-7: Added multiplexed i2c bus 10
[    7.502724] si2168 7-0064: Silicon Labs Si2168-D60 successfully identified
[    7.502727] si2168 7-0064: firmware version: D 6.0.1
[    7.518854] si2157 8-0060: Silicon Labs Si2157 successfully attached
[    7.518995] dvbdev: DVB: registering new adapter (cx23885[0])
[    7.518999] cx23885 0000:04:00.0: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)...
[    7.527300] cx23885: cx23885_dev_checkrevision() Hardware revision = 0xd0
[    7.527310] cx23885: cx23885[0]/0: found at 0000:04:00.0, rev: 4, irq: 17, latency: 0, mmio: 0xf7200000
[    7.974954] loop16: detected capacity change from 0 to 8

[   12.818647] si2168 7-0064: downloading firmware from file 'dvb-demod-si2168-d60-01.fw'
[   13.152287] si2168 7-0064: firmware version: D 6.0.2
[   13.155300] cx23885 0000:04:00.0: DVB: adapter 0 frontend 0 frequency 0 out of range (48000000..870000000)
[   13.164024] si2168 7-0064: downloading firmware from file 'dvb-demod-si2168-d60-01.fw'
[   13.498660] si2168 7-0064: firmware version: D 6.0.2

对我来说有趣的是它似乎使用了错误的驱动程序?;

[7.451504] m88ds3103 7-0069: 未知设备。Chip_id=71

根据我能找到的所有来源,它实际上应该是 M88RS6000 调谐器,而不是 M88DS3103。我从其他人那里找到了正确的模块加载的输出:

cx23885: cx23885_dvb_register() allocating 1 frontend(s)
cx23885: cx23885[0]: cx23885 based dvb card
a8293 10-000b: Allegro A8293 SEC successfully attached
m88rs6000t 13-0021: Montage M88RS6000 internal tuner successfully identified
dvbdev: DVB: registering new adapter (cx23885[0])
cx23885 0000:02:00.0: DVB: registering adapter 0 frontend 0 (Montage Technology M88RS6000)...
cx23885: cx23885_dev_checkrevision() Hardware revision = 0xd0 

所以它似乎无法被正确识别?有人知道如何解决这个问题吗?我也需要卫星功能,所以我现在有点不知所措。任何帮助都将不胜感激!

答案1

由于我使用同一张卡时也遇到了同样的问题(我的是修订版 C5I6),因此我也对解决方案感兴趣。到目前为止,我发现该卡有多个修订版,将 eeprom 型号从 150329 更改为 150339。由于 cx23885 中未找到此新型号 ID,因此无法进行自动检测,您需要 modeprobe.d 文件。此外,cx23885 中的子系统从 0070:f038 变为 0070:f039 遗憾的是,m88ds3103 的芯片 ID 似乎也从 64 更改为 71,这可能是 m88rs6000t 未加载的原因。在 linuxtv.org 的此卡摘录中,您可以看到旧值:


[   14.471581] CORE cx23885[0]: subsystem: 0070:f038, board: Hauppauge WinTV-HVR5525 [card=52,autodetected]
[   14.803585] tveeprom 3-0050: Hauppauge model 150329, rev C3I6, serial# 4035814105
[   14.803589] tveeprom 3-0050: MAC address is 00:0d:fe:8d:a2:d9
[   14.803592] tveeprom 3-0050: tuner model is SiLabs Si2157 (idx 186, type 4)
[   14.803594] tveeprom 3-0050: TV standards PAL(B/G) PAL(I) SECAM(L/L') PAL(D/D1/K) ATSC/DVB Digital (eeprom 0xf4)
[   14.803596] tveeprom 3-0050: audio processor is CX23888 (idx 40)
[   14.803598] tveeprom 3-0050: decoder processor is CX23888 (idx 34)
[   14.803600] tveeprom 3-0050: has radio, has IR receiver, has no IR transmitter
[   14.803601] cx23885[0]: hauppauge eeprom: model=150329
[   14.803604] cx23885_dvb_register() allocating 1 frontend(s)
[   14.803606] cx23885[0]: cx23885 based dvb card
[   14.807030] i2c i2c-3: Added multiplexed i2c bus 6
[   14.872564] a8293 3-000b: Allegro A8293 SEC successfully attached
[   15.014407] m88rs6000t 6-0021: chip_id=64
[   15.086092] m88rs6000t 6-0021: Montage M88RS6000 internal tuner successfully identified
[   15.086105] DVB: registering new adapter (cx23885[0])
[   15.086110] cx23885 0000:03:00.0: DVB: registering adapter 0 frontend 0 (Montage Technology M88RS6000)...

为了使此卡的卫星部分正常工作,我猜测 cx23885 和/或 m88ds3103 需要使用当前型号 ID (150339) 和子系统 (0070:f039) 以及此 WinTV-HVR-5525 修订版的 Chip_id (71) 进行更新。如果有人知道可以将这些值转发给谁,以便更新这些内核文件,请告诉我们。Hauppauge 还更新了他们的 WIN 软件,以使这些修订版正常工作,您可以在更改日志 WinTV v10.0.41115 中看到 https://www.hauppauge.com/pages/support/wintv10_release_notes.html

相关内容