First check with scanModem scanModem utility
To run scanModem, download it and run
$ gunzip scanModem.gz
$ chmod +x scanModem
become su -
$ su -
password
# cd to where scanModem is at
# ./scanModem
it will generate some files with the information that you need to determine the files/drivers that you need.
If the files generate something like

 For candidate modem in PCI bus:  00:08.0
   Class 0703: 163c:3052 Modem: Smart Link Ltd. SmartLink SmartPCI562 56K Modem
      Primary PCI_id  163c:3052
 Support type needed or chipset:        slamr

then you will need to download slmodem-2.9.11-20070505 or latest and ungrab-winmodem-20070505.tar.gz or latest one Upon installing a new(er) kernel, everytime a new compilation of slmodemd is needed. Here's an example of what is needed when one updates to a newer kernel. One needs to get the kernel-devel package also.
[olivares@localhost Documents]$ uname -a
Linux localhost.localdomain 2.6.20-1.2948.fc6 #1 SMP Fri Apr 27 19:48:40 EDT 2007 i686 athlon i386 GNU/Linux
[olivares@localhost Documents]$ su -
Password: 
[root@localhost ~]# yum install kernel-2.6.20-1.2962.fc6 kernel-devel-2.6.20-1.2962.fc6 kernel-headers-2.6.20-1.2962.fc6 -y
Loading "installonlyn" plugin
Setting up Install Process
Setting up repositories
core                      100% |=========================| 1.1 kB    00:00     
updates                   100% |=========================| 1.2 kB    00:00     
extras                    100% |=========================| 1.1 kB    00:00     
Reading repository metadata in from local files
primary.xml.gz            100% |=========================| 824 kB    02:33     
core      : ################################################## 2242/2242
primary.xml.gz            100% |=========================| 513 kB    02:25     
updates   : ################################################## 1234/1234
primary.xml.gz            100% |=========================| 1.6 MB    05:19     
extras    : ################################################## 5158/5158
Parsing package install arguments
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Downloading header for kernel-devel to pack into transaction set.
kernel-devel-2.6.20-1.296 100% |=========================| 737 kB    01:20     
---> Package kernel-devel.i686 0:2.6.20-1.2962.fc6 set to be installed
---> Downloading header for kernel to pack into transaction set.
kernel-2.6.20-1.2962.fc6. 100% |=========================| 227 kB    00:47     
---> Package kernel.i686 0:2.6.20-1.2962.fc6 set to be installed
---> Downloading header for kernel-headers to pack into transaction set.
kernel-headers-2.6.20-1.2 100% |=========================| 105 kB    00:34     
---> Package kernel-headers.i386 0:2.6.20-1.2962.fc6 set to be updated
--> Running transaction check
--> Populating transaction set with selected packages. Please wait.
---> Package kernel-devel.i686 0:2.6.20-1.2925.fc6 set to be erased
---> Package kernel.i686 0:2.6.20-1.2925.fc6 set to be erased
--> Running transaction check

Dependencies Resolved

=============================================================================
 Package                 Arch       Version          Repository        Size 
=============================================================================
Installing:
 kernel                  i686       2.6.20-1.2962.fc6  updates            16 M
 kernel-devel            i686       2.6.20-1.2962.fc6  updates           4.8 M
Updating:
 kernel-headers          i386       2.6.20-1.2962.fc6  updates           664 k
Removing:
 kernel                  i686       2.6.20-1.2925.fc6  installed          45 M
 kernel-devel            i686       2.6.20-1.2925.fc6  installed          14 M

Transaction Summary
=============================================================================
Install      2 Package(s)         
Update       1 Package(s)         
Remove       2 Package(s)         

