This is probably because the system is trying to use the wrong irq or the wrong ttyS*.
If it is an external modem it will likely be /dev/ttyS0 (com1) and if it is an internal modem it will either be /dev/ttyS2 (com3) or /dev/ttyS4 (com5).
Type lspci -v at the command line, and look for your modem. Here's mine:
$ lspci -v
00:08.0 Communication controller: TOPIC SEMICONDUCTOR Corp TP560 Data/Fax/Voice 56k modem
Subsystem: TOPIC SEMICONDUCTOR Corp TP560 Data/Fax/Voice 56k modem
Flags: medium devsel, IRQ 18
I/O ports at d800 [size=8]
And here is my /etc/rc.d/rc.serial
(in Mandrake-10.1, there also has to be a link /etc/rc.serial -> rc.d/rc.serial* for the modem to be discovered at boot):
#!/bin/sh
# rc.serial
rm -f /dev/modem
setserial /dev/ttyS2 uart 16550A irq 18 port 0xd800
ln -s /dev/ttyS2 /dev/modem
echo "Modem Ready"
Notice that I am using setserial. Not everyone does this, it depends on the distribution. See the Serial HOWTO at:
http://www.ibiblio.org/pub/Linux/doc...ial-HOWTO.html
Michael