[Asterisk-bsd] NetBSD & zaptel
Michael Taylor
michael at omniscient.com.au
Fri Aug 5 00:19:06 CDT 2005
hi,
i am trying to get my Digium TDM400P (with 2x FXS and 2x FXO) to work on
my new NetBSD machine.
have managed to get the zaptel-netbsd-20050404.tar.bz2 sources to
compile in both lkm and kernel mode.
my problem is that all calls to wcfxs_getreg() seem to return 0 and the
FXO&FXS cards are not detected...
i.e. i get
ProSLIC on module 0, product 0, version 0
Module 0: Not installed
anyone had any luck getting this card to work on NetBSD?
got any ideas where to look? i can do the coding, but have run out of
ideas to debug the thing and have not found anything differing with the
linux drivers....
just a little background on what i have tried so far
1) the card works on an old Pentium III running Debian 3.0
2) the card works on the New machine (same one i am trying NetBSD on)
running Debian 3.1 (linux 2.6.8, zaptel-1.0.9)
3) in NetBSD the card is recognised (see attached dmesg.txt)
4) wfxs_getcreg() calls seem to work (see attached getcreg.txt) and
match with debug output i have made on the Linux machine.
so... it is in the __write_8bits() and __read_8bits() that things are
not working as expected....
one last thing, my system is...
$ uname -a
NetBSD gawain.omniscient.local 2.0_STABLE NetBSD 2.0_STABLE (ZAPTEL) #3:
Fri Aug 5 15:00:12 EST 2005
met at gawain.omniscient.local:/usr/src/sys/arch/i386/compile/ZAPTEL i386
hope to hear from you
michael taylor.
-------------- next part --------------
debug output on NetBSD
~~~~~~~~~~~~~~~~~~~~~~
in wcfxs_hardware_init
just before loop through detecting cards
-----debug code-------------
tsleep(sc, PZERO, "wcfxs_hardware_init", (hz / 2) + 1);
printf("WC_CNTL=0x%02x\n", WCFXS_READ1(WC_CNTL));
printf("WC_OPER=0x%02x\n", WCFXS_READ1(WC_OPER));
printf("WC_AUXC=0x%02x\n", WCFXS_READ1(WC_AUXC));
printf("WC_AUXD=0x%02x\n", WCFXS_READ1(WC_AUXD));
printf("WC_MASK0=0x%02x\n", WCFXS_READ1(WC_MASK0));
printf("WC_MASK1=0x%02x\n", WCFXS_READ1(WC_MASK1));
printf("WC_INTSTAT=0x%02x\n", WCFXS_READ1(WC_INTSTAT));
printf("WC_AUXR=0x%02x\n", WCFXS_READ1(WC_AUXR));
printf("WC_CS=0x%02x\n", __wcfxs_getcreg(sc, WC_CS));
printf("WC_SYNC=0x%02x\n", __wcfxs_getcreg(sc, WC_SYNC));
printf("WC_VER=0x%02x\n", __wcfxs_getcreg(sc, WC_VER));
for (x = 0; x < sc->sc_cards; x++) {
-----debug code-------------
-----debug outout-------------
WC_CNTL=0x31
WC_OPER=0x00
WC_AUXC=0xdf
WC_AUXD=0x1c
WC_MASK0=0x00
WC_MASK1=0x00
WC_INTSTAT=0x00
WC_AUXR=0x1c
WC_CS=0xfe
WC_SYNC=0x01
WC_VER=0x71
-----debug outout-------------
the only difference with the Linux (Pentium III, Debian 3.0) is the following entry
WC_AUXR=0x1d
-------------- next part --------------
...
FXS device: vendor=e159 product=1 subvendor=b100
wcfxs0 at pci3 dev 10 function 0: Wildcard TDM400P REV E/F
zaptel0 at wcfxs0: Zapata Telephony Interface
zaptel0: registered on major 196
zt_sysctl_init: added sysctl node 1035
zt_sysctl_init: added sysctl node 1036
zt_sysctl_init: added sysctl node 1037
zt_sysctl_init: added sysctl node 1038
zt_sysctl_init: added sysctl node 1039
zt_sysctl_init: added sysctl node 1040
zt_sysctl_init: added sysctl node 1041
wcfxs0: interrupting at irq 5
Setting FXS hook state to 0 (00)
Setting FXS hook state to 0 (00)
Setting FXS hook state to 0 (00)
Setting FXS hook state to 0 (00)
Registered Span 1 ('WCTDM/0') with 4 channels
Span ('WCTDM/0') is new master
Freshmaker version: 71
Freshmaker passed register test
ProSLIC on module 0, product 0, version 0
Module 0: Not installed
ProSLIC on module 1, product 0, version 0
Module 1: Not installed
ProSLIC on module 2, product 0, version 0
Module 2: Not installed
ProSLIC on module 3, product 0, version 0
Module 3: Not installed
...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: michael.vcf
Type: text/x-vcard
Size: 302 bytes
Desc: not available
Url : http://lists.digium.com/pipermail/asterisk-bsd/attachments/20050805/27d743ec/michael.vcf
More information about the Asterisk-BSD
mailing list