DVB-T PCI cards not working since 23.04 upgrade

Before an upgrade to Ubuntu 23.04 I had two PCI DVB-T cards that worked perfectly.

After the upgrade, there is no /dev/dvb directory, no DVB modules are loaded, and dmesg does not even mention the presence of the cards.

The correct firmware files have been been copied into /lib/firmware/ – but even if they hadn’t, I’d still expect to see the warning message in dmesg.

How do I go about diagnosing this?

# lspci -vv

04:00.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)
    Subsystem: KNC One SAA7146
    Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 32 (3750ns min, 9500ns max)
    Interrupt: pin A routed to IRQ 14
    Region 0: Memory at df201000 (32-bit, non-prefetchable) [size=512]

04:01.0 Multimedia controller: Philips Semiconductors SAA7146 (rev 01)
    Subsystem: Technotrend Systemtechnik GmbH Technotrend-Budget/Hauppauge WinTV-NOVA-T DVB card
    Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
    Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
    Latency: 32 (3750ns min, 9500ns max)
    Interrupt: pin A routed to IRQ 15
    Region 0: Memory at df200000 (32-bit, non-prefetchable) [size=512]
# dmesg | grep -i dvb
(no output)
# lsmod | grep -i dvb
(no ouptut)

EDIT:

# lspci -nnk -d "1131:*"
04:00.0 Multimedia controller [0480]: Philips Semiconductors SAA7146 [1131:7146] (rev 01)
    Subsystem: KNC One SAA7146 [1894:003a]
04:01.0 Multimedia controller [0480]: Philips Semiconductors SAA7146 [1131:7146] (rev 01)
    Subsystem: Technotrend Systemtechnik GmbH Technotrend-Budget/Hauppauge WinTV-NOVA-T DVB card [13c2:1011]
# uname -a
Linux mediabox 6.2.0-24-generic #24-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 16 12:03:50 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

Everything I’ve read says I don’t need to "fix" the udev rules. But how can I check they’re correct? One used to make a new udev rule in the olden days.

Asked By: Kingsley

||

I googled it for you …

In 2022 the driver for Saa7146 was moved to "deprecated" in Linux Kernel.

https://lore.kernel.org/linux-media/517fcea8-bc76-255c-da59-43c0b7f56486@xs4all.nl/

The remaining patches move other non-vb2 drivers to this deprecated
directory: cpia2, meye, zr364xx, tm6000, fsl-viu, some davinci
drivers, and saa7146. Finally the deprecated staging driver av7110 is
moved to deprecated/saa7146.

Note that the ttpci (using just the DVB part of saa7146) was
deprecated as well. It should be possible to extract it from the
saa7146 driver as a DVB-only driver, but I am not certain if that is
worth the effort.

It’s really very old hardware… (20+ years).

Last Kernel version containing Saa7146 driver was 5.19.

Answered By: Marco
Categories: Answers Tags: , , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.