[Asterisk-bsd] wcfxs does not probe my TDM11B
Jeff Rizzo
riz+asterisk at boogers.sf.ca.us
Thu Feb 17 12:13:37 CST 2005
This sounds like an issue I ran across with one of my boards when
porting the wcfxs driver to NetBSD. Based on what I saw, I think some
of the TDM boards have a problem where they don't return a consistent
PCI subvendor ID. You can force the wcfxs driver to match it by editing
wcfxs.c and adding a line to the wcfxs_ident with a subvendor ID of -1
(I've attached a patch below). The reason this isn't on by default is
because it makes the wcfxs driver wrongly match some wcfxo boards.
Here's the patch - you should be able to apply it by hand if it doesn't
apply cleanly.
+j
Staffan Ulfberg wrote:
>Hello,
>
>I've been playing around with Asterisk on my FreeBSD 4.11 machine for
>about a week, and installed a TDM11B card from Digium yesterday.
>When loading the kernel modules, however, the card is not recognized:
>
>multivac# /usr/local/etc/rc.d/zaptel.sh.sample start
>multivac# dmesg
>[...]
>Zapata Telephony Interface Registered on major 196
>multivac# kldstat
>Id Refs Address Size Name
> 1 5 0xc0100000 23b110 kernel
> 2 1 0xc1735000 15000 linux.ko
> 5 1 0xc1979000 2d000 zaptel.ko
> 6 1 0xc1966000 5000 wcfxo.ko
> 7 1 0xc19a6000 9000 wcfxs.ko
>multivac# pciconf -l | grep none
>none0 at pci0:7:4: class=0x060000 card=0x00000000 chip=0x30571106 rev=0x40 hdr=0x00
>none1 at pci0:12:0: class=0x030000 card=0x7c02174b chip=0x51591002 rev=0x00 hdr=0x00
>none2 at pci0:13:0: class=0x028000 card=0x0001b100 chip=0x0001e159 rev=0x00 hdr=0x00
>none3 at pci0:14:2: class=0x0c0320 card=0x12340925 chip=0x31041106 rev=0x51 hdr=0x00
>
>I've read about others that had problems with the wcfxo modules on
>FreeBSD, but decided to wait dealing with that for the moment.
>
>I tried compiling the latest svn version of zaptel-bsd. After fixing
>a trivial compile problem (an "int lim" being defined in C++ style in
>the middle of a function), these modules also load, but do not work
>any better (actually, they work worse, if possible, since with the
>latest svn version "cat /dev/zap/ctl" reports "device not configured".
>The port version reports "Invalid argument".
>
>I played around a bit more with the port version, and added some
>printfs. It appears that wcfxs_probe() is never actually called at
>all. The module is loaded, however, and it seems that
>wcfxs_sysctl_init() is called:
>
>multivac# sysctl -a | grep wcfxs
>zaptel.wcfxs.debug: 0
>
>Any ideas about what can be wrong? Would upgrading to FreeBSD 5 help?
>(I would really hope I do not need to right now...)
>
>Staffan
>_______________________________________________
>Asterisk-BSD mailing list
>Asterisk-BSD at lists.digium.com
>http://lists.digium.com/mailman/listinfo/asterisk-bsd
>
>
-------------- next part --------------
*** wcfxs.c.orig Thu Feb 17 10:00:46 2005
--- wcfxs.c Thu Feb 17 10:01:20 2005
***************
*** 1929,1940 ****
--- 1929,1941 ----
static struct wcfxs_ident wcfxs_ident_table[] = {
/* {vendor, device, subverndor, card info }, */
{ 0xe159, 0x0001, 0xa159, &wcfxs },
{ 0xe159, 0x0001, 0xe159, &wcfxs },
{ 0xe159, 0x0001, 0xb100, &wcfxse },
{ 0xe159, 0x0001, 0xa9fd, &wcfxsh },
+ { 0xe159, 0x0001, -1, &wcfxsh },
{ 0, 0, 0, 0},
};
static void wcfxs_dma_map_addr(void *, bus_dma_segment_t *, int, int);
static void
wcfxs_dma_map_addr(arg, segs, nseg, error)
More information about the Asterisk-BSD
mailing list