You have not given the details of the modem in your machine, but I suspect that the driver that you downloaded is similar to that which I have on my laptop. It probably installs a kernel module for your modem device (in my case 'slamr'), which is now being added to your kernel at boot time. This driver is working through the Intel 82801 chip, which can be used to generate modem tones when used in conjunction with the snd-intel8x0m kernel module.
I had problems with the slamr kernel module, so in my setup this module is blacklisted in my /etc/modprobe.d/blacklist so that it is not loaded at boot time. When I want to use the modem, I run the script shown below with a start option. This causes the slamr and snd-intel8x0m modules to be added. When I have finished using the modem, I run the script with a stop option. This causes the slamr and snd-intel8x0m modules to be removed. Note that the script requires root privileges and is kept in /etc/rc.d/.
I suspect that you need to modify your /etc/rc.d/init.d/hsf script to perform similar operations, so that the required kernel modules are only loaded when required.
If you look in /etc/modprobe.d/blacklist, you will see that the snd-intel8x0m module and other ALSA modules to support sound modems, are blacklisted with the comment
Quote:
For most people they just break sound support...
|
Code:
#!/bin/sh
#
# rc.slmodemd
#
# Start slmodemd daemon for SmartLink
#
## My addition to add country support
SLMODEMD_COUNTRY=AUSTRALIA
## My addition to add modem functions to the Intel 82801 CA/CAM AC'97 controller
CHIPSET_MODEM_MODULE=snd-intel8x0m
## My addition to nominate slmodemd kernel module
SLMODEMD_KERNEL_MODULE=slamr
slmodemd_start()
{
if [ -x /usr/sbin/slmodemd ]; then
echo -n "Starting SmartLink modem daemon: "
echo "/usr/sbin/slmodemd"
modprobe $CHIPSET_MODEM_MODULE ; \
modprobe $SLMODEMD_KERNEL_MODULE ; \
slmodemd --country=$SLMODEMD_COUNTRY --alsa &
fi
}
slmodemd_stop()
{
echo "Shutting down SmartLink modem daemon"
killall slmodemd
## My additions to remove the kernel modules that support the 1456VLQ4 Toshiba internal modem
sleep 1
modprobe -r $CHIPSET_MODEM_MODULE ; \
modprobe -r $SLMODEMD_KERNEL_MODULE
}
slmodemd_restart()
{
slmodemd_stop
sleep 1
slmodemd_start
}
# if [ "$SLMODEMD_DEVICE" ]; then readonly SLMODEMD_DEVICE; fi
## My additions to allow settings as environment variables
if [ "SLMODEMD_COUNTRY" ]; then readonly SLMODEMD_COUNTRY; fi
if [ "SLMODEMD_KERNEL_MODULE" ]; then readonly SLMODEMD_KERNEL_MODULE; fi
if [ "CHIPSET_MODEM_MODULE" ]; then readonly CHIPSET_MODEM_MODULE; fi
## Sanity checks
grep -q $SLMODEMD_KERNEL_MODULE.*o /lib/modules/$(uname -r)/modules.dep ||\
{ echo "rc.slmodemd: kernel module $SLMODEMD_KERNEL_MODULE.(k)o missing"; exit 1; }
grep -q $CHIPSET_MODEM_MODULE.*o /lib/modules/$(uname -r)/modules.dep ||\
{ echo "rc.slmodemd: kernel module $CHIPSET_MODEM_MODULE.(k)o missing"; exit 1; }
case "$1" in
'start')
slmodemd_start
;;
'stop')
slmodemd_stop
;;
'restart')
slmodemd_restart
;;
*)
echo "usage $0 start|stop|restart"
esac