Ubuntu HD VDR mittels TechnoTrend S2-6400 - DVB Treiber

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
Zeile 187: Zeile 187:
 
==Links==
 
==Links==
 
# [http://www.linuxtv.org LinuxTV]
 
# [http://www.linuxtv.org LinuxTV]
 +
# [http://linuxtv.org/hg/~endriss/media_build_experimental UFO DVB Repository]
 
# [http://powarman.dyndns.org/hg powarman DVB Repository]
 
# [http://powarman.dyndns.org/hg powarman DVB Repository]
 
# [http://www.aregel.de/ TT Firmware]
 
# [http://www.aregel.de/ TT Firmware]

Version vom 15. Mai 2011, 09:04 Uhr

Inhaltsverzeichnis

Was gibt es zu beachten?

Die TV Karte muss zwingend mit einem S-ATA Stromkabel angeschlossen werden. Auch sollten beide Antennenanschlüsse an die beiden Tuner der TV-Karte angeschlossen werden. Falls Ihr nur einen der beiden Tuner an der TV-Karte nutzen möchtet so muss dies später beim starten des VDR´s berücksichtigt werden.

Prüfen der eingebauten DVB-Karte

Mittels dem unten genannten Befehl kann geprüft werden ob die DVB-Karte vom System erkannt wird. Achtung! Falls die Karte nicht wie unten beschrieben angezeigt wird, gegebenfalls mal den PCIe-Slot wechseln und danach nochmals testen.

lspci -v
02:00.0 Multimedia controller: Philips Semiconductors SAA7160 (rev 02)
        Subsystem: Technotrend Systemtechnik GmbH Device 300a
        Flags: bus master, fast devsel, latency 0, IRQ 18
        Memory at f9f00000 (64-bit, non-prefetchable) [size=1M]
        Capabilities: <access denied>
        Kernel driver in use: SAA716x FF
        Kernel modules: saa716x_ff

Downloadverzeichnis erstellen

mkdir -p /data/installfiles/dvb

Firmware einspielen

Firmwaredateien herunterladen

cd /data/installfiles/dvb/
wget http://www.aregel.de/file_download/10/dvb-ttpremium-fpga-01_v1_05.zip
wget http://www.aregel.de/file_download/7/dvb-ttpremium-loader-01_v1_03.zip
wget http://www.aregel.de/file_download/9/dvb-ttpremium-st7109-01_v0_2_10.zip

Firmwaredateien einspielen

cd /lib/firmware/
sudo unzip /data/installfiles/dvb/dvb-ttpremium-fpga-01_v1_05.zip
sudo unzip /data/installfiles/dvb/dvb-ttpremium-loader-01_v1_03.zip
sudo unzip /data/installfiles/dvb/dvb-ttpremium-st7109-01_v0_2_10.zip

Firmwaredateien prüfen

Achtung! Dir Firmwaredateien müssen wie unten angezeigt werden.

cd /lib/firmware/
ls -l

-rw-r--r--  1 root root  372181 2011-05-09 21:19 dvb-ttpremium-fpga-01.fw
-rw-r--r--  1 root root   15784 2011-04-27 19:17 dvb-ttpremium-loader-01.fw
-rw-r--r--  1 root root 2109789 2011-05-10 20:51 dvb-ttpremium-st7109-01.fw

Was gibt´s neues?

Die Firmwaredateien können hier eingesehen werden:

http://www.aregel.de/

Installation der DVB-Treiber

Mit dieser hier beschriebenen Vorgehensweise werden die vorhandenen DVB-Kernelmodule durch die neuen ersetzt.

DVB-Treiber herunterladen

cd /data/installfiles/dvb/
hg clone http://linuxtv.org/hg/~endriss/media_build_experimental
cd media_build_experimental/
make distclean
make download
make untar
cd /data/installfiles/dvb/
tar -czf media_build_experimental-cvs-09052011.tar.gz media_build_experimental/

Was hat sich geändert?

Hier kann das DVB Repository eingesehen werden.

http://powarman.dyndns.org/hgwebdir.cgi/v4l-dvb-saa716x/
http://linuxtv.org/hg/~endriss/media_build_experimental

DVB Treiber vorbereiten und installieren

Die DVB Treiber müssen als User root vorbereitet und installiert werden. Mit folgendem Befehl wechselt man in den User root:

sudo su -

DVB Treiber vorbereiten

cd /usr/local/src/
cp -a /data/installfiles/dvb/media_build_experimental .
ln -s media_build_experimental/ dvb

DVB Treiber installieren

cd /usr/local/src/dvb
make distclean && make && make install
init 6

Link auf compiler.h setzen

Achtung! Dieser Link ist wichtig, da sonst der VDR nicht übersetzt werden kann.

cd /usr/local/src/dvb/linux/include/linux
sudo ln -s /usr/src/linux-headers-$(uname -r)/include/linux/compiler.h compiler.h

Prüfen der DVB Treiber Installation

Im Modulverzeichnis des Kernels kann das Datum und Uhrzeit der DVB Module betrachtet werden.

Hier sieht man, dass der DVB-Treiber am 06.05.2011 um 19:11 Uhr installiert wurde. Wenn am gleichen Tag das OS installiert wurde, sollte die Uhrzeit betrachtet werden.

