Unable to open master device '/dev/zap/ctl'

tom-tom

Neuer User
Mitglied seit
18 Okt 2004
Beiträge
163
Punkte für Reaktionen
0
Punkte
0
Hi Folks

habe ein frische Debian mit kernel 2.6.8-11-1-386 installiert.
Danach habe ich die Debian updates installiert und mit den aktuellen Bristuff gezogen.Diesen durchkompiliert , was auch ohne fehler geklappt hat lade ich nun den Treiber make load bekomme ich folgende Ausgabe:

Server1:/usr/src/bristuff-0.2.0-RC8j/zaphfc# make load
make -C /usr/src/linux-2.6 SUBDIRS=/usr/src/bristuff-0.2.0-RC8j/zaphfc ZAP=-I/usr/src/bristuff-0.2.0-RC8j/zaptel-1.0.9 modules
make[1]: Entering directory `/usr/src/kernel-source-2.6.8'
Building modules, stage 2.
MODPOST
make[1]: Leaving directory `/usr/src/kernel-source-2.6.8'
modprobe zaptel
insmod ./zaphfc.ko
ztcfg -v

Zaptel Configuration
======================

SPAN 1: CCS/ AMI Build-out: 399-533 feet (DSX-1)

3 channels configured.

Notice: Configuration file is /etc/zaptel.conf
line 10: Unable to open master device '/dev/zap/ctl'

Kann mir jemand bitte sagen was ich falsch mache?
 
hi tom-tom!

Was hast Du eingetippt bevor Du "make load"
ausgeführt hast?

Was sagt denn:

cat /etc/zaptel.conf

ls -l /dev/zap/ctl

Gruß
britzelfix
 
Hi,

was soll ich den eintippen bevor ich make load ausführe?

Server1:/usr/src/bristuff-0.2.0-RC8j/zaphfc# ls -l /dev/zap/ctl
crw-r--r-- 1 root root 196, 0 2005-07-10 21:38 /dev/zap/ctl
Server1:/usr/src/bristuff-0.2.0-RC8j/zaphfc# cat /etc/zaptel.conf
loadzone = nl
defaultzone=nl

span=1,1,3,ccs,ami
bchan=1-2
dchan=3

span=2,1,3,ccs,ami
bchan=4-5
dchan=6
Server1
 
@tom-tom

was soll ich den eintippen bevor ich make load ausführe?

download.sh / compile.sh ?

Wenn Du eine Karte hast, dann brauchst Du die Zeilen
ab span=2 ... nicht mehr. Was ist Server1 ??

Bei diesen Einträgen solltest Du eher
"6 channels configured." bekommen.

Was sagt den cat /proc/interrupts ?

Gruß
britzelfix
 
tom-tom schrieb:
Debian updates installiert und mit den aktuellen Bristuff gezogen.Diesen durchkompiliert , was auch ohne fehler geklappt

cat /proc/interrupts
CPU0
0: 73614221 IO-APIC-edge timer
1: 398 IO-APIC-edge i8042
7: 0 IO-APIC-edge parport0
9: 0 IO-APIC-level acpi
14: 11 IO-APIC-edge ide0
15: 35478 IO-APIC-edge ide1
169: 2 IO-APIC-level ohci1394
177: 69654 IO-APIC-level eth0
185: 0 IO-APIC-level SiS 7012
193: 0 IO-APIC-level ohci_hcd
201: 0 IO-APIC-level ohci_hcd
209: 0 IO-APIC-level ehci_hcd
NMI: 0
LOC: 73614458
ERR: 0
MIS: 0

Und ja ich habe 2 Karten welceh auch 6 Channels configured ausspucken.
Server1 ist der Hostname.
 
@tom-tom

Ok, dann nehme ich mal an, daß compile.sh
schon ausgeführt worden ist. compile.sh springt
in das zaptel-dir und fürht "make install" aus.
Danach erst sind die /dev/zap/ctl devices vorhanden.

Ich hab das jetzt mal ausprobiert, die Meldung
"Unable to open master device '/dev/zap/ctl'"
bekomme ich wenn die Treiber nicht geladen
sind.

