Difference between revisions of "Conexant HSF modem drivers"

From ThinkWiki
Jump to: navigation, search
(Problem with Suspend2)
Line 30: Line 30:
 
The patch provided by Conexant fixes that). It looks like this command has to be run in console (rather than e.g. xterm,  
 
The patch provided by Conexant fixes that). It looks like this command has to be run in console (rather than e.g. xterm,  
 
as the menu issues some escape sequences that garble the output in xterm)
 
as the menu issues some escape sequences that garble the output in xterm)
 +
 
====Suspend/resume====
 
====Suspend/resume====
 
The hsfmodem driver may prevent your machine from going into suspend. If so, you may remove them prior to sleep by adding to your suspend script:
 
The hsfmodem driver may prevent your machine from going into suspend. If so, you may remove them prior to sleep by adding to your suspend script:
Line 38: Line 39:
 
  OnSuspend 12 service hsf stop
 
  OnSuspend 12 service hsf stop
 
  OnResume  12 service hsf start
 
  OnResume  12 service hsf start
 +
 +
====Problem with Suspend2====
 +
As of version 7.43.00.01, the HSF driver conflicts with [[Software Suspend 2]]. A patch is available from Linuxant.
 +
 +
For {{Fedora}} systems, the procedure for generating and installing a patched RPM is as follows:
 +
 +
<pre>
 +
# Download tarball and patches
 +
wget http://www.linuxant.com/drivers/hsf/full/archive/hsfmodem-7.43.00.01full/hsfmodem-7.43.00.01full.tar.gz
 +
wget http://www.linuxant.com/drivers/hsf/full/archive/patches/hsf-7.43.00.01-suspend2.patch
 +
wget http://www.linuxant.com/drivers/hsf/full/archive/patches/hsf-7.43.00.01-try_to_freeze-2.patch
 +
 +
# Build RPM
 +
mkdir hsf-workdir
 +
cd hsf-workdir
 +
tar xzvf ../hsfmodem-7.43.00.01full.tar.gz
 +
cd hsfmodem-7.43.00.01full
 +
patch -i ../../hsf-7.43.00.01-suspend2.patch -p1
 +
patch -i ../../hsf-7.43.00.01-try_to_freeze-2.patch -p1
 +
cd ..
 +
tar czvf hsfmodem-7.43.00.01full.tar.gz hsfmodem-7.43.00.01full
 +
rpmbuild -ta hsfmodem-7.43.00.01full.tar.gz
 +
 +
# Install
 +
rpm -e hsfmodem
 +
rpm -Uvh /usr/src/redhat/RPMS/i386/hsfmodem-7.43.00.01full-1.i386.rpm
 +
</pre>

Revision as of 23:55, 12 April 2006

The following modems, available in some ThinkPad models, use the Conexant HSF softmodem chip, and require an appropriate driver:

Two drivers are currently available.

The Smartlink smlink driver

The Linux driver for Agere modems from SmartLink supports both 2.4 and 2.6 kernels. However, it does not work with the newer Intel ICH6 controllers (used, e.g., on the ThinkPad R52 and T43; trouble on the G41 has also been reported). Some users report that AT commands work but dialing does not.

The Linuxant hsf driver

The commercial Conexant HSF driver from Linuxant supports these modem and work also on ICH6 models (e.g., ThinkPad R52, R51 and T43).

It offers free limited evaluation at 14.4kbps, and the full version costs $15.

Download: http://www.linuxant.com/drivers/hsf/full/downloads.php

This driver works well with reliable connections. It does not support voice or telephony features.

Installation

  • Fedora Core: use the provided RPMs.
  • Debian: run # dpkg -i hsfblablabla.deb. When asked you for the code, enter "FREE" for the 14.4kbps evaluation.
  • Gentoo: the hsfmodem package is in portage.

If you are running a 2.6.15.* kernel, you might consider running:

# hsfconfig --patch 

first, and apply the appropriate patch (there is an issue with hsfmodem and 2.6.15 tree that results in kernel oops. The patch provided by Conexant fixes that). It looks like this command has to be run in console (rather than e.g. xterm, as the menu issues some escape sequences that garble the output in xterm)

Suspend/resume

The hsfmodem driver may prevent your machine from going into suspend. If so, you may remove them prior to sleep by adding to your suspend script:

modprobe -r hsfmc97ich hsfserial hsfengine hsfosspec hsfsoar

The drivers should be automatically re-loaded upon resume by the hotplug system, if not, just manually restart hotplug or modprobe the individual drivers, adding this to your suspend script if needed.

If you use the hibernate script on Fedora Core, simple add this to /etc/hibernate/hibernate.conf:

OnSuspend 12 service hsf stop
OnResume  12 service hsf start

Problem with Suspend2

As of version 7.43.00.01, the HSF driver conflicts with Software Suspend 2. A patch is available from Linuxant.

For Fedora systems, the procedure for generating and installing a patched RPM is as follows:

# Download tarball and patches
wget http://www.linuxant.com/drivers/hsf/full/archive/hsfmodem-7.43.00.01full/hsfmodem-7.43.00.01full.tar.gz 
wget http://www.linuxant.com/drivers/hsf/full/archive/patches/hsf-7.43.00.01-suspend2.patch
wget http://www.linuxant.com/drivers/hsf/full/archive/patches/hsf-7.43.00.01-try_to_freeze-2.patch

# Build RPM
mkdir hsf-workdir
cd hsf-workdir
tar xzvf ../hsfmodem-7.43.00.01full.tar.gz
cd hsfmodem-7.43.00.01full
patch -i ../../hsf-7.43.00.01-suspend2.patch -p1
patch -i ../../hsf-7.43.00.01-try_to_freeze-2.patch -p1
cd ..
tar czvf hsfmodem-7.43.00.01full.tar.gz hsfmodem-7.43.00.01full
rpmbuild -ta hsfmodem-7.43.00.01full.tar.gz

# Install
rpm -e hsfmodem
rpm -Uvh /usr/src/redhat/RPMS/i386/hsfmodem-7.43.00.01full-1.i386.rpm