Home       Servicebereich  Projekte  Kontakt  


Die CAPI Schnittstelle

CAPI stellt eine standardisierte Schnittstelle dar, die es Programmen ermöglicht die ISDN Dienste unabhänig von der installierten ISDN Karte zu nutzen. Unter Linux ist die CAPI Schnittstelle im Original Kernel integriert. Allerdings können über diese Kernelschnittstelle nur einige aktive ISDN Karten angesprochen werden. Passive Karten benötigen ein eigenes Kernelmodul, das die Kommunikation zwischen Kernel-CAPI Schnittstelle und der passiven ISDN Karte übernimmt.

Die älteren passiven ISDN Karten der Firma AVM konnten unter Linux direkt mit dem hisax Modul angesprochen werden. Hiermit war die Möglichkeit gegeben z.B. einen Internetzugang über ISDN einzurichten. Das Versenden von Faxen per ISDN war mit dieser Schnittstelle leider nicht möglich. Aktuelle passive ISDN Karten der Firma AVM können unter Linux nur noch über die CAPI Schnittstelle angesprochen werden.

Die Firma AVM stellt für Ihre passiven ISDN Karten ein CAPI Kernelmodul für ihre passiven ISDN Karten zur Verfüung. Mit diesem können die neueren Karten auch unter Linux eingesetzt werden. Zusätzlich ist bei allen Karten der Firma AVM der Versand und Empfang von Faxen unter Linux per ISDN möglich. Leider steht dieses Modul nur in binärer Form unter einer eigenen Lizenz zur Verfügung.

Das Modul ist gut in die SuSE Distribution integriert und wird bei neueren SuSE Versionen direkt mitgeliefert. Benutzer anderer Distributionen können sich das Modul vom FTP Server ftp://ftp.avm.de der Firma AVM herunterladen.

Auf dem Server stehen auf dem ersten Blick nur Pakete für die einzelnen SuSE Versionen zur Verfügung! Allerdings lassen sich diese Pakete auch in anderen Linux-Distributionen einsetzen.
In den Paketen wird ein binäres Objektfile und der Quellcode zum Erstellen eines Kernelmoduls mitgeliefert. Der Anwender muß sich das Modul jetzt nur selbst compilieren, was allerdings kein größeres Problem darstellt, wenn einige Abhängigkeiten beachtet werden.

Das Kernelmodul compilieren

Beim Download muss darauf geachtet werden, daß das Paket für die jeweilige Kernelversion passt. Die Pakete für ältere SuSE Versionen unterstützen die neueren Kernelversionen (wie 2.6) nicht. Das Paket wird mit Hilfe von tar -xzf <paketname> entpackt. Nach dem Entpacken ist das Verzeichnis ./fritz erstellt worden.

Das Modul arbeitet nur korrekt, wenn beim Compilieren die Headerdateien des aktuellen Kernels unter /lib/modules/<kernelversion>/build/include zur Verfügng stehen. Die gesuchte Kernelversion wird mit uname -r ermittelt.

Bei einem selbst compilierten Kernel wird hierfür ein Symlink angelegt:

  ln -s /usr/src/linux/include /lib/modules/`uname -r`/build 
Beim Distributionskernel müssen die Kernel-Header des aktuellen Kernels installiert werden. Unter Debian ist dieses das Paket kernel-headers-<kernelversion>, dass die Headerdateien unter /usr/src/kernel-headers-<kernelversion> ablegt. In diesem Falle wird der o.g. Symlink auf dieses Verzeichnis zeigen.

Das Kernelmodul wird (als root) mit dem Aufruf von

  fritz$ su
  fritz# ./install -k -c -p
installiert. Der Schalter -k ist notwendig um die Abfragen auf die aktuelle Kernelversion zu unterdrücken.

Probleme bei der Installation

Wenn das AVM Modul fcpci.o nicht geladen werden kann und der modprobe Aufruf mit IO- Fehlermeldungen abbricht, sollte man überprüfen ob man bei älteren Karten nicht schon das hisax Modul geladen hat.

Wenn das Isdnlog Paket weiterhin benutzt werden soll, um z.B. Anrufer mit Namen auf dem Monitor anzuzeigen, muss das capidrv Modul auf jeden Fall geladen werden. Dieses Modul stellt bildet die /dev/isdnctrl* Gerätedateien auf der CAPI Schnittstelle ab.


< zurück  | weiter >