sullivam@us.ibm.com
paulsch@us.ibm.com
Joy Yokley - Edited document and coverted to DocBook v4.1 (SGML).
2001-01-12
Revision History | ||
---|---|---|
Revision .11 | 2002-07-18 | Revised by: PBS |
Revision .10 | 2001-07-18 | Revised by: PBS |
Revision .09 | 2001-05-21 | Revised by: PBS |
Revision .08 | 2001-05-09 | Revised by: JEY |
Revision .07 | 2001-04-30 | Revised by: JEY |
This document describes how to build, setup, and use the driver and user space application necessary for using the ACP (Mwave) Modem in the IBM Thinkpad™ 600, 600E, and 770 models which include the on board ACP modem hardware. The latest version of this document can always be found at http://www.ibm.com/linux/ltc/
The ACP Modem for Linux is a software based modem. Support software for the ACP modem is composed of a loadable kernel module and a user level application. Together these components support direct connection to public switched telephone networks (PSTNs) and support selected countries world wide. Refer to Section 6 of this document for the supported country list.
The modem also supports the standard communications port interface (ttySx) and is compatible with the Hayes AT Command Set.
ACP Modem software is continually under development. If you encounter bugs or usability issues, please contact us and we'll work to correct them.
The latest version of this driver is available from http://www.ibm.com/linux/ltc/
Thomas Hood's Debian GNU/Linux on IBM ThinkPad 600 and 600x page contains lots of useful information.
The ACP Modem provides the following features:
Standard asynchronous COM port interface (NS16550A UART compatible) operation
Bell-103/212A, CCITT-V.21/V.22,V.22bis protocols with data from 300 to 2400 bps
CCITT-V.32 protocols with data rates of 4800, 9600 uncoded, and 9600 bps Trellis coded (Optional)
CCITT-V.32bis protocols with data rates of 4800, 9600, 12000, and 14400 bps (optional)
ITU-T V.34 protocols with data rates from 2400 to 33600 bps.
Error correction via Microcom Network Protocol (MNP) classes 1-4
Use tar xzvf mwavem-yyyymmdd.tar.gz to unpack the distribution.
![]() | NOTE |
---|---|
As of mwavem-1.0.3 you must give ./configure the --enable-mwavedd argument in order to build the driver with the user space application. |
Use the make command to build all of the ACP Modem binaries.
![]() | NOTE |
---|---|
Your gcc package should be at least at the 2.7.x level. Check your /usr/src/linux/Documentation/Changes file for the minimum version information. |
![]() | NOTE |
---|---|
The mwavem.conf file is installed in the /usr/local/etc directory unless you specified otherwise during the build process |
[Telephony\Country List\33] CountryCode=00000021 Name=France SameAreaRule=0FG LongDistanceRule=0FG InternationsalRule=00EFG |
To set France to be your configured country in the [WORLDTRADE] section of mwavem.conf,
set Country=33 |
To load the mwave device driver use
insmod mwave |
modprobe mwave |
The following arguments may be supplied with the insmod command:
![]() | NOTE |
---|---|
The following arguments are not persistent from boot to boot (i.e. We are not saving them in the BIOS). |
The following code is an example of how to run DSP using ttyS1 resources:
insmod mwave mwave_3780i_irq=10 mwave_3780i_io=0x0130 mwave_uart_irq=3 mwave_uart_io=0x2f8 |
![]() | NOTE |
---|---|
The mwave is unable to check for resource conflicts. It is your responsibility to ensure that none of the resources specified conflict with other (commonly PCMCIA) devices. |
![]() | NOTE |
---|---|
The location of the mwavem.conf file can be specified as an argument to the mwavem application. If not specified the default location is assumed to be /usr/local/etc/mwavem.conf unless otherwise changed during the build process. |
Setup the serial driver to recognize the UART provided by the ACP driver.
setserial /dev/ttyS0 autoconfig |
![]() | NOTE |
---|---|
Substitute /dev/ttyS0 to match the serial port you have configured the DSP to use. |
![]() | NOTE |
---|---|
You may wish to create a symbolic link from your modem device to your serial device for convenience. Example: ln -s /dev/ttyS0 /dev/modem |
The ACP Modem is now available for use by your favorite dialing application.
The following sections list solutions to possible problems you may experience.
append="mem=130496K" |
![]() | NOTE |
---|---|
Your statement must reflect 576K less than you actually have. Specifying the full amount of memory will prevent the DSP from starting. In the above example, the formula used to arrive at the proper number was 1024 * nMB - 576 = nK. |
ACP Modem, UART settings IRQ 0x3 IO 0x2f8 tp3780::EnableDSP, pSettings->bDSPEnabled 0 failed Mwave Modem, ERROR cannot Enable DSP error fffffffb Mwave Modem, ERROR cannot perform Mwave Initialization retval fffffffb |
The ACP Modem requires the use of system resources for both the DSP and the UART provided by the ACP chip. For Linux systems, you will specify parameters to use for the duration of the boot with the insmod mwave command line parameters listed in Section 2.4.1.
Typically the configured resources are:
For the DSP: IRQ 10, I/O address 0x130-0x13f For the UART: IRQ 3, I/O address 0x2f8 (if using ttyS1) IRQ 4, I/O address 0x3f8 (if using ttyS0) |
For dual boot systems we recommeded that you use the Thinkpad™ Configuration Utility on Windows NT or DOS to configure these system resources.
Windows NT Thinkpad Configuration Utility Notes: (Under the Internal Modem --> Advanced selection)
Set IRQ sharing to disabled
Set 1st IRQ to your DSP IRQ (10 is recommened)
Set 2nd IRQ to your UART IRQ (i.e. ttyS1 is equivalent to COM2)
Set the DSP I/O address (0x130 is recommended)
Set the internal modem I/O address to the UART I/O address (i.e. 0x2f8 for COM2)
The DMA address is unused and can be set to anything.
![]() | NOTE |
---|---|
You may also specify parameters to use for the duration of the boot by using the insmod mwave line parameters listed in section Section 2.4.1. |
setserial /dev/ttySx autoconfig |
Replace ttySx with the serial port you have configured the ACP driver to use.
To test whether the serial port is setup correctly, run:
setserial /dev/ttySx |
The above command should return the following for serial port 1:
/dev/ttyS1, UART: 16550A, Port: 0x2f8, IRQ: 3 |
kernel: Mwave Modem, UART settings IRQ 0x3 IO 0x2f8 |
CONFIG_PPP=y CONFIG_PPP_ASYNC=m CONFIG_PPP_SYNC_TTY=m CONFIG_PPP_DEFLATE=m CONFIG_PPP_BSDCOM=m |
insmod mwave mwave_debug=0x0f |
Where the following debug trace information is selectable:
0x01 ACP Modem Device driver entry points 0x02 Systems Management API(SMAPI) 0x04 Hardware Interface (3780I) 0x08 Thinkpad Interface (tp3780i) |
Trace information is logged using the syslog utility.
Mwave Manager API trace points:
MANAGER_API_TRACE=1 MANAGER_API_DATA_TRACE=1 MANAGER_CORE_TRACE=1 MANAGER_SPECIFIC_TRACE=1 |
MEIO_API_TRACE=1 MEIO_CORE_TRACE=1 MEIO_SPECIFIC_TRACE=1 |
Mwave Modem application trace points:
MWMLW32_TRACE=1 MWMPW32_TRACE=1 MWMUTIL_TRACE=1 MWWTT32_TRACE=1 |
The following countries are supported by the ACP Modem driver
Table 1. List of Supported Countries
Country Name | Country Access Code |
---|---|
ALGERIA | 213 |
ANTIGUA_BARBUDA | 102 |
ARGENTINA | 54 |
ARMENIA | 374 |
ARUBA | 297 |
AUSTRALIA | 61 |
AUSTRIA | 43 |
AZERBAIJAN | 994 |
BAHAMAS | 103 |
BARBADOS | 104 |
BELARUS | 375 |
BELGIUM | 32 |
BERMUDA | 105 |
BOLIVIA | 591 |
BRAZIL | 55 |
BRUNEI | 673 |
BULGARIA | 359 |
CANADA | 107 |
CAYMAN_ISLANDS | 108 |
CHILE | 38 |
COLOMBIA | 57 |
COSTA_RICA | 506 |
CUBA | 53 |
CYPRUS | 357 |
CZECHREPUBLIC | 420 |
DENMARK | 45 |
ECUADOR | 593 |
EGYPT | 20 |
EL_SALVADOR | 503 |
FINLAND | 358 |
FRANCE | 33 |
GERMANY | 49 |
GREECE | 30 |
GRENADA | 111 |
GUATEMALA | 502 |
GUYANA | 592 |
HONDURAS | 504 |
HONG_KONG | 852 |
HUNGARY | 36 |
INDIA | 91 |
INDONESIA | 62 |
IRELAND | 353 |
ISRAEL | 972 |
ITALY | 39 |
JAMAICA | 112 |
JAPAN | 81 |
JORDAN | 962 |
KOREA | 850 |
KOREA_SOUTH | 82 |
KUWAIT | 965 |
LUXEMBOURG | 352 |
MALAYSIA | 60 |
MEXICO | 52 |
NETH_ANTILLES | 599 |
NETHERLANDS | 31 |
NEW_ZEALAND | 64 |
NICARAGUA | 505 |
NORWAY | 47 |
OMAN | 968 |
PAKISTAN | 92 |
PANAMA | 507 |
PARAGUAY | 595 |
PERU | 51 |
PHILIPPINES | 63 |
POLAND | 48 |
PORTUGAL | 351 |
PRC | 852 |
ROMANIA | 40 |
RUSSIA | 7 |
SAUDI_ARABIA | 966 |
SINGAPORE | 65 |
SLOVAKIA | 421 |
SLOVENIA | 386 |
SOUTH_AFRICA | 27 |
SPAIN | 34 |
ST_KITTS_NEVIS | 115 |
ST_LUCIA | 122 |
ST_VINCENT | 116 |
SURINAME | 597 |
SWEDEN | 46 |
SWITZERLAND | 41 |
TAIWAN | 866 |
THAILAND | 66 |
TRINIDAD_TOBAGO | 117 |
TURKEY | 90 |
TURKS_CAICOS | 118 |
U_K | 44 |
UKRAINE | 380 |
UNITED_ARAB_EMIRATES | 971 |
URUGUAY | 598 |
USA | 1 |
VENEZUELA | 58 |
VIETNAM | 84 |
VIRGIN_IS_BRITISH | 106 |
VIRGIN_IS_USA | 123 |
YEMAN | 967 |
YUGOSLAVIA | 381 |