Du kannst mit "lspci" nachprüfen ob Du die Karten
richtig eingesteckt hast. :)

Nachdem Du "make load" bzw "make loadNT" ausgeführt
hast, kannst Du mit "dmesg" überprüfen ob die Module
geladen worden sind. ggf. auch Fehler gegeben hat.

Mit "cat /proc/interrupts" kann man nachprüfen, ob
sich 2 Geräte 1 Interrupt teilen. Bei den HFC-Karten
bekommt man Probs. weil sie im busmaster-dma
Modus laufen.

Mit "lsmod" kann man überprüfen ob zaptel und zaphfc
geladen sind.

Gruß
britzelfix
 
zaptel: no version for "struct_module" found: kernel tainted.
zaphfc: stop
zaphfc: stop
zaphfc: stop
zaphfc: stop
zaphfc: stop
zaphfc: stop


:) und nun?
 
@tom-tom

Das bedeutet, daß Du falsche header hast.

Du mußt das kernel-image und die dazu passenden kernel-header installieren.
Z. B. so:

apt-get install kernel-image-2.6.11-1-386
apt-get install kernel-headers-2.6.11-1-386

Gruß
britzelfix
 
Das habe ich nun alles gemacht bekomme nun aber beim Laden vom HFC Treiber diese Meldungen:

