DVB Installation 1.1.1 (Kernel 2.6)

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Variante B - Seperate Treiber von LinuxTV)
 
(21 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
==Vorbemerkung==
 
==Vorbemerkung==
Beim Kernel 2.6* gibt es mehrere Möglichkeiten die DVB Treiber zu verwenden.
+
Beim Kernel '''2.6*''' gibt es mehrere Möglichkeiten die DVB Treiber zu verwenden.
  
* Kernel-Treiber (welche mit dem Kernel ausgeliefert werden)
+
* Kernel-Treiber (welche mit dem Kernel ausgeliefert werden) - diese Methode ist zu empfehlen!
* Aktuelle Treiber von linuxTV
+
* Separate Treiber von LinuxTV
  
==Variante A - Kernel-Treiber==
+
==Variante A - Kernel Treiber==
Wenn man sich für den Kernel-DVB-Treiber entscheidet, müssen bei der Kernelkonfiguration folgenden Einstellungen aktiviert werden.
+
Wenn man sich für den Kernel DVB Treiber entscheidet, müssen bei der Kernelkonfiguration folgenden Einstellungen aktiviert werden.
  
 
<b>Kernelkonfiguration</b>
 
<b>Kernelkonfiguration</b>
Zeile 68: Zeile 68:
 
         [*] /dev/pts file system for Unix98 PTYs
 
         [*] /dev/pts file system for Unix98 PTYs
 
</pre>
 
</pre>
 +
 +
===[[Firmware]]===
 +
Vor dem laden / entladen [[Firmware]] überprüfen.
  
 
===Treiber laden / entladen===
 
===Treiber laden / entladen===
 +
 +
Unter Suse 10.1 einfach die TV-Hardware einrichten. Die Module werden dann automatisch geladen. Achtung: bei eigenen Modules außerhalb des Kernel-Baums kommt es dadurch zu massiven Probleme. Also besser die aus dem Kernel verwenden.
 +
 
'''>>> Bitte ergänzen <<<'''
 
'''>>> Bitte ergänzen <<<'''
  
==Variante B - Treiber aus dem CVS==
+
==Variante B - Separate Treiber von LinuxTV==
 
Diese Methode ist prinzipiell flexibler, da bei einem Treiberupdate nicht der gesamte Kernel neu gebaut werden muß. Allerdings können die Module nicht(!) über '''modprobe''' geladen werden, das Laden erfolgt dann zwingend über das '''insmod.sh''' Script.  
 
Diese Methode ist prinzipiell flexibler, da bei einem Treiberupdate nicht der gesamte Kernel neu gebaut werden muß. Allerdings können die Module nicht(!) über '''modprobe''' geladen werden, das Laden erfolgt dann zwingend über das '''insmod.sh''' Script.  
  
Zeile 78: Zeile 84:
  
 
<b>Kernelkonfiguration</b>
 
<b>Kernelkonfiguration</b>
<pre>
 
Code maturity level options --->
 
    [*] Prompt for development and incomplete code / driver
 
    [*] Select only drivers expected to compile cleanly
 
  
Loadable module support --->
+
wie in Variante A, jedoch mit dem Unterschied:
    [*] Enable loadable module support
+
    [*] Module unloading
+
    [*] Automatic kernel module loading
+
 
+
Device Drivers --->
+
    Generic Driver Options --->
+
        [*] Select only drivers that don't need compile-time external firmware
+
        [*] Prevent firmware from being built
+
        <M> Hotplug firmware loading support
+
 
+
    Block Devices --->
+
        <*> RAM disk support
+
        [*] Initial RAM disk (initrd) support
+
 
+
    Input Device Support --->
+
        <M> Event Interface (i.e. necessary for included IR-Receiver of the Hauppauge Nexus)
+
 
+
    Character Devices --->
+
        Serial Drivers -->
+
            [ ] 8250/16550 and compatible serial support (or as module, only necessary for LIRC)
+
 
+
        [*] Legacy (BSD) PTY support
+
        <M> /dev/nvram support
+
        <M> Enhance Realtime Clock support
+
 
+
    I2C support --->
+
        <M> I2C support
+
        <M>  I2C device interface
+
 
+
        I2C Algorithms --->
+
            <M> I2C bit-banging interfaces
+
            <M> I2C PCF 8584 interfaces
+
 
+
    Multimedia Devices --->
+
      <M> Video For Linux aktivieren
+
  
 +
<pre>
 
       Digital Video Broadcasting Devices --->
 
       Digital Video Broadcasting Devices --->
 
           [ ] DVB For Linux
 
           [ ] DVB For Linux
 
File Systems --->
 
    <*> Kernel automounter version 4 support (also supports v3)
 
 
    Pseudo filesystems -->
 
        [*] /proc file system support
 
        [*] Virtual memory file system support (former shm fs)
 
        [*] /dev/pts file system for Unix98 PTYs
 
 
</pre>
 
</pre>
 
===Download===
 
===Download===
 
Das Archiv wird im selben Verzeichnis in welches später auch [[VDR]] kommt entpackt und ein symbolischer Link auf [[DVB]] angelegt.
 
Das Archiv wird im selben Verzeichnis in welches später auch [[VDR]] kommt entpackt und ein symbolischer Link auf [[DVB]] angelegt.
  
====v4l-dvb (aktueller Stand)====
+
* '''Source'''
* '''Standard'''
+
http://www.linuxtv.org/downloads/snapshots
+
 
+
cd [[Struktur|$SOURCEDIR]]
+
mkdir DVB
+
tar xjvf v4l-dvb-<VERSION>.tar.gz -C DVB
+
cd DVB
+
ln -s linux/include include
+
cd v4l
+
ln -s scripts/insmod.sh .
+
 
+
* '''CVS'''
+
cd [[Struktur|$SOURCEDIR]]
+
cvs -d :pserver:anonymous@cvs.linuxtv.org:/cvs/video4linux login
+
cvs -z3 -d :pserver:anonymous@cvs.linuxtv.org:/cvs/video4linux co -P v4l-dvb
+
ln -s v4l-dvb DVB
+
cd DVB
+
ln -s linux/include include
+
cd v4l
+
ln -s scripts/insmod.sh .
+
 
+
====dvb-kernel (dieser Treiber wird nicht mehr gepflegt)====
+
* '''Standard'''
+
 
http://www.linuxtv.org/downloads
 
http://www.linuxtv.org/downloads
  
Zeile 174: Zeile 111:
 
  ln -s linux/include include
 
  ln -s linux/include include
  
===Installation===
+
===Übersetzen===
====v4l-dvb (aktueller Stand)====
+
cd $SOURCEDIR/DVB
+
make
+
 
+
====dvb-kernel (dieser Treiber wird nicht mehr gepflegt)====
+
 
  cd $SOURCEDIR/DVB/build-2.6
 
  cd $SOURCEDIR/DVB/build-2.6
 
  sh getlinks
 
  sh getlinks
 
  make
 
  make
 +
 +
===[[Firmware]]===
 +
Vor dem laden / entladen [[Firmware]] überprüfen.
  
 
===Treiber laden / entladen===
 
===Treiber laden / entladen===
====v4l-dvb (aktueller Stand)====
 
cd $SOURCEDIR/DVB/v4l
 
sh insmod.sh load
 
sh insmod.sh unload
 
 
====dvb-kernel (dieser Treiber wird nicht mehr gepflegt)====
 
 
  cd $SOURCEDIR/DVB/build-2.6
 
  cd $SOURCEDIR/DVB/build-2.6
 
  sh insmod.sh load
 
  sh insmod.sh load
 
  sh insmod.sh unload
 
  sh insmod.sh unload
 
==Firmware==
 
Nach der Installation der Treiber muss noch die Firmware eingespielt werden. Mehr dazu gibt es in der Rubrik
 
[[Firmware|Firmware]]
 
  
 
[[Kategorie:Installationsanleitungen]]
 
[[Kategorie:Installationsanleitungen]]

Aktuelle Version vom 2. Juli 2007, 17:48 Uhr

Inhaltsverzeichnis

[Bearbeiten] Vorbemerkung

Beim Kernel 2.6* gibt es mehrere Möglichkeiten die DVB Treiber zu verwenden.

  • Kernel-Treiber (welche mit dem Kernel ausgeliefert werden) - diese Methode ist zu empfehlen!
  • Separate Treiber von LinuxTV

[Bearbeiten] Variante A - Kernel Treiber

Wenn man sich für den Kernel DVB Treiber entscheidet, müssen bei der Kernelkonfiguration folgenden Einstellungen aktiviert werden.

Kernelkonfiguration

Code maturity level options --->
    [*] Prompt for development and incomplete code / driver
    [*] Select only drivers expected to compile cleanly

Loadable module support --->
    [*] Enable loadable module support
    [*] Module unloading
    [*] Automatic kernel module loading

Device Drivers --->
    Generic Driver Options --->
        [*] Select only drivers that don't need compile-time external firmware
        [*] Prevent firmware from being built
        <M> Hotplug firmware loading support

    Block Devices --->
        <*> RAM disk support
        [*] Initial RAM disk (initrd) support

    Input Device Support --->
        <M> Event Interface (i.e. notwendig für den intergierten IR-Empfänger der Hauppauge Nexus)

    Character Devices --->
        Serial Drivers -->
            [ ] 8250/16550 and compatible serial support (oder als Modul, nur notwendig für LIRC)

        [*] Legacy (BSD) PTY support
        <M> /dev/nvram support
        <M> Enhance Realtime Clock support

    I2C support --->
        <M> I2C support
        <M>   I2C device interface

        I2C Algorithms --->
            <M> I2C bit-banging interfaces
            <M> I2C PCF 8584 interfaces

    Multimedia Devices --->
       <M> Video For Linux aktivieren

       Digital Video Broadcasting Devices --->
           [*] DVB For Linux
           <M> DVB Core Support

           <M> AV7110 cards
           [*]   AV7110 OSD support

           (enable every module in here)

File Systems --->
    <*> Kernel automounter version 4 support (also supports v3)

    Pseudo filesystems -->
        [*] /proc file system support
        [*] Virtual memory file system support (former shm fs)
        [*] /dev/pts file system for Unix98 PTYs

[Bearbeiten] Firmware

Vor dem laden / entladen Firmware überprüfen.

[Bearbeiten] Treiber laden / entladen

Unter Suse 10.1 einfach die TV-Hardware einrichten. Die Module werden dann automatisch geladen. Achtung: bei eigenen Modules außerhalb des Kernel-Baums kommt es dadurch zu massiven Probleme. Also besser die aus dem Kernel verwenden.

>>> Bitte ergänzen <<<

[Bearbeiten] Variante B - Separate Treiber von LinuxTV

Diese Methode ist prinzipiell flexibler, da bei einem Treiberupdate nicht der gesamte Kernel neu gebaut werden muß. Allerdings können die Module nicht(!) über modprobe geladen werden, das Laden erfolgt dann zwingend über das insmod.sh Script.

Hier werden nur die grundlegenden Dinge im Kernel selber aktiviert. Die Treiber für die DVB-Karten werden vom Kernel getrennt compiliert.

Kernelkonfiguration

wie in Variante A, jedoch mit dem Unterschied:

       Digital Video Broadcasting Devices --->
           [ ] DVB For Linux

[Bearbeiten] Download

Das Archiv wird im selben Verzeichnis in welches später auch VDR kommt entpackt und ein symbolischer Link auf DVB angelegt.

  • Source

http://www.linuxtv.org/downloads

cd $SOURCEDIR
tar xjvf /path/to/linuxtv-dvb-<VERSION>.tar.bz2
ln -s linuxtv-dvb-<VERSION> DVB
cd DVB
ln -s linux/include include
  • CVS
cd $SOURCEDIR
cvs -d :pserver:anonymous@linuxtv.org:/cvs/linuxtv login
cvs -z3 -d :pserver:anonymous@linuxtv.org:/cvs/linuxtv co dvb-kernel
ln -s dvb-kernel DVB
cd DVB
ln -s linux/include include

[Bearbeiten] Übersetzen

cd $SOURCEDIR/DVB/build-2.6
sh getlinks
make

[Bearbeiten] Firmware

Vor dem laden / entladen Firmware überprüfen.

[Bearbeiten] Treiber laden / entladen

cd $SOURCEDIR/DVB/build-2.6
sh insmod.sh load
sh insmod.sh unload