Debian – DAHDI 3.0.0 not assign spans and cannot generate configuration

asteriskdebian

I'm setting up a new fresh installation of Debian 10, Asterisk 16 and DAHDI 3.0.0. I have specific the Digium TDM410P 4 port analog card (PSTN) and trying to configure it with asterisk and dahdi. Unfortunately my card is detected from operating system and dahdi_hardware but cannot see it on span-assignments and dahdi_scan, so i can't configure channels and ports!

What wrong with this?

I try it to reinstall dahdi, modules, Asterisk even Debian but I still have not been able to figure out the problem.

lspci
02:06.0 Ethernet controller: Digium, Inc. Wildcard TDM410 4-port analog card (rev 11)

lspci -vvv
02:06.0 Ethernet controller: Digium, Inc. Wildcard TDM410 4-port analog card (rev 11) Subsystem: Digium, Inc. Wildcard TDM410 4-port analog card Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR-

dahdi_hardware
pci:0000:02:06.0 wctdm24xxp- d161:8005 Wildcard TDM410P

dahdi_scan
"No output here, nothing"

dahdi_genconf -vvvvv
Default parameters from /etc/dahdi/genconf_parameters Empty configuration — no spans Generating /etc/dahdi/assigned-spans.conf Empty configuration — no spans Generating /etc/dahdi/system.conf Empty configuration — no spans Generating /etc/asterisk/dahdi-channels.conf

dahdi_cfg -vvvvv
DAHDI Tools Version – 3.1.0-rc1

DAHDI Version: 3.1.0-rc1 Echo Canceller(s):

Configuration
Channel map:

0 channels to configure.

/etc/init.d/dahdi start
Loading DAHDI hardware modules: wctdm24xxp: done /usr/share/dahdi/waitfor_xpds: 106: /usr/share/dahdi/waitfor_xpds: astribank_is_starting: not found using '/etc/dahdi/assigned-spans.conf' Running dahdi_cfg: done.

cat /etc/dahdi/assigned-spans.conf
Autogenerated by /usr/sbin/dahdi_span_assignments on Sun 04 Aug 2019 10:07:50 PM EEST Map devices + local spans to span + base channel number

Best Answer

Although the TDM410 and the TDM800 are no longer 'supported' they can be made to work to get yourself out of a mess.

Warning: You're on your own with support.

The example here is using DAHDI 3.1.0 as I found myself in the same mess.

In file dahdi-linux-complete-3.1.0+3.1.0/linux/drivers/dahdi/wctdm24xxp/base.c add back in the PCI devices for the TDM410 and the TDM800 in my case.

static DEFINE_PCI_DEVICE_TABLE(wctdm_pci_tbl) = {
    { 0xd161, 0x2400, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wctdm2400 },
    **{ 0xd161, 0x0800, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wctdm800 },**
    { 0xd161, 0x8002, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wcaex800 },
    { 0xd161, 0x8003, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wcaex2400 },
    **{ 0xd161, 0x8005, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wctdm410 },**
    { 0xd161, 0x8006, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wcaex410 },
    { 0xd161, 0x8007, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wcha80000 },
    { 0xd161, 0x8008, PCI_ANY_ID, PCI_ANY_ID, 0, 0, (unsigned long) &wchb80000 },
    { 0 }
};