sm56 Motorola может быть построен на различных микросхемах, как это ясно даже из упаковки. У меня модем sm56 на микросхеме Si3052, очень хорошо работает в Windows на второй скорости, - PCI Speakerphone modem, с АОН и т.д. (VendorID 1057:3052 1057:3020).
Наверное, редкое сочетание модем sm56 и MandrakeLinux 10 с ядром 2.6.x. Несложно устанавливается драйвер с помощью sm56*2.6*.i586.rpm с сайта Motorola, причем sm56 тогда DataFax Modem.
Оказывается файл sm56.ko просто подредактировать вручную, чтобы после модификации ядра 2.6.x этот "псевдомодуль" загружался. Скопируем sm56.ko в директорию для modules custom:
/lib/modules/....*custom/kernel/drivers/char/sm56.ko
Достаточно изменить одну запись, в моем случае:
vermagic=2.6.3-7mdk i586 --> vermagic=2.6.3-7mdkcustom PENTIUMIII
и укоротить внутри модуля sm56.ko какие-либо лишние символы, например, /usr/src/uni_drv/linux/ss_serv.c, чтобы общее кол-во бит не изменилось (2001172бит).
Кстати, любопытно, что за драйверы мы видим в тексте sm56.ko
/usr/src/uni_drv/linux/ss_serv.c и
/usr/src/uni_drv/linux/motomdm.c ?
Они превращают sm56 FaxModem в Speakerphone modem?
Мне кажется все рассуждения www.sm56.tk, а так же установка на основе исходного драйвера sm56**i386.rpm и sm56.lib относятся только к ядру 2.4. В ядре 2.6 они вызывают глубокий сбой. Изменения вносимые скриптами sm56-gcc эквивалентны проделанным вручную для ядра 2.6. Известный способ Intel537ep_si3052 without dsp совсем не для новичков. Скрипты Alex Komarov из Intel путанные, их сложно редактировать. То же самое, - sm56 обязательно опознается как неизвестное PCI устройство, регистрируется как char-device, и устанавливается с serial-драйвером binary only. Наверняка в основе лежит ассемблерная часть одинаковая с sm56.lib и происходящая из одного источника.
Данные о Si3052 частично имеются в интернете. Система команд такая же тайна, как, например, обратное преобразование Фурье, во всех видеокартах ATi. Поэтому наблюдение над sm56.ko для ядра 2.6.х может быть представляет интерес не только в пределах распределения Mandrake.
===========================================
Я должен извиниться, но в сущности все правильно, и "интуитивная догадка" правильная. Это послание отправляется с помощью подредактированного sm56.ko и кррр.
Речь идет об одном и том же месте. В тексте sm56.ko легко видеть:
....vermagic=2.6.3-7mdkcustom PENTIUMIII...depends=...............................author=S. Harris, K. Shao, A. Rosario, D. Gutson.................description=Motorola SM56 SoftModem Serial Driver license=Proprietary..
(я применял текстовый редактор mc, т.к. в верхней строке удобно отображается общее кол-во бит в файле. Точки здесь обозначают нули 00 Hex-редактора).
Итак, нужно сократить общее количество бит-байт до исходного (2001172). Я уменьшал количество точек непосредственно перед словом vermagic. Если укоротить одного из авторов, или точки после depends=, то файл загружается, но, действительно, появляются разнообразные ошибки, на стадии загрузки второй станицы html, подключения kppp.
Мне ближе подход с точки зрения микросхем. В UNIX'оидной платформе я самоучка.
Можно было бы привести иллюстрацию Si305x с сайта производителя
http://www.silabs.com/public/documents/mar.../en/3052_PB.pdf.
Si3052 и Si3054 отличаются интерфейсом PCI и AC-Link.
На сайте www.sm56linux.narod.ru цитируется совет закомменнтировать сточку
/usr/src/linux-2.4.18-6mdk/mm/slab.c:1099,
но в ядре 2.6 все равно появляются var/log/dmesg и еще одно дополнительное sm56 taint the kernel.
Привет, www.sm56.tk и Rajesh Kizhuveetil, Marvin Stodolsky, Jan Michel Ibanez.