*** Warning: "zt_register" [/usr/src/bristuff-0.2.0-RC8j/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_transmit" [/usr/src/bristuff-0.2.0-RC8j/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_receive" [/usr/src/bristuff-0.2.0-RC8j/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_ec_chunk" [/usr/src/bristuff-0.2.0-RC8j/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_unregister" [/usr/src/bristuff-0.2.0-RC8j/zaphfc/zaphfc.ko] undefined!

auch asterisk startet nicht:
== Parsing '/etc/asterisk/zapata.conf': Found
== Unregistered channel type 'Tor'
== Unregistered channel type 'Zap'

Bin echt am Ende
 
hallo hab genau das gleiche Problem.....

"dmsg" spuckt folgendes aus:
Code:
Zapata Telephony Interface Registered on major 196
zaphfc: no version for "zt_receive" found: kernel tainted.
PCI: Enabling device 0000:02:09.0 (0104 -> 0107)
PCI: Found IRQ 9 for device 0000:02:09.0
PCI: Sharing IRQ 9 with 0000:00:1f.2
zaphfc: CCD/Billion/Asuscom 2BD0 configured at mem 0xc89ae000 fifo 0xc2f98000(0x2f98000) IRQ 9 HZ 1000
zaphfc: Card 0 configured for NT mode
zaphfc: 1 hfc-pci card(s) in this box.

"lspci" das:
Code:
0000:02:09.0 Network controller: Cologne Chip Designs GmbH ISDN network controller [HFC-PCI] (rev 02)

"make loadNT" erst das:
Code:
make -C /usr/src/linux-2.6 SUBDIRS=/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc ZAP=-I/home/linux/downloads/bristuff-0.2.0-RC8h/zaptel-1.0.8 modules
make[1]: Entering directory `/usr/src/kernel-source-2.6.11'
  Building modules, stage 2.
  MODPOST
*** Warning: "zt_register" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_transmit" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_receive" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_ec_chunk" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_unregister" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
make[1]: Leaving directory `/usr/src/kernel-source-2.6.11'
modprobe zaptel
insmod ./zaphfc.ko modes=1
ztcfg -v

Zaptel Configuration
======================

SPAN 1: CCS/ AMI Build-out: 399-533 feet (DSX-1)

3 channels configured.

Notice: Configuration file is /etc/zaptel.conf
line 8: Unable to open master device '/dev/zap/ctl'

jetzt das:
Code:
make -C /usr/src/linux-2.6 SUBDIRS=/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc ZAP=-I/home/linux/downloads/bristuff-0.2.0-RC8h/zaptel-1.0.8 modules
make[1]: Entering directory `/usr/src/kernel-source-2.6.11'
  CC [M]  /home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.o
/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.c: In Funktion »hfc_findCards«:
/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.c:1000: Warnung: use of cast expressions as lvalues is deprecated
/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.c:1000: Warnung: use of cast expressions as lvalues is deprecated
  Building modules, stage 2.
  MODPOST
*** Warning: "zt_register" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_transmit" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_receive" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_ec_chunk" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
*** Warning: "zt_unregister" [/home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko] undefined!
  CC      /home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.mod.o
  LD [M]  /home/linux/downloads/bristuff-0.2.0-RC8h/zaphfc/zaphfc.ko
make[1]: Leaving directory `/usr/src/kernel-source-2.6.11'
modprobe zaptel
insmod ./zaphfc.ko modes=1
insmod: error inserting './zaphfc.ko': -1 File exists
make: *** [loadlinux26NT] Fehler 1

Kernel: 2.6.11-1-686 und die gleichen Kernel Headers (gerade mit apt-get überprüft)

"cat /etc/zaptel.conf" sagt das:
Code:
# hfc-s pci a span definition
# most of the values should be bogus because we are not really zaptel
loadzone=nl
defaultzone=nl

span=1,1,3,ccs,ami
bchan=1-2
dchan=3

"ls -l /dev/zap/ctl " sagt das:
Code:
crw-rw----  1 root root 196, 0 2005-07-20 20:40 /dev/zap/ctl

"cat /proc/interrupts" sagt das:
Code:
          CPU0
  0:    1598668          XT-PIC  timer
  1:       2033          XT-PIC  i8042
  2:          0          XT-PIC  cascade
  7:          1          XT-PIC  parport0
  8:          1          XT-PIC  rtc
  9:          1          XT-PIC  cs46xx, uhci_hcd, zaphfc
 11:       2285          XT-PIC  eth0
 12:      62315          XT-PIC  i8042
 14:      14672          XT-PIC  ide0
 15:      24548          XT-PIC  ide1
NMI:          0
LOC:          0
ERR:          0
MIS:          0

So ich glaub das wars ersteinmal. Schonmal grossen Dank für die Hilfe und ACHTUNG bin Linux Einsteiger.
 
So .. (ich bin ja so stolz auf mich!!) habs hinbekommen -> leider nicht gerade elegant

Die Lösung war:
modprobe -r zaphfc
danach wieder
cd zaphfc
make loadNT
dannn funktioerte es. Wäre aber besser wenn mir jemand sagen könnte wie ich das Problem ohen ständige eingabe dieser befehle beheben kann.
nun mein zweites Problem:
Mein NTBA kriegt kein grünes Licht.. woran kann das liegen? Ich denke mal die Kabel stecken richtig.

Gruss P.J.
 
@tom-tom

Manchmal hilft es wenn man alles neu zu installiert.

@Party-Japaner

Shared-Interrupts; was sagt denn dmesg?

Gruß
britzelfix
 
also wirklich super merkwürdig... Ich muss jedesmal
modprobe -r zaphfc
make clean
"make loadNT" eingeben und imanchmal funktiert es auch nicht beim erstenmal sondern erst bei dreimaliger wiederholung.... komische Sache
habe mal den Befehl "dmesg" (was macht der eigentlich genau?)eingeben und folgene Ergebnisse bekommen:

Code:
Floppy drive(s): fd0 is 1.44M
FDC 0 is a National Semiconductor PC87306
eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
NET: Registered protocol family 17
NET: Registered protocol family 5
NET: Registered protocol family 10
Disabled Privacy Extensions on device c0320820(lo)
IPv6 over IPv4 tunneling driver
eth0: no IPv6 routers present
Zapata Telephony Interface Registered on major 196
zaphfc: no version for "zt_receive" found: kernel tainted.
PCI: Enabling device 0000:02:09.0 (0104 -> 0107)
PCI: Found IRQ 9 for device 0000:02:09.0
PCI: Sharing IRQ 9 with 0000:00:1f.2
zaphfc: CCD/Billion/Asuscom 2BD0 configured at mem 0xc89d6000 fifo 0xc27b8000(0x27b8000) IRQ 9 HZ 1000
zaphfc: Card 0 configured for TE mode
zaphfc: 1 hfc-pci card(s) in this box.
zaphfc: stop
zaphfc: shutting down card at c89d6000.
unregistered from zaptel.
zaphfc: freed one card.
Zapata Telephony Interface Unloaded
Zapata Telephony Interface Registered on major 196
PCI: Enabling device 0000:02:09.0 (0000 -> 0003)
PCI: Found IRQ 9 for device 0000:02:09.0
PCI: Sharing IRQ 9 with 0000:00:1f.2
zaphfc: CCD/Billion/Asuscom 2BD0 configured at mem 0xc89d6000 fifo 0xc2ec8000(0x2ec8000) IRQ 9 HZ 1000
zaphfc: Card 0 configured for NT mode
zaphfc: 1 hfc-pci card(s) in this box.
zaphfc: stop
zaphfc: shutting down card at c89d6000.
unregistered from zaptel.
zaphfc: freed one card.
Zapata Telephony Interface Unloaded
Zapata Telephony Interface Registered on major 196
PCI: Enabling device 0000:02:09.0 (0000 -> 0003)
PCI: Found IRQ 9 for device 0000:02:09.0
PCI: Sharing IRQ 9 with 0000:00:1f.2
zaphfc: CCD/Billion/Asuscom 2BD0 configured at mem 0xc89d6000 fifo 0xc4408000(0x4408000) IRQ 9 HZ 1000
zaphfc: Card 0 configured for NT mode
zaphfc: 1 hfc-pci card(s) in this box.
Registered tone zone 3 (Netherlands)

Wenn mir jemand sagt wie ich dieses Problem dauerhaft wegkriege und es vielleicht dann noch so hinkriege das sich der Treiber beim booten automatisch legt wäre ich super dankbar!!!

Also auf bald!
Gruss P.J.
 
@P.J.

Da wie Du schon sagst, der Fehler nicht eindeutig reproduzierbar ist,
würde ich zuerst mal das "sharing-interrupt-" Problem beseitigen.
Einen "tainted kernel" ist auch oft eine Fehlerursache, das mögen
manche anders sehen.

Gruß
britzelfix
 
Hmm... wie kriege ich das Problem oder die Probleme denn weg? Sorry bin ein echter Anfänger...
Dank dir!
 
@P.J.

IRQ's im BIOS: Die Karten auf separate Interrupts eintragen.
Für ausführliche Erklärungen kann man auch die Suchfunktion
benutzen. Die Probs treten recht häufig auf.

Gruß
britzelfix
 
hey!
habe jetzt erst wieder zeit mich ein wenig mit diesem problem zu befassen. Ich hab die Suchfunktion benutzt aber ich komm da auf keine grünen zweig. Hast du nicht vielleicht netterweise einen LINK für mich...
Danke
 
@P.J.

man muß die IRQ's im BIOS auf einzelne Steckplätze verteilen, damit
der zaphfc den Interrupt für sich alleine hat. Manche BIOSe unterstüzten
das, manche nicht. Manchmal hilft es auch die Steckplätze zu vertauschen.

Zu dem Problem, das nur manchmal auftritt gibt es keine allgemeine
Lösung. Am besten Betriebssystem, Hardware oder Software
upgraden/ändern, viel lesen und suchen. Das mußt Du schon alleine machen.

Gruß
britzelfix
 
Ein Lösungshinweis zum ursprünglichen Problem:
Bei mir läuft dir Bristuff Version (s.h. Sig.) wie die Standard Debian Version als Benutzer Asterisk. Das Problem war, das dieser Benutzer kein Zugriff auf /dev/zap hatte.
(Außerdem musste ich das Debian Startscript um den Asterisk Parameter "-G <gruppe>' ergänzen, damit chan_capi geladen wurde. Als Gruppe habe ich ebenso "asterisk" verwendet)
 
@cibi

Ja, stimmt schon, installiert man bristuff über eine ältere Installation,
dann werden einige user-group-rechte übergebügelt. Ich habe schon
daran gedacht kleine Scripte zu schreiben "asterisk-set-perms",
allerdings haben nur wenige asterisk als non-root laufen.

Gruß
britzelfix
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.