Smart Link Ltd.
http://www.smlink.com
Apr 12, 2002


Smart Link Soft Modem for Linux
-------------------------------


Introduction
============

This is Smart Link Soft Modem for Linux version 2.X. It provides
full-featured 56K Voice Fax Modem.


Features
========

Modem: V.92, V.90, V.34, V.32bis, V.23, V.22, V.21, Bell 103/212.
Flow control: V.42, MNP 2-4.
Compression: V.44, V.42bis, MNP5.
Fax: Class 1.
Voice: ADPCM voice compression, Digital Answering Machine.


Requirements
============

CPU: Intel Pentium II, Celron. AMD K6, Cyrix 400MHz or higher.
Memory: 64MB (may work also with 32MB).
OS: Linux 2.4 series.


Supported Hardware
==================

HAMR5600 based AMR/CNR/MDC/ACR modem cards on the following Southbridge
chips:
- Intel ICH0, ICH2
- Via 686A, 686B, 8231, 8233
- SiS 630
- ALI 1535.
SmartPCI56/561/562/563 based PCI modem cards.
SmartUSB56 based USB modem.


Installation
============

1. Unpack tar.gz package file:

	$ gzip -dc slmdm-2.X.X.tar.gz | tar xf -

2. 'cd' to package directory:

	$ cd slmdm-2.X.X

3. Review and edit (if need) 'Makefile'.

   Note: Probably you will want to correct in Makefile path to your
         local linux kernel header files:

         	KERNEL_INCLUDES=/path/to/linux/include

         Another way is to pass command line the parameter while
         running 'make':

         	$ make KERNEL_INCLUDES=/path/to/linux/include ...

4. Run 'make' command to compile package:

	$ make

5. Install.

   If you are going to use AMR/CNR/PCI modem type (as superuser):

	# make install-amr

   , or 

	# make install-usb

   if you are going to use USB modem.

   It will install:
   - modem kernel modules slmdm.o (modem core), slfax.o (fax)
     into '/lib/modules/<kernel-version>/misc' directory
     (standard linux modules' directory).
   - hardware specific kernel module slamrmo.o (for AMR/CNR/PCI) or
     slusb.o (for USB) into '/lib/modules/<kernel-version>/misc'
     directory (standard linux modules' directory).
   - country settings data file 'country.dat' into directory '/etc'.

   Also it will:
   - create character tty device entry '/dev/ttySL0' with major
     number 212 and symbolic link 'dev/modem'.
   - config you '/etc/modules.conf' file in order to provide
     possibility for loading the modem modules into kernel on demand
     automatically by kmod, when you are going to use them.

   Note: currently you cannot use both AMR/CNR/PCI and USB Modems.

6. Config modem country.

   You can configure your current country by using module parameters
   'country' or 'country_code'.
   Add 'options' directive line to file '/etc/modules.conf':

	options slmdm country=<MyCountry>

   , for example

	options slmdm country=USA

   , or use module parameter while module loading:

	# modprobe slmdm country=<MyCountry>

   Use 'slver -c' to see list of all supported countries and their
   codes (utility 'slver' may be found in package directory).

   Note: Command ATI7 shows installed country setting.

7. Using the modem.

   Installation will automatically create character tty device entry
   '/dev/ttySL0' with major number 212 and symbolic link '/dev/modem'.
   Use one of them as modem device for your dialing application.

8. Uninstallation.

   In package directory just type:

	# make uninstall


Using RPM
=========

1. Build SRPM and RPM from tar.gz package:

   In order to build RPM and SRPM run command:

	# rpm -ta slmdm-2.X.X.tar.gz

   It will build in your RPM directory:
   - slmdm-2.X.X-Y.src.rpm       - Source SRPM package
   - slmdm-2.X.X-Y.i386.rpm      - Core Modem RPM package
   - slmdm-amr-2.X.X-Y.i386.rpm  - AMR/CNR/PCI Modem driver
   - slmdm-usb-2.X.X-Y.i386.rpm  - USB Modem driver

2. Install

   To install Modem core package run:

	# rpm -i /path/to/slmdm-2.X.X-Y.i386.rpm

   To install Modem hw driver run:

	# rpm -i /path/to/slmdm-amr-2.X.X-Y.i386.rpm

   if you are going to use AMR/CNR/PCI Modem, or

	# rpm -i /path/to/slmdm-usb-2.X.X-Y.i386.rpm

   if you are going to use SmartUSB56 Modem.

   Note: currently you cannot install and use both AMR/CNR/PCI and USB Modems.

3. Uninstall.

	# rpm -e slmdm slmdm-<amr|usb>


Getting Started
===============

After successful installation and configuration modules will be loaded on
demand if you are using 'kmod' in linux kernel.

Also you can load modules by hand:

	# modprobe slamrmo

if you are using AMR/CNR/PCI modem, or

	# modprobe slusb

if you are using SmartUSB56 Modem.


Troubleshooting
===============

If you get an error message during installation/configuration or loading
the modules try to see it in FAQ file.

Please report the problem to your modem provider or to us
(support@smlink.com). 


Customization
=============

Look at 'editme.c' file in package directory.


Feedback
========

Please send any feedbacks to Smart Link. See the Smart Link
web site for contact information (www.smlink.com) or to
support@smlink.com.

