8-span TE820 card and interrupts

Home » Asterisk Users » 8-span TE820 card and interrupts
Asterisk Users 6 Comments

Over the years I have experienced a few interrupt issues when using some
of the Digium E1/T1 cards with Zaptel drivers, and usually resolved them
by disabling USB devices in the motherboard BIOS settings.

Now more and more systems are coming without PS/2 connections, so USB is
needed for the keyboard or KVM.

I never knew whether these conflict issues were down to the design of the
card, the motherboard, the Zaptel drivers or the kernel.

I need soon to build an 8-span E1 system using the Digium TE820 PCIe card,
and want to know whether I am likely to have to solve similar issues, or
if they are now history with newer kernels and DAHDI instead of Zaptel.

I would be interested in any comments from anyone with experience in this
area. Also, can anyone easily tell me in which version of DAHDI support
for the TE820 was introduced? (If not, I’m happy to go and search SVN)

Finally, does anyone have a feel for how much CPU power would be required
to run Meetme with DAHDI mixing if all 240 channels were active in various
conferences? (Yes, I know about ConfBridge, but my application currently
needs to use MeetMe).


6 thoughts on - 8-span TE820 card and interrupts

  • By design PCIe has dedicated channels for each port and interrupts are
    not an issue. There are some vendors that are moving all legacy
    devices to a USB based controllers in addition. PCIe is not like PCI.
    PCIe is serial in nature, not parallel.

  • My personal experience is these issues were a result of the BIOS
    using the system management interrupt to emulate a legacy keyboard.
    I.e., so you could plug in a USB keyboard and boot DOS on the system
    and have DOS think it was a PS/2 keyboard.

    The TE820, like the 5th generation dual/quad span digital cards,
    have an ability to grow latency in the audio path to acommodate
    systems that can’t guarantee < 1ms interrupt service times. So I
    would be surprised if you still have issues.

    2.6.0 was the first release that supports the TE820. (or
    2.6.1) will be tagged here very shortly.

    240 channels in meetme comming from an 8-span digital card? I would
    have to measure it…but my guess is a pretty beefy system. In this
    configuration, more speed on less cores would serve you better than
    more cores.


  • Would that advice apply if the 240 channels are distributed to a bunch of
    separate ‘meetmes’ or is the assumption that all 240 are in a single

  • Currently, the mixing in the kernel is always serialized on the
    “masterspan”, so regardless of how many conferences you have in the
    system only one CPU will do the mixing for all of them. So, I would
    say generally for meetme-based conferencing I would give preference
    to more power on each core as opposed to adding more cores.

    Hopefully in the next year I’ll find time in the future to work on
    the changes necessary to allow the conferencing to be spread out to
    the various cores. Probably just as everyone finally is able to
    switch to confbridge and not need meetme anymore.

  • In article <20120321151844.GA11473@digium.com>,
    Shaun Ruffell wrote:

    I think you misunderstood what I was asking – my fault for running two
    things together. The interrupt issues I experienced in the past were
    on systems that had a proper PS/2 keyboard on IRQ 12, and were nothing
    to do with the keyboard. They were due to the USB subsystem, even though
    I had no USB devices connected. Turning off all USB controllers in the
    BIOS would fix the interrupt issues, due to the E1 card then having an
    IRQ all to itself.

    I was just concerned that if interrupts were still an issue due to IRQ
    conflicts between the E1 card and the USB drivers, this solution
    would no longer be available to me if a system required a USB keyboard
    due to the lack of a PS/2 port.

    OK, thanks.

    Yes, I wondered about that, having studied how the Zaptel mixing works.
    Presumably, ConfBridge does thread-local mixing in user space and would
    be able to make full use of multiple cores?