If you run a 2.2.17 kernel, the following might help.
It's a personnal rewriting of their user guide, (p.30).
I did'nt experienced the 2.4 kernel, which makes all this an historic
This procedure is based on the 2.2.x kernal.
After installing the MultiModemZPX-PCI into an open PCI slot in your
computer, turn the power on and allow the operating system to boot to
the command prompt.
1. Log on as root.
Build a new kernel. Select the following options:
* Some of these are obvious. Install them from the sections:
"General Setup" : Networking support
Backward compatible /proc/pci (CONFIG_PCI_OLD_PROC)
PCI bridge optimization (only if the MultiModemZPX-PCI is poorly
recognized by the BIOS, or the BIOS is buggy.)
" Block Devices " Generic PCI IDE chipset support
Generic PCI bus-master DMA support
" Networking options " TCP/IP Networking
" Telephony Support " Linux Telephony support
" Network device support " ppp (point to point support)
" File systems " proc filesystem support
* Here are the options your kernel absolutely needs to support the
MultiModemZPX-PCI . So install them from the section:
" Character Devices " Standard generic (dumb) serial support
Extended dumb serial driver Support more than 4 serial
Support for sharing serial interrupts
* The modem board does not need the following options in the section:
" Character Devices " Autodetect IRQ on standard ports (unsafe)
Non standard serial port support
Support special multiport board
2. Determine the resources the modem is using by typing in one of the
The lspci | less
command displays informations about the PCI devices in the system too.
Look for the entry listing vendor id=11c1 and device id=480. Note the
IRQ the device uses as well as the first I/O address listed. The
default COM port of the modem is COM5. Using Windows, you must verify
this number. See on p. 19 of this guide.
An example of the output looks like this:
Bus 0, device 13, function 0:
Communication controller: Lucent (ex AT&T) Microelectronics L56DV+P
Medium devsel. Fast back-to-back capable. IRQ 5. Master Capable. No
Min Gnt=252.Max Lat=14
Non-prefetchable 32 bit memory at 0xe8000000 [0xe8000000]
I/O at 0xd800 [0xd801]
I/O at 0xdc00 [0xdc01]
I/O at 0xe000 [0xe801]
3. Configure the serial port of the MultiModemZPX-PCI
The BIOS automatically sets the PCI devices parameters.
In Windows(98), there are two COM ports. This OS automatically assigns
a new port number to the modem board. The Linux kernel 2.2.x holds
four default serial ports whose names are different from Windows.
The cat /dev/ttyS* will display the serial ports :
The default serial port number of the MultiModemZPX-PCI, is assumed to
be ttyS4 (->COM5)(see p.20 and 35 of the User Guide). As seen
previously, the " Extended dumb serial driver", and the" Support more
than 4 serial port " kernel options are required. If there is no
output for /dev/ttyS4, you must create a new device (it's a node, i.e.
a file) : type in one of the following commands :
makedev ttyS4 (If this does'nt work, that means there's no link to
execute it in the current directory, then use : ./makedev ttyS4)
mknod -m 666 /dev/ttyS4 c 4 68
The modem card comes with 3 I/O addresses. It's actually a range of
addresses. One would consider only the lower address (ie the "base
address") You do not have to create more than one device.
The /dev/cuax device is obsolete. The 2.2.x Linux kernel does not need
it. If the proper options of the kernel are not available, these
commnands will be pointless, or the device will not work.
Using the IRQ and first I/O address from the output obtained in Step 2
above, type in the following command:
setserial /dev/ttySx uart 16550A port y irq z baud-base 115200 spd-vhi
(where x= the serial device you want to use, y= the I/O address and z=
the IRQ, about the last parameters , have a look at the setserial
e.g., setserial /dev/ttyS4 uart 16550A port 0xd800 irq 5 baud-base
115200 spd-vhi skip-test.
Note: Your IRQ and Port may vary from this example. Substitute the IRQ
values in the example with the values for your computer as listed in
the results of the command issued in Step 2.
The above setserial command will place the modem on "COM5"
To set Linux to configure the modem at boot-up, use an editor such as
"jed" , " vi " or " Emacs ". You have to copy the setserial command in
one or more of the starting scripts. These files are
distribution-dependent. For instance, in RedHat, it might be the
/etc/rc.d/rc.local file. In Debian "potato", add the setserial command
to the /etc/rcS.d/S30setserial and/or /etc/rcS.d/S40networking file.
Once you did that, you should find a replica of it in the
/etc/setserial, /etc/init.d/networking and /etc/serial.conf files, as
the last line. If you don't see it, you must edit these files and add
it, as said. You should easily find these files in any other
distribution as Mandrake, Suse, Slackware etc. Please, have a look
through their documentation
4. Check your modem works fine.
* First, enter :
setserial -g /dev/ttyS4
If your modem is well identified, the output might be :
/dev/ttyS4, UART: 16550A, Port: 0xd800, IRQ: 5
* Now, you may install a dial-up utility as minicom, wvdial, etc.
Most of these programs use the /dev/modem symlink to refer to the
device. Create it typing in the command :
ln -s /dev/ttyS4 /dev/modem
Try out the settings. The dial-up utility detects the device and send
the init string to the modem. The modem should respond OK. You are
ready to dial.
* Configure your host and domain name, editing the /etc/hosts, the
/etc/hosts.conf files and the /etc/resolv.conf file.
* Then configure the point-to-point protocol, to connect your ISP.
>I found a driver on the multitech site that would force my modem to
>operate under com3 or com4 instead of com5. When I checked my
>settings under windows 98 the modem shows up as a COM4 device but
>run MS MSD.EXE from dos mode it shows no devices for com4 (see my
>out of win98 settings bellow) I've included all my Linux settings if
>anyone has any ideas.