Total download size: 21 M
Downloading Packages:
(1/3): kernel-devel-2.6.2 100% |=========================|  56 kB    00:57     
http://srl.cs.jhu.edu/YUM/fedora/core/updates/6/i386/kernel-devel-2.6.20-1.2962.fc6.i686.rpm: [Errno 4] Socket Error: timed out
Trying other mirror.
(1/3): kernel-devel-2.6.2 100% |=========================| 4.8 MB    13:32     
(2/3): kernel-2.6.20-1.29 100% |=========================|  11 MB    35:52     
http://mirror.cc.vt.edu/pub/fedora/linux/core/updates/6/i386/kernel-2.6.20-1.2962.fc6.i686.rpm: [Errno 4] Socket Error: timed out
Trying other mirror.
(2/3): kernel-2.6.20-1.29 100% |=========================|  16 MB    16:08     
(3/3): kernel-headers-2.6 100% |=========================| 664 kB    02:02     
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating  : kernel-headers               ######################### [1/6] 
  Removing  : kernel                       ######################### [2/6]
  Installing: kernel-devel                 ######################### [3/6] 
  Installing: kernel                       ######################### [4/6] 
  Cleanup   : kernel-devel                 ######################### [5/6]
  Cleanup   : kernel-headers               ######################### [6/6]

Removed: kernel.i686 0:2.6.20-1.2925.fc6 kernel-devel.i686 0:2.6.20-1.2925.fc6
Installed: kernel.i686 0:2.6.20-1.2962.fc6 kernel-devel.i686 0:2.6.20-1.2962.fc6
Updated: kernel-headers.i386 0:2.6.20-1.2962.fc6
Complete!
[root@localhost ~]# chkconfig slmodemd off
I do this to avoid for initscripts to look for empty modules that have not been created.  


[olivares@localhost ~]$ cd Downloads/slmodem-2.9.11-20070505
[olivares@localhost slmodem-2.9.11-20070505]$ make clean
make -C modem clean &&  make -C drivers clean &&  echo "done."
make[1]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/modem'
rm -f slmodemd modem_test modem_main.o modem_cmdline.o modem_test.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o dp_dummy.o sysdep_common.o
rm -f *~ *.orig *.rej
make[1]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/modem'
make[1]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
rm -f kernel-ver slamr.o slusb.o slamr.ko slusb.ko *st7554.o amrmo_init.o sysdep_amr.o *.mod.* .*.cmd *~
rm -f -r .tmp_versions
make[1]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
done.
[olivares@localhost slmodem-2.9.11-20070505]$ 

[olivares@localhost slmodem-2.9.11-20070505]$ uname -a
Linux localhost.localdomain 2.6.20-1.2962.fc6 #1 SMP Tue Jun 19 19:27:14 EDT 2007 i686 athlon i386 GNU/Linux

[olivares@localhost slmodem-2.9.11-20070505]$ ls /lib/modules/2.6.20-1.2962.fc6/build/
arch     include         lib             scripts
block    init            Makefile        security
crypto   ipc             mm              sound
drivers  kabi_whitelist  Module.symvers  symsets-2.6.20-1.2962.fc6.tar.gz
fs       kernel          net             usr
[olivares@localhost slmodem-2.9.11-20070505]$ 

