i have difficulties installing my technisat skystar2 dvb card in opensuse 13.1 (64bit).
the card seems to be recognized, but there is nothing under /dev/dvb… seems like there is no frontend driver found, although lsmod lists stv090x, stv0299, mt312, and mt352. but only stv0299 is used by dvb_core…
the only problems i can find is that during boot, various frontend driver seem to have problems (see below)… but i have no idea how to solve them…
> journalctl --boot | grep -iE “dvb|flexcop|stv|mt3” | sed ‘s/^.*kernel:/kernel:/’
kernel: b2c2-flexcop: B2C2 FlexcopII/II(b)/III digital TV receiver chip loaded successfully
kernel: flexcop-pci: will use the HW PID filter.
kernel: flexcop-pci: card revision 2
kernel: DVB: registering new adapter (FlexCop Digital TV device)
kernel: b2c2-flexcop: MAC address = 00:08:c9:e1:70:c5
kernel: mt352_read_register: readreg error (reg=127, ret==-121)
kernel: stv0297_readreg: readreg error (reg == 0x80, ret == -121)
kernel: mt312_read: ret == -121
kernel: b2c2-flexcop: no frontend driver found for this B2C2/FlexCop adapter
Create a file /etc/modprobe.d/50-tv.conf with the following content: (you can leave out the 2 lines starting with ‘#’ if you want)
alias char-major-81 videodev
alias char-major-81-0 off
alias char-major-81-1 off
alias char-major-81-2 off
alias char-major-81-3 off
# YaST configured TV card
# lgGW.kXehR0AesgA:B2C2 FlexCopII DVB chip / Technisat SkyStar2 DVB card
install char-major-212-3 /sbin/rmmod 'b2c2-flexcop-pci' 2> /dev/null; /sbin/modprobe 'b2c2-flexcop-pci'; /sbin/rmmod 'mt312' 2> /dev/null; /sbin/modprobe 'mt312'
I have the same card as you and it is working fine here with that file (this is what YaST’s TV module generated on a previous openSUSE version, that module has been dropped for 13.1 but the 12.3 version would still work).
but unfortunately i already have this particular file with the exact same content (apart from the second comment line, obviously)… i, too, have installed the yast-tv-module from 12.3 and (successfully?) configured the dvb card, but that didn’t help at all.
Well, my kernel log doesn’t mention anything about stv029x and lsmod doesn’t list it either (and lgdt330x neither).
So maybe this is interfering?
Try to blacklist it by adding a line “blacklist stv0299” to that 50-tv.conf file. Or do you need it for something else?
yes, and i also have ‘technisat-usb2-firmware’ installed…
i did and nothing changed…
i had an old hauppauge WinTV PVR500 card installed, which i suspected to cause the interference, but after removing that card the result was exactly the same.
I don’t have that (I wasn’t even aware of the existence of that package). So maybe try to uninstall it (it’s only for usb devices anyway according to the name).
Although I tried to install it now and the card still works.
i did and nothing changed…
OK, then you should better remove the manually added blacklists again.
any other suggestions? anyone? bueller?
Hm. As I have exactly the same card, I really think it should work for you too.
And I didn’t have to do anything special to make it work, just set it up with YaST which created that 50-tv.conf file posted earlier.
As I haven’t posted it yet, here’s the output of your journalctl and lsmod lines on my system:
wolfi@amiga:~> sudo journalctl --boot | grep -iE "dvb|flexcop|stv|mt3" | sed 's/^.*kernel:/kernel:/'root's password:
kernel: b2c2-flexcop: B2C2 FlexcopII/II(b)/III digital TV receiver chip loaded successfully
kernel: flexcop-pci: will use the HW PID filter.
kernel: flexcop-pci: card revision 2
kernel: DVB: registering new adapter (FlexCop Digital TV device)
kernel: b2c2-flexcop: MAC address = 00:08:c9:a1:ae:8e
kernel: b2c2-flexcop: CX24113 successfully attached
kernel: b2c2-flexcop: ISL6421 successfully attached
kernel: b2c2-flexcop: found 'Conexant CX24123/CX24109' .
kernel: b2c2_flexcop_pci 0000:00:0c.0: DVB: registering adapter 0 frontend 0 (Conexant CX24123/CX24109)...
kernel: b2c2-flexcop: initialization of 'Sky2PC/SkyStar 2 DVB-S rev 2.8' at the 'PCI' bus controlled by a 'FlexCopIIb' complete
wolfi@amiga:~> lsmod | head -1; lsmod | grep -E "dvb|flexcop"
Module Size Used by
b2c2_flexcop_pci 15009 0
b2c2_flexcop 31065 1 b2c2_flexcop_pci
dvb_core 125656 1 b2c2_flexcop
cx24123 19115 2 b2c2_flexcop
cx24113 17829 2 b2c2_flexcop
s5h1420 18519 1 b2c2_flexcop
If I read your output correctly, cx24113 and isl6421 aren’t even tried in your case.
Maybe you have some other blacklists active in /etc/modprobe.d/ that causes the problem?
What kernel do you actually have installed?
rpm -qa | grep kernel
I think I’ll take a look at the driver’s source code, maybe I get another idea what could be wrong then.
Regarding the journalctl output, I now looked into the journal directly (without the grep) and there are some additional lines there that get filtered out by the grep: (I removed a few lines about different hardware though)
Feb 17 08:04:21 amiga kernel: b2c2-flexcop: B2C2 FlexcopII/II(b)/III digital TV receiver chip loaded successfully
Feb 17 08:04:21 amiga kernel: flexcop-pci: will use the HW PID filter.
Feb 17 08:04:21 amiga kernel: flexcop-pci: card revision 2
Feb 17 08:04:21 amiga kernel: DVB: registering new adapter (FlexCop Digital TV device)
Feb 17 08:04:21 amiga kernel: b2c2-flexcop: MAC address = 00:08:c9:a1:ae:8e
Feb 17 08:04:21 amiga kernel: CX24123: detected CX24123
Feb 17 08:04:21 amiga kernel: CX24113: trying to detect myself
Feb 17 08:04:21 amiga kernel: CX24113: successfully detected
Feb 17 08:04:21 amiga kernel: CX24113: version: 3
Feb 17 08:04:21 amiga kernel: b2c2-flexcop: CX24113 successfully attached
Feb 17 08:04:21 amiga kernel: b2c2-flexcop: ISL6421 successfully attached
Feb 17 08:04:21 amiga kernel: b2c2-flexcop: found 'Conexant CX24123/CX24109' .
Feb 17 08:04:21 amiga kernel: b2c2_flexcop_pci 0000:00:0c.0: DVB: registering adapter 0 frontend 0 (Conexant CX24123/CX24109)...
Feb 17 08:04:21 amiga kernel: b2c2-flexcop: initialization of 'Sky2PC/SkyStar 2 DVB-S rev 2.8' at the 'PCI' bus controlled by a 'FlexCopIIb' complete
So maybe those lines would contain something interesting in your case?
Please run just “sudo journalctl --boot”, press ‘/’ (for search) and enter “b2c2” as search string, then post all the lines upto the final message “b2c2-flexcop: no frontend driver found for this B2C2/FlexCop adapter”.
That seems to be the problem I think.
Apparently this means that your chip is not supported by the CX24123 driver.
So it seems your card is slightly different than mine, although all the lspci (and so on) output is the same AFAICS.
I found a driver (for Skystar2 with cx24120) in a german Ubuntu forum, you could try that: (apparently this is from linuxtv.org)
wget http://dl.dropbox.com/u/216691/dvb-fe-cx24120-1.20.58.2.fw
sudo cp dvb-fe-cx24120-1.20.58.2.fw /lib/firmware
wget http://dl.dropbox.com/u/216691/media_build_S2.tar.bz2
tar xfj media_build_S2.tar.bz2
cd media_build_S2
make
sudo make install
You would need kernel-devel and kernel-desktop-devel to do that I think.
But I cannot gurantee you that this will work. Or maybe even installing that firmware (i.e. running only the first two lines) might already help, but I don’t know for sure.
DVB devices marketed under a particular name often have several different hardware revisions – and each will require specific support in the software drivers utilized.
ICs themselves, that are used in the hardware, can have particular revisions, though typically this isn’t a big deal unless registers change significantly. The “CX24123: wrong demod revision: 0” error simply implies that a CX24123 IC could not be found (as the i2c scan expects to find one via obtaining either of two register values, else it throws that error message). That’s not to say that a cx24123 isn’t present (its registers might not be initialized correctly if in the case it requires a firmware to be loaded first). But that begs the point: it is not at all clear to me what ICs are utilized on your device … (I’m not familiar with it, but skimming through the thread shows output containing an alphabet soup of various/potential tuner and demodulator ICs … and I can guarantee you that they won’t all be on the device!).
So, in order to figure things out, you could try taking a picture of the board and upload it to suse paste (or similar) and then post a link to the image (or embed it here in the thread), and we can see if we can spot the proper chips.