TBS6284: Difference between revisions

From LinuxTVWiki
Jump to navigation Jump to search
Line 58: Line 58:
===Making it work===
===Making it work===


'''1. Extract the ZIP file tbs-linux-drivers_v[VERSION NUMBER].zip.''' As of 5 October 2013, the latest version is 130927. You may want to do this in an empty directory as this archive does not extract into a single root directory of its own.
'''1. Extract the ZIP file tbs-linux-drivers_v[VERSION NUMBER].zip.''' As of 14 January 2014, the latest version is 140113. You may want to do this in an empty directory as this archive does not extract into a single root directory of its own.


unp -u tbs-linux-drivers_v130927.zip
unp -u tbs-linux-drivers_v140113.zip


'''2. Extract linux-tbs-drivers.tar.bz2 archive'''
'''2. Extract linux-tbs-drivers.tar.bz2 archive'''

Revision as of 18:15, 14 January 2014

TBS6284 PCI-E DVB-T2 Quad TV Tuner Card, as the name suggests, is a DVB-T2 PCIe Cards from TBS Technologies. It is a new product since October 2011, which is specially designed

TBS6284

for DVB T2 reception countries, such as UK, Sweden. It supports watching or recording four different channels .This DVB T2 PC TV card is ready with windows BDA driver and Linux driver. It’s ideal for watching UK Freeview SD and HD channels on PC.

Overview/Features

  • 1 x PCI Express Interface
  • Four DVB T/T2 Freeview SD& HD Channels Receiving
  • DiSEqC 2.x Compliant
  • Linux Support

Components Used

  • NXP18272 X4(Tuner)
  • SONY CXD2820(Demod)
  • SAA7160

Other Images

Identification

lspci -v | grep --after-context=9 7160


02:00.0 Multimedia controller [0480]: Philips Semiconductors SAA7160 [1131:7160] (rev 02)
Subsystem: Device [6284:0001]
 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: 4 bytes
 Interrupt: pin A routed to IRQ 18
 Region 0: Memory at fdd00000 (64-bit, non-prefetchable) [size=1M]
 Capabilities: <access denied>
 Kernel driver in use: SAA716x TBS
 Kernel modules: saa716x_tbs-dvb

If the driver is not yet installed or loaded, then output will instead be

02:00.0 Multimedia controller: Philips Semiconductors Device 7160 (rev 02)
       Subsystem: Device 6284:0001
       Flags: bus master, fast devsel, latency 0, IRQ 10
       Memory at fe900000 (64-bit, non-prefetchable) [size=1M]
       Capabilities: [40] Message Signalled Interrupts: Mask- 64bit+ Queue=0/5 Enable-
       Capabilities: [50] Express Endpoint, MSI 00
       Capabilities: [74] Power Management version 2
       Capabilities: [80] Vendor Specific Information <?>
       Capabilities: [100] Vendor Specific Information <?>

Drivers

Available here.

TurboSight Proprietary by Konstantin Dimitrov <kosio.dimitrov@gmail.com> for TurboSight TBS 62x0 DVBT/T2/C frontend driver module of www.turbosight.com

Making it work

1. Extract the ZIP file tbs-linux-drivers_v[VERSION NUMBER].zip. As of 14 January 2014, the latest version is 140113. You may want to do this in an empty directory as this archive does not extract into a single root directory of its own.

unp -u tbs-linux-drivers_v140113.zip

2. Extract linux-tbs-drivers.tar.bz2 archive

unp linux-tbs-drivers.tar.bz2

3. Change to driver package directory

cd linux-tbs-drivers

4. Select platform architecture

for x86 kernel 3.x (x86 32 bit installations of kernel 3.x)

./v4l/tbs-x86_r3.sh

or for x86 kernel 2.6.x (x86 32 bit installations of kernel 2.6.x)

./v4l/tbs-x86.sh

or for any x86_64 kernel (x86 64 bit installations of Linux)

./v4l/tbs-x86_64.sh

You should then receive a message along these lines:

TBS drivers configured for [NAME OF PLATFORM] platform.

5. Build the driver. Recompiles v4l for a wide range of cards, currently 485, will take many minutes.