[olivares@localhost slmodem-2.9.11-20070505]$ make KERNEL_DIR=/lib/modules/2.6.20-1.2962.fc6/build/
make -C modem all
make[1]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/modem'
rebuild profile...
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_main.o -c modem_main.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_cmdline.o -c modem_cmdline.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem.o -c modem.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_datafile.o -c modem_datafile.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_at.o -c modem_at.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_timer.o -c modem_timer.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_pack.o -c modem_pack.c
modem_pack.c: In function �modem_async_get_bits�:
modem_pack.c:100: warning: pointer targets in passing argument 2 of �m->get_chars� differ in signedness
modem_pack.c: In function �modem_async_put_bits�:
modem_pack.c:148: warning: pointer targets in passing argument 2 of �m->put_chars� differ in signedness
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_ec.o -c modem_ec.c
modem_ec.c: In function �tx_info�:
modem_ec.c:723: warning: pointer targets in passing argument 2 of �l->modem->get_chars� differ in signedness
modem_ec.c: In function �push_rest_data�:
modem_ec.c:811: warning: pointer targets in passing argument 2 of �l->modem->put_chars� differ in signedness
modem_ec.c: In function �rx_info�:
modem_ec.c:860: warning: pointer targets in passing argument 2 of �l->modem->put_chars� differ in signedness
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_comp.o -c modem_comp.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_param.o -c modem_param.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_debug.o -c modem_debug.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o homolog_data.o -c homolog_data.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o dp_sinus.o -c dp_sinus.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o dp_dummy.o -c dp_dummy.c
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o sysdep_common.o -c sysdep_common.c
gcc  -o slmodemd modem_main.o modem_cmdline.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o dp_dummy.o dsplibs.o sysdep_common.o
gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_test.o -c modem_test.c
gcc  -o modem_test modem_test.o modem_cmdline.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o dp_dummy.o dsplibs.o sysdep_common.o
make[1]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/modem'
make -C drivers KERNEL_DIR=/lib/modules/2.6.20-1.2962.fc6/build/
make[1]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
cc -I/lib/modules/2.6.20-1.2962.fc6/build//include -o kernel-ver kernel-ver.c
make all KERNEL_VER=2.6.20-1.2962.fc6
make[2]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
make modules -C /lib/modules/2.6.20-1.2962.fc6/build/ SUBDIRS=/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers
make[3]: Entering directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
  CC [M]  /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/amrmo_init.o
  CC [M]  /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/sysdep_amr.o
  CC [M]  /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/st7554.o
  LD [M]  /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/slamr.o
  LD [M]  /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/slusb.o
  Building modules, stage 2.
  MODPOST 2 modules
WARNING: could not find /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/.amrlibs.o.cmd for /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/amrlibs.o
WARNING: modpost: GPL-incompatible module slusb.ko uses future GPL-only symbol 'usb_deregister'
WARNING: modpost: GPL-incompatible module slusb.ko uses future GPL-only symbol 'usb_register_driver'
  CC      /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/slamr.mod.o
  LD [M]  /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/slamr.ko
  CC      /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/slusb.mod.o
  LD [M]  /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/slusb.ko
make[3]: Leaving directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
make[2]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
make[1]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
[olivares@localhost slmodem-2.9.11-20070505]$ 

[olivares@localhost slmodem-2.9.11-20070505]$ make
make -C modem all
make[1]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/modem'
make[1]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/modem'
make -C drivers KERNEL_DIR=/lib/modules/2.6.20-1.2962.fc6/build
make[1]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
cc -I/lib/modules/2.6.20-1.2962.fc6/build/include -o kernel-ver kernel-ver.c
make all KERNEL_VER=2.6.20-1.2962.fc6
make[2]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
make modules -C /lib/modules/2.6.20-1.2962.fc6/build SUBDIRS=/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers
make[3]: Entering directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
  Building modules, stage 2.
  MODPOST 2 modules
WARNING: could not find /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/.amrlibs.o.cmd for /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/amrlibs.o
WARNING: modpost: GPL-incompatible module slusb.ko uses future GPL-only symbol 'usb_deregister'
WARNING: modpost: GPL-incompatible module slusb.ko uses future GPL-only symbol 'usb_register_driver'
make[3]: Leaving directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
make[2]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
make[1]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
[olivares@localhost slmodem-2.9.11-20070505]$ 

[olivares@localhost slmodem-2.9.11-20070505]$ su
Password: 
[root@localhost slmodem-2.9.11-20070505]# make install
make -C modem all
make[1]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/modem'
make[1]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/modem'
make -C drivers KERNEL_DIR=/lib/modules/2.6.20-1.2962.fc6/build
make[1]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
cc -I/lib/modules/2.6.20-1.2962.fc6/build/include -o kernel-ver kernel-ver.c
make all KERNEL_VER=2.6.20-1.2962.fc6
make[2]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
make modules -C /lib/modules/2.6.20-1.2962.fc6/build SUBDIRS=/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers
make[3]: Entering directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
  Building modules, stage 2.
  MODPOST 2 modules
