# Conexant Modem Problem:  Can't Find /dev/ttySHSF0

## ViMan

I ran the following command: emerge hsflinmodem and after emerging, I ran hsfconfig and configured my modem (I was sure of all the details as I had ran the program listmdm under Windows to get all the information on the modem).  After running hsfconfig, the modules are loaded (3 hsf modules are loaded).  However, after rebooting, the modules are no longer there.  Moreover, although it informs me that "Your HSF modem should now be accessible as /dev/ttySHSF0", when I go to /dev I can not find an entry named ttySHSF0.  I have tried searching the forums and google, but to no avail.  Any ideas?  Thanks for your time.

----------

## pilla

Probably you are not loading the modules. They should be in /etc/modules.autoload

The newest version of modutils (2.4.22 in my system) complains about some modules being compiled with GCC 2 (which is the case with my Lucent modules), so you must use insmod -f to load them or downgrade your modutils.

As exercise, I leave to you to discover the module names that you must load  :Cool: 

----------

## ViMan

Here's the output of lsmod just after I installed hsflinmodem.

Module                  Size  Used by    Tainted: PF 

hsfserial              21792   1  (initializing)

hsfengine             868940   0  (autoclean) [hsfserial]

hsfosspec              21436   0  (autoclean) [hsfserial hsfengine]

NVdriver              988672  10  (autoclean)

vmnet                  18048   6 

vmmon                  18580   0  (unused)

My modules.autoload file is empty.  However, I do have a file in modules.d named hsf which contains the following.   

alias /dev/ttySHSF* hsfserial

alias char-major-240 hsfserial

alias /dev/ttyCUA* hsfserial

alias char-major-241 hsfserial

alias /dev/modem hsfserial

options hsfserial serialmajor=240 calloutmajor=241

Also, my modutils version is modutils-2.4.16-r0 if that helps.

----------

## ViMan

Furthermore, here are the object files for the modules that were created (in /lib/modules/2.4.19-gentoo-r5/misc/  

hsfbasic2.o

hsfengine.o

hsfich.o

hsfosspec.o

hsfserial.o

hsfvia.o

hsfyukon.o

Running lsmod gives me the following:

Module                  Size  Used by    Tainted: PF 

hsfserial              17088   1  (initializing)

hsfengine             879212   0  (autoclean) [hsfserial]

hsfosspec              20568   0  (autoclean) [hsfserial hsfengine]

However, there is no /dev/ttySHFS0 and after rebooting, if I try to insmod any of the *.o related with the modem, it gives me a problem.

----------

## pilla

What is the problem it gives when you try to insmod?

BTW, you need some modifications in your /etc/devfsd.conf 

For my Lucent, 

 *Quote:*   

> 
> 
> #/dev/ttySLT0 and /dev/modem symbolic links to /dev/tts/LT0
> 
> REGISTER        ^tts/LT0$       CFUNCTION GLOBAL symlink $devname modem
> ...

 

See if you have something under /dev/tts/

----------

## ViMan

Thanks for your help Bloody...

Here's the end of my /etc/devfsd.conf

# devfsd.conf ends here

LOOKUP	^(ttySHSF|modem$) EXECUTE nice /sbin/modprobe hsfserial

REGISTER	^ttySHSF0$ CFUNCTION GLOBAL symlink $devname modem

UNREGISTER	^ttySHSF0$ CFUNCTION GLOBAL unlink modem

Running ls -alh in /dev/tts/ gives me the following output:

total 0

drwxr-xr-x    1 root     root            0 Jan  1  1970 .

drwxr-xr-x    1 root     root            0 Jan  1  1970 ..

crw-r-----    1 viman    tty        4,  64 Jan  1 20:16 0

crw-rw----    1 viman    tty        4,  65 Jan  1  1970 1

----------

## pilla

have you restarted devfsd? 

from devfsd man:

 *Quote:*   

> 
> 
> SIGHUP The configuration file  is  re-read  and  any  shared  objects  are
> 
>               reloaded.  Then  the  mounted  device tree is scanned and synthetic
> ...

 

So, if you haven't restarted your computer yet, try "killall -HUP devfsd"

----------

## Decibels

I had the same problem with the HCF modem, but the fix should be the same. 

You need to add the information to /etc/modules.d/aliases.

Look here for exact details:

http://webpages.charter.net/decibelshelp/LinuxHelp2.html#hcfmodemLast edited by Decibels on Sun Dec 21, 2003 1:02 pm; edited 1 time in total

----------

## ViMan

I restarted devfsd but to no avail.  I had already tried the options contained in webpages.charter.net/decibelshelp/LinuxHelp2.html#hcfmodem (I did some searching before posting but thanks nonetheless).  The thing that I noticed is that the output of lsmod after the modules are supposed to be loaded is as follows:

Module                  Size  Used by    Tainted: PF 

hsfserial              17088   1  (initializing)

hsfengine             879212   0  [hsfserial]

hsfosspec              20568   0  [hsfserial hsfengine]

NVdriver              988672  10  (autoclean)

vmnet                  18048   6 

vmmon                  18580   0  (unused)

No new entries are added in /dev.  However, when I reboot the pc the modules are sometimes loaded and I sometimes have to restart devfsd for them to be loaded.  But again, when they are loaded, they are loaded as shown above.

Running /sbin/modprobe hsfserial gives me the following:

bash-2.05a# /sbin/modprobe hsfserial

Warning: loading /lib/modules/2.4.19-gentoo-r5/misc/hsfosspec.o will taint the kernel: non-GPL license - Copyright (C) 1996-2001 Conexant Systems Inc. All Rights Reserved.

  See http://www.tux.org/lkml/#s1-18 for information about tainted modules

Module hsfosspec loaded, with warnings

Warning: loading /lib/modules/2.4.19-gentoo-r5/misc/hsfengine.o will taint the kernel: non-GPL license - Copyright (C) 1996-2001 Conexant Systems Inc. All Rights Reserved.

Module hsfengine loaded, with warnings

Segmentation fault

However, it seems to have loaded the module (although the Segmentation fault worries me).  Here's the output of lsmod after manually running /sbin/modprobe hsfserial:

Module                  Size  Used by    Tainted: PF 

hsfserial              17088   1  (initializing)

hsfengine             879212   0  [hsfserial]

hsfosspec              20568   0  [hsfserial hsfengine]

NVdriver              988672  10  (autoclean)

vmnet                  18048   6 

vmmon                  18580   0  (unused)

Could the initializing mean that it was not able to complete initialization due to the segmentation fault when running /sbin/modprobe hsfserial so it has not completed initialization?  And what could the problem of the segmentation fault be?

Trying to just insmod the module instead of modprobing gave me the following:

bash-2.05a# /sbin/insmod hsfserial

Using /lib/modules/2.4.19-gentoo-r5/misc/hsfserial.o

/lib/modules/2.4.19-gentoo-r5/misc/hsfserial.o: unresolved symbol cnxthsf_ComCtrlGetInterface

/lib/modules/2.4.19-gentoo-r5/misc/hsfserial.o: unresolved symbol cnxthsf_OsModemThreadSchedule

I get other cases of unresolved symbols if I try to insmod any of the others (hsfengine or hsfosspec).  Also, if I try to stop the hsf module (hsfstop), it gives me the message:  "hsfserial: Device or resource busy"

I get other cases of unresolved symbols if I try to insmod any of the others (hsfengine or hsfosspec).  Also, if I try to stop the hsf module (hsfstop), it gives me the message:  "hsfserial: Device or resource busy"

I read through the FAQ and it told me the following:

7) I installed the driver, and now the /dev/ttySHxF0 or /dev/modem device is

   supposed to be there but it doesn't exist.

	On devfs-based systems (such as Mandrake), the missing device

	node is often a sign that the driver modules didn't load or initialize

	properly. Try "modprobe hsfserial", then check the /var/log/messages

	file or or run "dmesg" to see any kernel error messages that could

	provide a clue as to why loading of the driver failed.

