[mythtv-users] (somewhat off-topic) compiling the TBS 6981 driver

Stephen Worthington stephen_agent at jsw.gen.nz
Tue Dec 31 13:09:45 UTC 2013


On Tue, 31 Dec 2013 10:55:28 +0000, you wrote:

> I have a TBS 6981 dual tuner dvb-s2 card that has been working in a
>dedicated mythbuntu machine (on and off) for at least a couple of years.
>Whenever a new kernel is published I have to recompile the driver, which is
>a minor pain and sometimes breaks things.
>
>This time the system was messy enough that I restarted it all from scratch,
>wiping the disk and doing a fresh install of Mythbuntu 12.04.3. However, on
>recompiling the driver, it doesn't come up in dmesg as it's supposed to.
>
>The instructions in the README_TBS6981 of the zip file of the drivers,
>http://www.tbsdtv.com/download/docum...rs_v130927.zip<http://www.tbsdtv.com/download/document/common/tbs-linux-drivers_v130927.zip>,
>and also at various other places such as
>http://www.robclarkey.com/technology...-ubuntu-11-04/<http://www.robclarkey.com/technology/2012/06/05/installing-tbs6981-dvb-s2-dual-tuner-on-ubuntu-11-04/>,
>which have worked for me in the past, suggest that on successful make
>&&
>make install, after a reboot the card should appear in dmesg.
>
>Summary of procedure:
>
>sudo su
>cd /usr/src
>apt-get install linux-headers-`uname -r` build-essential cvs
>libncurses5-dev gcc rar tar gzip
>mkdir tbs6981
>cd tbs6981
>wget
>http://www.tbsdtv.com/download/document/common/tbs-linux-drivers_v130927.zip
>unzip tbs-linux-drivers_v130927.zip
>tar xvfj linux-tbs-drivers.tar.bz2
>cd linux-tbs-drivers
>./v4l/tbs-x86_64.sh
>make && make install
>shutdown -r now
>
>After the reboot, the card should appear in
>dmesg | fgrep frontend
>
>but now it doesn't!
>
>The supplied readme and the various help files / tutorials / blog posts I
>found on the net all seem to assume that, if the make and make install
>completed without errors, the card will appear in dmesg. None of them
>provided any debugging suggestions on what to do if it doesn't.
>
>The OS is a fresh install of the latest Mythbuntu, with updates, giving
>Ubuntu 12.04.3 LTS (GNU/Linux 3.8.0-34-generic x86_64)
>
>Has anyone had a similar experience? Can anyone offer any clues?
>Thanks

I have a TBS5922 USB DVB-S2 box, and I have never had any problems
with the install, but I have been looking at automating it using dkms,
so I have some idea of how it works.  Your install procedure above
looks fine to me, and I presume that you checked the output of the
make and make install commands to see if there were any errors.  I
have my install procedure as a script now, and it exits on any error.
This is my built-and-install-TBS5922-drivers.sh file, which is run
from my /usr/src/tbs-v130927 directory as root:

#!/bin/bash

cp dvb-usb-tbsqbox-id5922.fw /lib/firmware || exit 2

if [ -d "linux-tbs-drivers" ]; then
    rm -r linux-tbs-drivers || exit 3
fi

tar xjf linux-tbs-drivers.tar.bz2 || exit 4

cd linux-tbs-drivers || exit 5
./v4l/tbs-x86_64.sh || exit 6
cd linux || exit 7
cp -a /root/archives/linux-2.6.38-dvb-mutex.patch . || exit 8
patch -p1 <linux-2.6.38-dvb-mutex.patch || exit 9
cd .. || exit 10

make -j5 || exit 11

make install

Note that I am doing a V4L patch for the dvbloopback drivers I am
using - you will not need that.

I would first suggest checking that the install did actually work.
This should show the *.ko driver files installed in the correct spot:

ls -al /lib/modules/`uname
-r`/kernel/drivers/media/dvb/frontends/*tbs*

This is what I get:

-rw-r--r-- 1 root root 46944 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs5220fe.ko
-rw-r--r-- 1 root root 19728 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs5280fe.ko
-rw-r--r-- 1 root root 14696 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs5680fe.ko
-rw-r--r-- 1 root root 16912 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs5880fe.ko
-rw-r--r-- 1 root root 46944 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs5881fe.ko
-rw-r--r-- 1 root root 60048 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs5921fe.ko
-rw-r--r-- 1 root root 16384 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs5922fe.ko
-rw-r--r-- 1 root root  5664 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs5925fe_ctrl.ko
-rw-r--r-- 1 root root 20752 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs62x0fe.ko
-rw-r--r-- 1 root root 51352 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs62x1fe.ko
-rw-r--r-- 1 root root 14936 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6618fe.ko
-rw-r--r-- 1 root root 14936 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6680fe.ko
-rw-r--r-- 1 root root 62888 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6921fe.ko
-rw-r--r-- 1 root root 20168 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6922fe.ko
-rw-r--r-- 1 root root 20176 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6923fe.ko
-rw-r--r-- 1 root root 10432 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6925ctrl.ko
-rw-r--r-- 1 root root  8216 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6926ctrl.ko
-rw-r--r-- 1 root root 10688 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6926.ko
-rw-r--r-- 1 root root 17368 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6928fe.ko
-rw-r--r-- 1 root root 17744 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6928se.ko
-rw-r--r-- 1 root root 75616 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6980fe.ko
-rw-r--r-- 1 root root 76752 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6981fe.ko
-rw-r--r-- 1 root root 20192 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6982fe.ko
-rw-r--r-- 1 root root 20560 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6982se.ko
-rw-r--r-- 1 root root 77280 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6984fe.ko
-rw-r--r-- 1 root root 21520 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6985fe.ko
-rw-r--r-- 1 root root 17904 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6985se.ko
-rw-r--r-- 1 root root 17896 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6991fe.ko
-rw-r--r-- 1 root root 17776 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6991se.ko
-rw-r--r-- 1 root root  8152 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs6992.ko
-rw-r--r-- 1 root root 62592 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs8921fe.ko
-rw-r--r-- 1 root root 19400 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbs8922fe.ko
-rw-r--r-- 1 root root 14664 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbsdvbcfe.ko
-rw-r--r-- 1 root root  6112 Dec  4 04:00
/lib/modules/3.2.0-57-generic/kernel/drivers/media/dvb/frontends/tbsfe.ko

Check the files dates and make sure they match when you did the
install, and that your tbs6981fe.ko is there.  I am not sure if the
TBS6981 needs a firmware file, but check to see if any have been
installed:

find /lib/firmware -iname "dvb-fe-cx24116.fw"
find /lib/firmware -iname "*tbs*.fw"
find /lib/firmware -iname "v4l-cx23885-avcore-01.fw"

This is what I get:

/lib/firmware/dvb-fe-cx24116.fw
/lib/firmware/dvb-usb-tbsqbox-id5926.fw
/lib/firmware/dvb-usb-tbsqbox-id5922.fw
/lib/firmware/v4l-cx23885-avcore-01.fw

Check that the TBS hardware is actually visible to the system:

lspci | grep -i tbs

Next, I would see what happens when you try to load the driver
manually:

modprobe tbs6981fe.ko


More information about the mythtv-users mailing list