(henrik edberg AT bahnhof se)
Augusti 7, 2005
|Computer:||Acer Travelmate 803 Lci|
|Modem:||Agere Scorpio soft modem (AC'97)|
Providing detail for device at 0000:00:1f.6 with vendor-ID:device-ID ----:---- Class 0703: 8086:24c6 Modem: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 03) (prog-if 00 [Generic]) SubSystem 1025:001f Acer Incorporated [ALI]: Unknown device 001f 0000:00:1f.6 0703: 8086:24c6 (rev 03) Flags: bus master, medium devsel, latency 0, IRQ 10 -----PCI_IDs------- --CompilerVer- Feature List: Primary Subsystem Distr KernelVer kernel default CPU ./scanModem test 8086:24c6 1025:001f debian 2.6.10-5-686 3.3.5 3.3.5 i686
I've always dreaded getting soft modems to work in linux, but I found myself in the position where I, more or less, had no choice, so I decided to try it and found it to be much easier than I had expected! The new drivers were very easy to compile and install with the module-assistant in Ubuntu (and Debian) and the sl-modem daemon made loading the driver at startup with the right options easy as well.
If you should find this case study useful, or you find a bug in it, please let me know at henrik edberg AT bahnhof se so I can fix it.
I started by downloading the scanModem utility at http://linmodems.technion.ac.il/packages/scanModem.gz and ran gunzip scanModem.gz to unpack it and then sudo scanModem to produce the Modem/ directory with all the information scanModem found about my system and modem.
By looking through the ModemData.txt I learned that my modem controller was an Intel Corp. controller and that there was probably a Agere AC'97 modem attached to it. Looking in the manual of my Acer Travelmate 800 confirmed that it was actually an Agere Scorpio soft modem (AC'97). ModemData.txt said that I could either try just the slmodem driver or, if that didn't work slmodem with ALSA support. I figured that I'd start by trying with just the slmodem driver and see what happend, and as it happens it worked right away!
For me it was as easy as these simple steps:
I did NOT have to install the kernel-kbuild package mentioned in the scanModem generated files. I couldn't even find that package in Ubuntu.
DO use the following line as the email Subject Line, to alert cogent experts: scanModem, Ubuntu 5.04 kernel 2.6.10-5-686 Occassionally reponses are blocked by an Internet Providers mail filters. So do in a day also check the Archived responses at DISCUSS@linmodems.org Code updated on: 2005_June_02 ------------ -------------- System information ------------------------ Ubuntu 5.04 "Hoary Hedgehog" distro= on System with processor: i686 currently under kernel: 2.6.10-5-686 There are emerging complications under 2.6.10 and later kernels. Concerning code for: Smartlink slmodem : slmodem-2.9.9d.tar.gz at http://linmodems.technion.ac.il/packages/smartlink/ has the current fixes. Related messages are: http://www.datiku.com/documents/2610_migration.php http://www.ussg.iu.edu/hypermail/linux/kernel/0409.3/0345.html http://linmodems.technion.ac.il/archive-fourth/msg03736.html . http://linmodems.technion.ac.il/packages/smartlink/ has an upgrab-winmodem.tar.gz, providing a driver to alleviate inappropriate capture of a winmodem by a serial port driver. Lucent/Agere DSP/ltmodem: http://linmodems.technion.ac.il/archive-fourth/msg03733.html Concerning Intel-536ep and 537 http://www.ubuntulinux.org/wiki/IntelFiveThreeSixEPModemHowto/ http://linmodems.technion.ac.il/archive-fifth/msg00280.html http://linmodems.technion.ac.il/archive-fifth/msg00881.html The kernel was assembled with compiler: 3.3.5 with current System compiler GCC=3.3.5 /usr/bin/gcc -> gcc-3.3 Checking for kernel-headers needed for compiling. Kernel-header resources are not evident. Within your Linux distributions' installation CD or online resource (and mirrows), search for : Distribution PackageName OnLine ---------------------------------------------------------------------- Debian kernel-headers-2.6.10-5-686 http://www.debian.org/distrib/packages or install CD Ubuntu linux-headers-2.6.10-5-686 http://http://packages.ubuntu.com/ or install CD Debian & Ubuntu will also require installation of kernel-kbuild package Mandrake kernel-source-2.6.10-5-686 If not present on install CDs search http://mirror.switch.ch/ftp/mirror/mandrake/official/10.0/i586/Mandrake/RPMS/ http://rpms.mandrakeclub.com/rpms/mandrake/official/LByName.html, or other mirrors. SuSE kernel-source-2.6.10-5-686 , kernels are named k_deflt One of which must be installed if compiling drivers to match kernel 2.6.10-5-686 proves necessary. Within the output Modem/ folder, read CompilingDrivers.txt for details. A /dev/modem symbolic link is not set. USB modem not detected. 0000:00:1f.5 Multimedia audio controller: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03) Modem candidates are at PCI_buses: 0000:00:1f.6 Providing detail for device at 0000:00:1f.6 with vendor-ID:device-ID ----:---- Class 0703: 8086:24c6 Modem: Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 03) (prog-if 00 [Generic]) SubSystem 1025:001f Acer Incorporated [ALI]: Unknown device 001f 0000:00:1f.6 0703: 8086:24c6 (rev 03) Flags: bus master, medium devsel, latency 0, IRQ 10 -----PCI_IDs------- --CompilerVer- Feature List: Primary Subsystem Distr KernelVer kernel default CPU ./scanModem test 8086:24c6 1025:001f debian 2.6.10-5-686 3.3.5 3.3.5 i686 The soft modem Subsystem operates under a controller 8086:24c6 82801DB ICH4 capable of supporting under Linux AT LEAST modem Subsystem chips from manufacturers: Broadcom AgereSystems Conexant Intel Smartlink Smartlink software in ALSA mode may support this modem The Subsystem PCI id does not itself identify the modem Codec. Driver snd-intel8x0m may enable codec acquisition === Begin mc97 codec query === 1-1/0: Silicon Laboratory Si3036/8 rev 7 Subsystem 1025:001f has a SIL2 codec === End mc97 codec query === Beginning check for older ac97_codec modems. An older ac97_modem codec was not detected. Checking through information gathered from LinModem ARCHIVES Modem codec information on Subsystem 1025:001f is not in the records. There are the following routes toward support: Follow instructions in Modem/SoftModem.txt for identifying the modem under a Microsoft boot. Read Modem/Slmodem.txt instruction for doing the slamr diagnostic. Test the effectiveness of the hsfmodem package from http://www.linuxant.com/drivers/hsf/index.php. The debian Linux includes sl-modem packages with Smartlink drivers Install the kernel-headers-2.6.10-5-686.deb If necessary, set a symbolic link needed for slmodem compiling: # ln -s /usr/src/kernel-headers-2.6.10-5-686 /lib/modules/2.6.10-5-686/build as described in Modem/DriverCompiling.txt Then install the two sl-modem/slmodem packages and follow their directions. Thereafter the above slamr diagnositic can be run. Information on several modem chipset providers is provided below, because ambiguities remain on the correct choice of supporting software. == Checking PCI IDs through modem chip suppliers == Vendor=1025 is Acer, http://global.acer.com/ PC and latop manufacturer with devices including: 1025:5453 M5453 AC-Link Controller Modem Device 1025:0038 an AC97 link modem. Vendor 11c1 corresponds to Lucent Technologies or subsidiary Agere Systems, Inc. Information is at: http://www.agere.com/client/modem_dsp.html. Produced are both: 1) modems identifiable from their primary PCI IDs and 2) soft modem Subystem chips requiring identification through codec readouts. AgereSoftModem drivers only support AC97 or MC97 modem controllers with codecs charcterized by one of: SIL_id = 39 mc97 codec is SIL27 0x27 , as output by modem diagnostics under Microsoft Windows If uncertain, identity the softmodem codec through tests described in Modem/SoftModem.txt Support is currently ONLY for 2.4.n kernels and the following modem controllers: 8086:(2416 2426 2446 7196 2486 24C6) , with 8086 == Intel 1039:7013 SIS 1106:3068 VIA Access the soft modem software through code sponsor IBM at: http://www-3.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-52698 The SmartLink slmodem-2.9.9 may serve for modems not served by this AgereSystems software. If may be necessary to add -DMODVERSIONS to the compile flags, depending on whether your kernel was thus compiled. See http://linmodems.technion.ac.il/archive-fourth/msg01408.html Under the controller 8086:24c6 82801DB ICH4 , with modem subSystem 1025:001f Alternative supporting packages are the SmartLink slmodem-2.9.n using its proprietary slamr driver, or dependent on 8086:24c6 82801DB ICH4 , an Open Source driver from the ALSA package. See Modem/Slmodem-ALSA.txt for details. For SuSE 9.2 users, there is an update for driver slamr.ko loading during bootup. To find it easily, search for "slamr" within http://www.novell.com/linux/download/updates/92_i386.html SmartLink at http://www.smlink.com/ owns vendor IDs 163c, 2000, 2003, and 2004 The official download site is: http://www.smlink.com/main/index1.php?ln=en&main_id=40 , but http://linmodems.technion.ac.il/packages/smartlink/ has older packages and new fixes. For the emerging 2.6.10 kernels, use the slmodem-2.9.9d.tar.gz therefrom. Also DO download the ungrab-winmodem.tar.gz For details read Slmodem.txt, Slmodem-ALSA.txt and http://linmodems.technion.ac.il/slmodem-serial.html == Checking PCI IDs through modem chip suppliers == Vendor=8086 is Intel, Inc. producing HaM and 536ep host controller free (HCF) modems, 537 soft modem and AC97 and MC97 controllers managing a varierty of non-Intel soft modem Subsystems. These subSystems often have PCI_IDs assigned by the modem assembler, rather than the chip provider. Download available drivers through: http://developer.intel.com/design/modems/support/drivers.htm with Intel-537 types at: http://downloadfinder.intel.com/scripts-df/Filter_Results.asp?selCat=all&strOSs=39&ProductID=1230&page_nbr=2 Also check at: http://linmodems.technion.ac.il/packages/Intel/537/ for beta releases and perhaps Already compiled drivers for some Linux distributions A very detailed installation report cogent to 537 type modems is at: http://linmodems.technion.ac.il/archive-fifth/msg00541.html Setup call id with: Type 1 : When the phone line is not in use at+vcid=1 Type 2 : When the phone line is already in use on a call at+pcw=0 --------------------- ======= PCI_ID checking completed ====== Update=2005_June_02 Analyzing information for PCMCIA device at PCI Bus 02:06.0 GREPping for an inserted PCMCIA modem with filter: ommunication Analyzing information for PCMCIA device at PCI Bus 02:06.1 GREPping for an inserted PCMCIA modem with filter: ommunication If a PCMCIA modem is currently inserted and the sockets activated by /etc/init.d/pcmcia start then the PCMCIA bridge is NOT transparent. If the modem is known to have a Lucent digital signal processing chipset, then PCMCIA.tar.gz variant assembled by Joern Wustenfeld is necessary, rather than the standard ltmodem-8.31a10.tar.gz at http://ltmodem.heby.de/ GCCversion=3.3.5 For information on modem port creation under the UDEV device file system see: http://linmodems.technion.ac.il/archive-fourth/msg03299.html for Conexnant modems http://linmodems.technion.ac.il/archive-fifth/msg01177.html for Lucent/Agere DSP modems The following information blocks just query some ppp support items. ==================================================== grep -rs ppp /etc/modprobe.* ------------------------------------- /etc/modprobe.d/aliases:alias net-pf-24 pppoe /etc/modprobe.d/aliases:alias char-major-108 ppp_generic /etc/modprobe.d/aliases:alias ppp-compress-18 ppp_mppe ------------------------------------- Resident PPP support modules are properly uncompressed . COMM services are not active Be sure to read the section about ppp related modules and aliases in Modem/YourModem.txt DEVPPP=crw-rw---- 1 root root 108, 0 2005-07-27 13:42 /dev/ppp A /dev/modem symbolic link is not present No devfsd.conf file found, indicated absense of the devfsd daemon package for device file system (devfs) symbolic link support. DEVFSD= ---- dmesg queries ------- Local APIC disabled by BIOS -- you can enable it with "lapic" ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 7 9 11 12) *0, disabled. ACPI: PCI Interrupt Link [LNKG] (IRQs 10) *0, disabled. audit: initializing netlink socket (disabled) ibm_acpi: ec object not found apm: BIOS version 1.2 Flags 0x03 (Driver version 1.16ac) apm: overridden by ACPI. debian is not yet providing pre-compiled drivers for WinModems