I checked /var/log/messages and found nothing related to hsf and when I ran modprobe -l hsfserial, it didn't return anything.  On the other hand, when I ran modprobe -l NVdriver (just to check that this was only with hsfserial), it gave me /lib/modules/2.4.19-gentoo-r5/kernel/video/NVdriver.  So I believe that the problem is with the modules not being loaded and initialized properly.  Any ideas?  Do I have to enable MMX in my kernel?  I have an Athlon K7 processor which is identified as such by the kernel.  Thanks for your time...

----------

## Decibels

Hmmm, I have had that problem but I thought it was related to the answer I posted, I apparently didn't write anything about it in my notes.

I have noticed one thing though.  The ebuild of hsflinmodem and some of the help I have seen on the forum seems to confuse that there is a difference between the hcf and hsf modem.  And there is even a problem with some of the modems themselves. (from linux conexant site):

 *Quote:*   

> 5) My modem's PCI ID is 127a:1025 or 127a:2005 and it doesn't work
> 
> 	You probably should try the HCF driver. Some early HCF modems are
> 
> 	incorrectly identified as HSF in some versions of the PCI ID lists
> ...

 

I have never gotten the ebuild for this modem to work. I have always gone to the conexant site and got the drivers and installed them.

I would try that!! If you are sure that you have a HSF modem get that, if that don't work, try the HCF modem. But try it from the site also:

 Conexant Linux Modems Link 

----------

## ViMan

Thanks Decibel.  But I'm pretty sure that it's an HSF modem.  I found this out when I run listmdm.exe under Windows XP.  Also, I've already tried both hsf packages (the one in the portage tree and the one from their official site but to no avail).

----------

## ViMan

Switching to the vanilla sources ( 2.4.18 or 2.4.20 ) solved the problem.  I am now online with my Conexant Modem.  Thanks Decibel and Bloody...  I appreciated your help.

----------

## skarloey

ViMan:  It looks like this thread is months old now but I wondered if you ever got this to work with the gentoo-sources kernel?  That's what I am using but will go to vanilla if I have to.

----------