cd /lib/modules/$(uname -r)/kernel/drivers/media/dvb/ttpci
ls -l
-rw-r--r-- 1 root root  49368 2011-05-06 19:11 budget-av.ko
-rw-r--r-- 1 root root  42920 2011-05-06 19:11 budget-ci.ko
-rw-r--r-- 1 root root  21944 2011-05-06 19:11 budget-core.ko
-rw-r--r-- 1 root root  34344 2011-05-06 19:11 budget.ko
-rw-r--r-- 1 root root  20640 2011-05-06 19:11 budget-patch.ko
-rw-r--r-- 1 root root 197760 2011-05-06 19:11 dvb-ttpci.ko
-rw-r--r-- 1 root root   5792 2011-05-06 19:11 ttpci-eeprom.ko

sudoers erweitern

Damit der später der vdruser die DVB Module als User root starten kann muss die sudoers erweitert werden. Achtung! Der untiger Eintrag muss als letzte Zeile hinzugefügt werden.

sudo visudo
vdruser ALL=(ALL) NOPASSWD: /sbin/modprobe

OS neu starten

sudo init 6

DVB Module manuell laden

Um euch Modulparameter anzeigen zu lassen könnt Ihr folgenden Befehl verwenden:

sudo modinfo saa716x_ff
filename:       /lib/modules/2.6.35-28-generic/kernel/drivers/media/common/saa716x/saa716x_ff.ko
license:        GPL
author:         Manu Abraham
description:    SAA716x FF driver
srcversion:     20F28C8A84F40A78712920F
alias:          pci:v00001131d00007160sv000013C2sd0000300Abc*sc*i*
alias:          pci:v00001131d00007160sv000013C2sd00003009bc*sc*i*
depends:        dvb-core,saa716x_core
vermagic:       2.6.35-28-generic SMP mod_unload modversions
parm:           verbose:verbose startup messages, default is 1 (yes) (int)
parm:           int_type:force Interrupt Handler type: 0=INT-A, 1=MSI, 2=MSI-X. default INT-A mode (int)

Hier werden die DVB-Treibermodule geladen:

sudo modprobe saa716x_ff

Nachdem die DVB-Treibermodule geladen wurden, sollte der Aufruf 'dmesg' folgendes Anzeigen:

dmesg
[    6.454170] SAA716x FF FPGA version 1.02
[    6.478502] SAA716x FF loader version 1.02
[    7.182387] DVB: registering new adapter (SAA716x dvb adapter)
[    7.342004] stv6110x_attach: Attaching STV6110x
[    7.352433] DVB: registering adapter 0 frontend 0 (STV090x Multistandard)...
[    7.352988] DVB: registering new adapter (SAA716x dvb adapter)
[    7.354589] stv6110x_attach: Attaching STV6110x
[    7.400119] DVB: registering adapter 1 frontend 0 (STV090x Multistandard)...
[    8.172914] SAA716x FF firmware version 0.2.8
[    8.173129] input: TT6400 DVB IR receiver as /devices/pci0000:00/0000:00:0c.0/0000:02:00.0/input/input2
[  481.466431] SAA716x FF 0000:02:00.0: PCI INT A disabled
[  490.341085] SAA716x FF 0000:02:00.0: PCI INT A -> Link[LN0A] -> GSI 18 (level, low) -> IRQ 18
[  490.341108] SAA716x FF 0000:02:00.0: setting latency timer to 64
[  491.480113] SAA716x FF FPGA version 1.02
[  491.485018] SAA716x FF loader version 1.02
[  492.169148] DVB: registering new adapter (SAA716x dvb adapter)
[  492.316466] stv6110x_attach: Attaching STV6110x
[  492.317200] DVB: registering adapter 0 frontend 0 (STV090x Multistandard)...
[  492.317733] DVB: registering new adapter (SAA716x dvb adapter)
[  492.321048] stv6110x_attach: Attaching STV6110x
[  492.368498] DVB: registering adapter 1 frontend 0 (STV090x Multistandard)...
[  493.160744] SAA716x FF firmware version 0.2.8
[  493.160928] input: TT6400 DVB IR receiver as /devices/pci0000:00/0000:00:0c.0/0000:02:00.0/input/input3


Die Treibermodule können folgendermaßen wieder gestoppt werden:

sudo modprobe -r saa716x_ff

Aktualisieren der DVB Treiber

Hier wird das DVB Treiberverzeichnis auf den aktuellen Stand gebracht. Nach dem Update kann der DVB Treiber wie oben beschrieben installiert werden.

Treiberarchiv aktualisieren

cd /data/installfiles/dvb/media_build_experimental
hg pull -u http://linuxtv.org/hg/~endriss/media_build_experimental
make distclean
make download
make untar

DVB Treiber installieren

Die DVB Treiber müssen als User root vorbereitet und installiert werden. Mit folgendem Befehl wechselt man in den User root:

sudo su -

DVB Treiber vorbereiten

cd /usr/local/src/
cp -a /data/installfiles/dvb/media_build_experimental .
ln -s media_build_experimental/ dvb

DVB Treiber installieren

cd /usr/local/src/dvb
make distclean && make && make install
init 6

Links

  1. LinuxTV
  2. UFO DVB Repository
  3. powarman DVB Repository
  4. TT Firmware