Итог: (was [Hardware] ICH6 modem & slmodem )
Artem
u2u на nm.ru
Пн Сен 12 01:29:12 MSD 2005
Artem wrote:
>Доброго времени суток всем!
>
>Имеется встроенный модем
>
>Modem: Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC'97 Modem
>Controller (rev 3).
> IRQ 22.
> I/O at 0x2400 [0x24ff].
> I/O at 0x2500 [0x257f].
>
>Собрал для него slmodem-2.9.9e ( http://linmodems.technion.ac.il/packages/smartlink/ )
>Все вроде бы работает, но возник ряд вопросов:
>1. Почему-то модем соединяется максимум на 33000 (хотя в win он коннектится в среднем на 41000)
>
>
Строка инициализации:
+MS= 90,1,300,56000 (или +MS=92,1,300,56000)
долго вызывала у меня сомнения в необходимости (хотя, конечно, не мешала) - с моей старой АТС (млин, Бен-Ладена на них нету >:o ) долго не мог я определить - нужна ли она _реально_ для соединения по V90 или это линия у меня такая, полностью соотвествующая всем придуманным (и еще непридуманным) законам Мерфи, пока не выяснил, что формат команды следующий (для slmodemd, то бишь модемов Smart Link):
+MS= protocol,automode,minspeed,maxspeed
+MS=? - выводит возможные аргументы
+MS? - выводит текущие установки.
Вот согласно _дефолтным_ установкам (дефолтным-подчеркиваю) - все в норме:
AT+MS?
92,1,300,56000
OK
1 вопрос снят с повестки. (посмотрел с сожалением на свой старый Zyxel
- жаль что не usb a com - держал _железно_ 46666, нету у меня в ноутбуке
com-порта :-( )
>2. При дисконнекте - модем "думает" до пол-минуты прежде чем повесить трубку (уже после того, как pppd завершил свою работу). Как это вылечить?
>
>
От это уж они с pppd не могут договориться. Если набирать номер вручную
- то "паааложь трррубку (с)" можно сделать командами из терминала ( +++
ATH ) - в любое время (в том числе и после соединения с ppp-сервером).
При использовании же kppp - жму "disconnect" - pppd шустренько так
умирает, бросая slmodem на произвол судьбы, kppp тоже быстро "умывает
руки" - и выходит на исходную позицию. Модем продолжает истерически
пищать в линии, пока pppd на "том конце" не обнаруживает, что его
коллега pppd "на этом конце - "отдал концы"" - следует retrain (попытка
пересоединения - естесно, неудачная), и связь рвется по инициативе
сервера (проходит около 30-и секунд), после чего модем, обнаружив
короткие гудки в линии, делает долгожданное "паложь трубку".
Как подружить pppd с slmodemd? Любые предложения приветствуются.
>3. Может, кто-либо знает, как "услышать" звук модема?
>
>
Здесь сначала поясню - модем в ноутбуке, встроенного спикера в нем нет,
вывод звука модема осуществляется программным микшированием его с
основным звуком (в offtopic-е). Это подтвердилось изучением datasheet на
AC97 от Intel. Цитирую:
> Elimination of the On-board Modem Speaker
> ...<skip>...
> Modem subsystems currently rely on an on-board speaker for call
> progress monitoring.
> ...<skip>...
> There is a hardware-dependent analog solution and a
> hardware-independent digital
> solution (which supports analog or USB speakers).
> ...<skip>...
> Analog solution: The system designer can route an analog mix of the
> modem Tx and Rx signals through
> PHONE input of the AC '97 analog mixer.
> ...<skip>...
> Digital solution: The modem driver designer can route digital copies
> of the modem Rx (ADC) and Tx (DAC)
> streams (or perhaps just the digitized pre-echo-canceled modem Rx
> stream from the ADC) into the system-wide
> software audio mixer. As with the analog solution, this introduces a
> dependency on the user's preferred master
> audio volume and mute settings. For this technique to be
> cost-effective a soft modem implementation is
> probably required.
> For soft modem implementations AC '97 2.2 recommends the digital call
> progress monitoring solution.
В моем случае - здесь чистый "Digital solution". В микшере для модема -
лишь "кнопка" - "Снять/положить трубку".
Вопрос: каким образом можно "подмикшировать" звук из dsp1 (pcmC1D0c ,
pcmC1D0d) к основным сигналам (как вариант - добавить еще один регулятор
в микшер)? Возможно ли такое средствами ALSA ? (на извращения, насколько
я вижу, она богата) В offtopic-е то реализовано - чем _мы_ хуже? :-)
>4. Для модема использую snd_intel8x0m. В modinfo - у него куча различных параметров,
>но толком не указано какой из них для чего. Где найти доп. информацию по этим параметрам?
>
>
>
С этим я разобрался, пройдясь по исходникам и документации по alsa.
P.S. snd_intel8x0m самостоятельно не грузится при старте - пришлось его
прописать в modules. Почему так? Кто же грузит snd_intel8x0 (звуковуху)
? И почему про модем забывает? Куды крутить?
С уважением. Артем.
Подробная информация о списке рассылки Hardware