WARNING: could not find /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/.amrlibs.o.cmd for /home/olivares/Downloads/slmodem-2.9.11-20070505/drivers/amrlibs.o
WARNING: modpost: GPL-incompatible module slusb.ko uses future GPL-only symbol 'usb_deregister'
WARNING: modpost: GPL-incompatible module slusb.ko uses future GPL-only symbol 'usb_register_driver'
make[3]: Leaving directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
make[2]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
make[1]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
make install -C drivers KERNEL_DIR=/lib/modules/2.6.20-1.2962.fc6/build
make[1]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
cc -I/lib/modules/2.6.20-1.2962.fc6/build/include -o kernel-ver kernel-ver.c
mkdir -p /dev
mknod -m 600 /dev/slamr0 c 242 0 ;   mknod -m 600 /dev/slamr1 c 242 1 ;   mknod -m 600 /dev/slamr2 c 242 2 ;   mknod -m 600 /dev/slamr3 c 242 3 ;  echo -n
mknod -m 600 /dev/slusb0 c 243 0 ;   mknod -m 600 /dev/slusb1 c 243 1 ;   mknod -m 600 /dev/slusb2 c 243 2 ;   mknod -m 600 /dev/slusb3 c 243 3 ;  echo -n
make install KERNEL_VER=2.6.20-1.2962.fc6
make[2]: Entering directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
install -D -m 644 slamr.ko /lib/modules/2.6.20-1.2962.fc6/extra/slamr.ko
install -D -m 644 slusb.ko /lib/modules/2.6.20-1.2962.fc6/extra/slusb.ko
/sbin/depmod -a
make[2]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
make[1]: Leaving directory `/home/olivares/Downloads/slmodem-2.9.11-20070505/drivers'
install -D -m 755 modem/slmodemd /usr/sbin/slmodemd
rm -f -rf /var/lib/slmodem
install -d -D -m 755 /var/lib/slmodem
[root@localhost slmodem-2.9.11-20070505]#

[root@localhost slmodem-2.9.11-20070505]# cd ../ungrab-winmodem-20070505
[root@localhost ungrab-winmodem-20070505]# make clean
rm -f *.o *.ko *.mod.* .*.cmd *~
rm -f -r .tmp_versions
[root@localhost ungrab-winmodem-20070505]# make
make modules -C /lib/modules/2.6.20-1.2962.fc6/build SUBDIRS=/home/olivares/Downloads/ungrab-winmodem-20070505
make[1]: Entering directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
  CC [M]  /home/olivares/Downloads/ungrab-winmodem-20070505/ungrab-winmodem.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/olivares/Downloads/ungrab-winmodem-20070505/ungrab-winmodem.mod.o
  LD [M]  /home/olivares/Downloads/ungrab-winmodem-20070505/ungrab-winmodem.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
[root@localhost ungrab-winmodem-20070505]# make install
make modules -C /lib/modules/2.6.20-1.2962.fc6/build SUBDIRS=/home/olivares/Downloads/ungrab-winmodem-20070505
make[1]: Entering directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
  Building modules, stage 2.
  MODPOST 1 modules
make[1]: Leaving directory `/usr/src/kernels/2.6.20-1.2962.fc6-i686'
install -D -m 644 ungrab-winmodem.ko /lib/modules/2.6.20-1.2962.fc6/extra/ungrab-winmodem.ko
/sbin/depmod -a
[root@localhost ungrab-winmodem-20070505]#

[root@localhost ungrab-winmodem-20070505]# exit
exit
[olivares@localhost slmodem-2.9.11-20070505]$ su -
Password: 
[root@localhost ~]# modprobe ungrab-winmodem
[root@localhost ~]# modprobe slamr
[root@localhost ~]# slmodemd -c USA /dev/slamr0
SmartLink Soft Modem: version 2.9.11 Jul 16 2007 01:44:39
symbolic link `/dev/ttySL0' -> `/dev/pts/1' created.
modem `slamr0' created. TTY is `/dev/pts/1'
Use `/dev/ttySL0' as modem device, Ctrl+C for termination.

[root@localhost ~]# chkconfig slmodemd on



Hosted by www.Geocities.ws

1