Registered: 1440182496 Posts: 91
Reply with quote #1
I've been using a TBS 6991SE card under Ubuntu Server 14.04 and Tvheadend 4.0 and it's been working fine for receiving free to air signals. Upgraded to Ubuntu Server 16.04 and Tvheadend 4.2 and the same card with the same settings gives nothing but continuity counter errors. A couple other TBS cards still work fine. One possible difference is that the 6991SE has a CA card slot which is not used in the western hemisphere, and Tvheadend 4.2 actually sees that it has a card slot whereas 4.0 apparently did not have any built in support for such a slot. The cards that continue to work great do NOT have CA card slots. After the upgrade the 6991SE card gives nothing but continuity counter errors. I tested both the standard TBS drivers and the open source ones (from
https://github.com/tbsdtv/linux_media/wiki), it made no difference. I installed Tvheadend 4.2 using the instructions at https://tvheadend.org/projects/tvheadend/wiki/AptRepository#Usage if that makes any difference; I am not generally well enough versed in Linux to go compiling things from scratch and actually have them work (it's a minor miracle that I get the TBS drivers to compile). Just a word of warning to anyone who has a 6991SE card or possibly a similar one with a CA slot. I don't know if they will work if you actually have a CA card connected but without one, mine doesn't. If anyone would like to hazard a guess why it won't work following the upgrade, please feel free, I'm all ears!
Registered: 1299364124 Posts: 1,054
Reply with quote #2
6991/6991SE have 2x CI slot for 2x CAMs.
CA slot is simple card-reader. Maybe you have some kernel-related issues (DMA, IRQ handling). What kernel version used in ubuntu 14.04 and 16.04 ? __________________ Strong offset dish 0.95m on Powertech DG240 motor + ALPS BSTE8-751B Ku-Universal LNB. Variant CA-902 0.95 offset dish with 3xDreamSat DS-8 Ku-Universal LNBs (13E+4.8E+4W) + Variant CA-600 Ku-Circular LNB 36E + DiseqC 1.0. STB: GI8120 Lite. PC DVB: Omicom S2 PCI; TBS 6983 PCI; TBS QBox-CI USB(5980), 5927.
Registered: 1440182496 Posts: 91
Reply with quote #3
The kernel version in Ubuntu 14.04 was most likely 4.4.0-92-generic although I have no way to be sure right now since the old system is no longer installed, but that's the current version running on a different system that's also running Ubuntu 14.04. In the Ubuntu Server 16.04 install, the kernel version is also 4.4.0-92-generic. I know that Ubuntu 14.04 still gets kernel updates every week or two (I know this because I've had to rebuild the TBS drivers each time) so apparently even older versions of Ubuntu can run the same kernel version as newer ones, which is something I hadn't realized before.
I do know for a fact that each card is on its own IRQ that isn't shared, that is one of the things I made sure to check. If I do lspci -vv this is what it shows for that card:
02:00.0 Multimedia controller: Philips Semiconductors SAA7160 (rev 03) Subsystem: Device 6991:0002 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 37 Region 0: Memory at f7b00000 (64-bit, non-prefetchable) [size=1M] Capabilities: <access denied> Kernel driver in use: SAA716x TBS Kernel modules: saa716x_tbs_dvb The other devices, including the cards that still work, are all on other IRQs. I don't really know much about DMA, but it's the same hardware and the same settings used under Ubuntu Server 14.04. In case this has anything to do with with the line "Region 0: Memory at f7b00000 (64-bit, non-prefetchable) [size=1M]", I do notice there is one other device that may be using memory in that same region, though I don't know enough about Linux or hardware to know if this is a problem:
00:1c.0 PCI bridge: Intel Corporation 8 Series/C220 Series Chipset Family PCI Express Root Port #1 (rev d5) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 16 Bus: primary=00, secondary=02, subordinate=02, sec-latency=0 Memory behind bridge: f7b00000-f7bfffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity- SERR- NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: <access denied> Kernel driver in use: pcieport Kernel modules: shpchp Note both seem to be using memory starting at f7b00000 but I don't know if that's an actual conflict or something normal, and in any case I don't know how to force either device to use a different part of memory. If that is an issue, it doesn't seem to affect another TBS card that uses "Region 0: Memory at f7c00000 (64-bit, non-prefetchable) [size=1M]" which seems to share memory with another PCI bridge that uses "Memory behind bridge: f7c00000-f7cfffff". I honestly don't know that much about computer hardware or software to know if this is what you are talking about when you mention "DMA", but if you believe this indicates some kind of memory conflict, then do you know of any way I could resolve it, or to force each device to reserve its own memory block?