make 

If you get -bash: make: command not found, then sudo apt-get install build-essential

6. Install driver. Existing drivers for other v4l related hardware, such as lirc could also get updated.

sudo make install

7. Load newly installed driver

sudo modprobe -v tbs62x0fe

insmod /lib/modules/3.(your kernel version)-generic/kernel/drivers/media/dvb/frontends/tbs62x0fe.ko

8. Check it loaded correctly

tail /var/log/syslog

You should get a message about tainting the kernel. This is fine.

kernel: tbs62x0fe: module license 'TurboSight Proprietary' taints kernel.

Running dmesg | tail should end with something along these lines:

[ 7330.361868] tbs62x0fe: module license 'TurboSight Proprietary' taints kernel.
[ 7330.361875] Disabling lock debugging due to kernel taint

dvb adaptor nodes should now exist

ls -al /dev/dvb 
drwxr-xr-x  2 root root  120 Jul  9 21:12 adapter0
drwxr-xr-x  2 root root  120 Jul  9 21:12 adapter1
drwxr-xr-x  2 root root  120 Jul  9 21:12 adapter2
drwxr-xr-x  2 root root  120 Jul  9 21:12 adapter3

Errors and troubleshooting

make[3]: *** No rule to make target `tbs8921ctrl.o', needed by `v4l/media.o'.  Stop.

Did you select the correct platform in step 4 above?

Fighting with another tuner card in load order at boot time - http://www.tbsdtv.com/forum/viewtopic.php?f=62&t=7747

During compilation:

make[1]: *** No rule to make target `.myconfig', needed by `config-compat.h'. Stop.

Make sure you have the right C header files installed for your Linux kernel version.


Some weeks later your /dev/dvb directory has disappeared?

Perhaps your kernel was updated, and your machine rebooted.

The driver needs to be recompiled.

If you just run make, it will try to compile against the old kernel headers, so first run

make distclean

Then go back to step 5.

Sample Kernel Output

[    6.125838] tbs6928fe: module license 'TurboSight Proprietary: www.tbsdtv.com' taints kernel.
[    6.125842] Disabling lock debugging due to kernel taint
[    6.206009] Registered IR keymap rc-tbs-nec
[    6.206058] input: saa716x IR (TurboSight TBS 6284) as /devices/pci0000:00/0000:00:1c.3/0000:04:00.0/rc/rc1/input5
[    6.206081] rc1: saa716x IR (TurboSight TBS 6284) as /devices/pci0000:00/0000:00:1c.3/0000:04:00.0/rc/rc1
[    6.206141] DVB: registering new adapter (SAA716x dvb adapter)
[    6.261725] input: MCE IR Keyboard/Mouse (saa716x) as /devices/virtual/input/input7
[    6.277606] rc rc1: lirc_dev: driver ir-lirc-codec (saa716x) registered at minor = 1
[    7.092446] TurboSight TBS6284 DVB-T2 card port0 MAC=ff:ff:ff:ff:ff:ff
[    7.092450] DVB: registering adapter 0 frontend 0 (TurboSight TBS 62x0 DVBT/T2 frontend)...
[    7.092538] DVB: registering new adapter (SAA716x dvb adapter)
[    7.140415] TurboSight TBS6284 DVB-T2 card port1 MAC=ff:ff:ff:ff:ff:ff
[    7.140418] DVB: registering adapter 1 frontend 0 (TurboSight TBS 62x0 DVBT/T2 frontend)...
[    7.140476] DVB: registering new adapter (SAA716x dvb adapter)
[    7.792511] TurboSight TBS6284 DVB-T2 card port2 MAC=ff:ff:ff:ff:ff:ff
[    7.792515] DVB: registering adapter 2 frontend 0 (TurboSight TBS 62x0 DVBT/T2 frontend)...
[    7.792595] DVB: registering new adapter (SAA716x dvb adapter)
[    7.840515] TurboSight TBS6284 DVB-T2 card port3 MAC=ff:ff:ff:ff:ff:ff
[    7.840517] DVB: registering adapter 3 frontend 0 (TurboSight TBS 62x0 DVBT/T2 frontend)...

External Links