qlen - длина очередей приёма/передачи. Применительно к Tau-PCI влияет только на очередь передачи (по приёму размер всегда максимальный). Чем больше qlen, тем больше задержка, но меньше требования к латентности обработки прерываний. Идеальное (минимальное) значение qlen=2, оптимальное значение определяет параметрами системы и главным образом конфигурацией ядра (preeption model, early printk, etc.).
qlen-limit - задает предел для автоматического увеличения qlen в результате событий overrun/underrun. Такое увеличение реализовано в czaptel.c
Имеет смысл использовать только в production-системах, чтобы подстраховаться от бесконтрольного увеличения очередей из-за каких-нибудь проблем с драйверами или оборудованием.
ec-delay - задает задержку в миллисекундах при подаче звука на "вычитающий" вход эхоподавителя. По умолчанию, или если задано ec-delay=auto, то вычисляется на основе qlen. Не уверен что оптимально, нужно проверить (попробовать значения больше/меньше от auto). В идеале должно быть чуть меньше (не больше) времени прохождения данных от zaptel.c, через драйвер E1-карточки, через буфера, аппаратуру, линию E1, АТС, до hybrid-модуля (преобразования из 4х проводов в 2) и обратно. Значение вычисляемое по auto учитывает qlen, mtu (ограничения оборудования) и промежуточные буферы.
Про mtu в Tau-PCI:
PCI-контроллер использованный в этих платах не умеет работать в прозрачном "телефонном" режиме, только HDLC. Преобразование HDLC <=> phony производится в отдельной аппаратной логике. Поэтому на передачу может быть любой mtu, а на приём - только тот, что заложен в аппаратуру (загружаемую логику). До комплекта драйверов версии 6.0 в нижнем слое драйверов (taupci-ddk.c) был не оптимально настроен PCI-DMA, поэтому иногда возникали проблемы с маленьким MTU. В новой версии я это переделал, "железный" MTU уменьшили в два раза, путь передачи тоже новый. Поэтому сейчас mtu фактически определяет только кол-во прерываний. Более того, сейчас оптимальный mtu подбирается в czaptel.c исходя из ZT_CHUNKSIZE и ограничений оборудования.