# LTmodem & Kernel 2.6 problems

## moomin-papa

Hi,

I recently compiled kernel 2.6 but when I try to emerge my Lucent WinModem/Nvidia modules I get an error about modversions.h being missing.  I understand that this is not an isolated incident, but I have not yet been able to find a solution that works for me.

Thanks alot

------------------------------------

This aint good for my hangover   :Embarassed: 

----------

## justin sane

Do you have a /usr/src/linux symlink?  And does it point at your current kernel sources?

I don't know about the Lucent driver, but I know that's a requirement to get nvidia-kernel to compile.

----------

## moomin-papa

i have a /usr/src/linux folder....

Well i think its a folder, i'm runnin console only atm, is there a way I can check all of this?  It's not the same as my /usr/src/linux-2.6.4 folder neway.

------------------------------

This is not good for my hangover   :Embarassed: 

----------

## justin sane

ls -l /usr/src

If your source is in, for example, /usr/src/linux-2.6.5 then the line for /usr/src/linux should look like

linux -> /usr/src/linux-2.6.5

(with all the size/permissions stuff on the left of that, of course) if it's a symlink to your source.  If it's a symlink and it's pointing somewhere other than your current source, do this (as root.. again assuming linux-2.6.5 so replace that with your current source)

cd /usr/src

rm linux

ln -sf linux-2.6.5 linux

If you have a /usr/src/linux symlink pointing at your current kernel sources and it's still saying it can't find modversions.h you have another problem.. as long as /usr/src/linux points at a kernel that has actually been configured and compiled the ebuilds (for nvidia-kernel at least) should be able to find modversions.h

----------

## moomin-papa

I changed the symlinks over, but theres still no luck!

I still cant compile the ltmodem drivers, i think thats because part of it is a kernel module or sumthing, and I cant install the nvidia drivers until I get my net connection up and running lol, 

Thanks for the help neway

----------

## justin sane

For sure, the nvidia module should compile and install as long as your symlink points to the correct kernel sources and those kenel sources have been configured and compiled.

I don't know ablut the ltmodem driver, I'll have to take a look at it.. I have an old Lucent modem laying around here somewhere, maybe I can install that and give it a try (I need a modem in this pc anyway, because I'm moving soon and it'll take time to get broadband installed at the new place).

----------

## moomin-papa

Cool man, thx for your help so far, but still no luck lol

I even tried moving my old modversions.h file from my old kernel, but that still didnt work.

I think i may have to w8 till I get broadband b4 i can update my modem drivers, possibly the alpha3 release drivers will work but i cant download them lol  Plus i think some ltmodem-alk program will be needed for those aswell.

I guess i can w8 a couple weeks until I get broadband set up.

Thanks alot

----------

## justin sane

Well, oddly enough, the ltmodem driver installs fine here with 2.6.5.  It looks like it's a 2.2 and 2.4 driver, but Portage applies a patch to make it compatible with 2.6 (I think the same is true for the nvidia driver).  Again, I have to suspect something is wrong with your /usr/src/linux.  Since you've verified that the symlink is correct, maybe there's some configuration option you need to set in the kernel before it'll compile.  According to the docs for the ltmodem driver, CONFIG_MODVERSIONS has to be enabled, so go into /usr/src/linux and (as root) type 

```
make menuconfig
```

 go to Loadable Module Support and make sure Module versioning support is checked.  Exit out of menuconfig and save your new configuration.   Now do the following (again as root) 

```
make clean && make && make modules_install
```

 and if all goes well, install your new bzImage to /boot either by hand or by typing 

```
make install
```

Now, once you've done all that, try installing the ltmodem driver again.  If nothing else is wrong, it should work, but since you said it's not finding modversions.h I'm almost willing to bet this will make it work.  Note that you might or might not need to reboot to your newly compiled kernel before you can actually insmod/modprobe the ltmodem module (or any other modules, for that matter, since they're compiled with different options from the running kernel).  Also note that there are actually two modules, ltmodem and ltserial, I'm not sure which order you need to load them in but I'd assume modprobe will figure that one out for you.

----------

## moomin-papa

hey!

I have been using that option in building my kernel, seems just like its compiling wrong or sumthing.  I checked the config and it says something like Config Modversions=y

Im gonna download a more recent source and see if that works, cant use portage though cus ive no internet lol

Thanks alot for your help

----------

## justin sane

Well, I hate to recommend downloading another kernel if you're on dialup (how long does that take anyway?  guess I'll find out soon enough, since I'll be stuck doing the same thing) but I really can't think of anything else that might work.  I just think it's strange that the ltmodem driver compiled for me with no problems, other than a couple warnings.  I was expecting to have to figure out what's wrong with it, and it just compiled and installed with no trouble at all.

If it helps, I'm running 2.6.5-mm5-1 with the move-__this_module-to-modpost patch backed out and 4k stacks disabled (since nvidia hates both of these).  I have quite a few other patches in there too, but nothing that should affect ltmodem or nvidia drivers.

----------

## bigrare

I have gentoo-dev-sources installed on my box: Kernel Version ===>  2.6.5

I also have current version of ltmodem in portage, whatever it is...  LTModem works just fine for me...  For the most part.  I have been having some trouble with it, such as it's not doing DHCP over dialup and it's not autoloading the ltserial.ko module, but it works.  If it helps, I could post my kernel config after I get home.

Let me know.

==========

Don't forget, it works like this in 2.6:

```
make xconfig

make

make modules_install
```

Then it's a simple:

```
cp /usr/src/linux/arch/i386/boot/bzImage /boot/kernel-2.6.5

cp System.map /boot/System.map-2.6.5
```

With the obligatory reboot.

Afterwhich you'll need to redo:

```
emerge -k ltmodem
```

Not that you didn't already know that... :Wink: 

----------

## slestak

interesting, i have same problem with modversions.h missing.  My older kernels have it, but not my current.

```

root@toshiba linux # locate modversions.h

/usr/src/linux-2.6.3-mm4/include/config/modversions.h

/usr/src/linux-2.6.4-mm2/include/config/modversions.h

root@toshiba linux # uname -a

Linux toshiba 2.6.5-mm6 #2 Wed Apr 21 08:31:11 EDT 2004 i686 Celeron (Coppermine) GenuineIntel GNU/Linux

root@toshiba linux # cd /usr/src

root@toshiba src # ls -l

total 34

-rw-r--r--    1 root     root        26269 Apr 19 22:44 kernel-config.bak

lrwxrwxrwx    1 root     root           15 Apr 19 22:45 linux -> linux-2.6.5-mm6drwxr-xr-x   19 root     root         1248 Feb 26 13:37 linux-2.6.3-mm4

drwxr-xr-x   19 root     root         1280 Apr 19 22:12 linux-2.6.4-mm2

drwxr-xr-x   19 root     root         1280 Apr 21 23:59 linux-2.6.5-mm6

drwxr-xr-x    3 root     root           72 Apr 20 23:36 xorg-x11-6.7.0

root@toshiba src #

```

[/code]

----------

## dmvianna

I had the same problem, fixed with http://linmodems.technion.ac.il/packages/ltmodem/kernel-2.6/ltmodem-8.31alek.tar.gz. Don't forget to read EVERY readme you find plus http://linmodems.technion.ac.il/packages/ltmodem/kernel-2.6/mdk-2.6.3.txt and http://linmodems.technion.ac.il/packages/ltmodem/kernel-2.6/README.html. I had to make some small tweaks like mkdir missing directories and placing .ko files in there myself, but in the end it worked.

It seems to work faster than it should (I can't see no difference between the Lucent modem and LAN at work   :Shocked:  ). The only small detail I'm still dealing with is that I have to run 

```
/etc/init.d/lt_winmodem start
```

each time I want it to work.

```
rc-update add lt_winmodem default
```

does not load it at boot. Not a big problem, anyway.

I'm still far from knowing hot to make an ebuild, but I hope it is of help for you guys.

----------

## dmvianna

Actually, now it's solved and the driver works with no flaws. Look in https://forums.gentoo.org/viewtopic.php?t=167246&highlight=ltwinmodem to see how to solve it.

Cheers, D.

----------

## sog

near as i can determine, modversions.h isn't in the most recent versions of the gentoo kernel (i'm on gentoo-dev-2.6.7).

any thoughts on how i can get around this, or is my only answer to switch kernel sources?

----------

## dmvianna

I suggest not to use the driver that's in the portage tree. Read my first post two lines above this one. I'm back to typing /etc/init.d/lt_winmodem start, but it doesn't bug me anymore   :Very Happy:  , so...

----------

## sog

thanks for the tip, dmvianna. i'm trying to stick with the portage version a.) b/c it's easier for me (poor reason, i know), but b.) - more importantly - because this modversions.h thing is coming up in other install situations so i'd like to figure it out rather than bypass it.

so far i haven't needed my modem, but sooner or later i may find that your way is the only way tho.

any help on modversions would be appreciated.

----------

## sog

just going through some of my old threads and wanted to post my fix for this. the first problem i had was that the ltmodem packages weren't compatible with kernel 2.6, so i did an ACCEPT_KEYWORDS="~x86" emerge ltmodem and got around that. 

second problem was that that package - although compiling successfuly - had some problems with SAVE_FLAGS and RESTORE_FLAGS. the problem that solved this was removing SMP support in my kernel config. 

HTH.

----------

## opensas

Hey sog, tell me how did you manage to get that ltmodem driver working

I have a gentoo-dev-sources-2.6.7-r11 kernel

I have the SMP support disabled and the modversion stuff enabled

I could emerge ltmodem (I needen´t do the ACCEPT_KEYWORDS) but when I try to modprobe them, i get the following

```

tux root # lsmod

Module                  Size  Used by

ltmodem               534128  -

tux root # modprobe ltserial

FATAL: Error inserting ltserial (/lib/modules/2.6.7-gentoo-r11/ltmodem/ltserial.ko): No such device

tux root #

```

and dmesg tell me the following

```

ltmodem: module license 'Proprietary' taints kernel.

Loading Lucent Modem Controller driver version 8.26

Detected Parameters Irq=11 BaseAddress=0xa400 ComAddress=0xa000

ttyLT0 at I/O 0xa400 (irq = 11) is a Lucent Modem

ltserial: Hm, pci device struct addr for ltmodem is 0

Detected Parameters Irq=11 BaseAddress=0xa400 ComAddress=0xa000

ttyLT0 at I/O 0xa400 (irq = 11) is a Lucent Modem

ltserial: Hm, pci device struct addr for ltmodem is 0

```

Could you please tell what you did after the emerge ltmodem?

Did you have to create the /dev/modem symlink yourself?

Thanks in advance

Sas

P.S. So glad you could make it. I'm still struggling...

----------

## sog

sorry, opensas, i never did. 

i got it installed successfully, but it turns out that despite others success with my platform, the LTModem drivers weren't the correct ones for my modem. 

instead, i had to use the SLModem drivers in portage.

----------

## opensas

Hey Sog, thanks for your reply.

I've just been thru the same knightmare you've already suffered.

I tried with ltmodem until scanmodem told me that

```

Providing detail for device at PCI_bus 0000:01:07.0

  with vendor-ID:device-ID

       ----:----

Class 0780: 11c1:048c   Communication controller: Lucent Microelectronics V.92 56K WinModem (rev 02)

  SubSystem 11c1:044c   Lucent Microelectronics: Unknown device 044c

   Flags: bus master, medium devsel, latency 32, IRQ 11

   Memory at ed001000 (32-bit, non-prefetchable)

   I/O ports at a000 [size=8]

  

                  -----PCI_IDs-------                    --CompilerVer- 

    Feature List:  Primary  Subsystem Distr  KernelVer   kernel default  CPU

 ./scanModem test 11c1:048c 11c1:044c gentoo 2.6.7-gentoo-r11 3.3.3     i686

 == Checking PCI IDs through modem chip suppliers ==

 Vendor 11c1 corresponds to Lucent Technologies or subsidiary Agere Systems, Inc.

 Information is at:  http://www.agere.com/client/modem_dsp.html. Produced are both:

   1) modems identifiable from their primary PCI IDs and 

   2) soft modem Subystem chips requiring identification through codec readouts.

 

  Class 0703:  11c1:048c is still NOT supported under Linux, as of 2004_Dec_14

  It is a "software" modem without a digital signal processing (DSP) chipset.

  The ltmodem drivers from http://ltmodem.heby.de resources for DSP modems do NOT provide support,

    A dialout terminates with "No Carrier" or a Hang if usage of the ltmodem drivers is attempted.

```

that is, my 11c1:048c modem was nos supported

Then I tried with slmodem, but I had no luck.

Could you please send the output of lspci -v and lspci - nv to me?

Here are mines

```

lcpci -v 

0000:01:07.0 Communication controller: Lucent Microelectronics: Unknown device 048c (rev 02)

        Subsystem: Lucent Microelectronics: Unknown device 044c

        Flags: bus master, medium devsel, latency 32, IRQ 19

        Memory at ed001000 (32-bit, non-prefetchable)

        I/O ports at a000 [size=8]

        I/O ports at a400 [size=256]

        Capabilities: [f8] Power Management version 2 

lspci -nv

0000:01:07.0 Class 0780: 11c1:048c (rev 02)

        Subsystem: 11c1:044c

        Flags: bus master, medium devsel, latency 32, IRQ 19

        Memory at ed001000 (32-bit, non-prefetchable)

        I/O ports at a000 [size=8]

        I/O ports at a400 [size=256]

        Capabilities: [f8] Power Management version 2 

```

Did you have to do anything special to get slmodem to work

Ah, and one more question, does the gentoo livecd automatically detects your modem. 'Cause the thing is that the gentoo 2004.2 livecd DOES find a /dev/modem device. The problem is I don't know what modules and kernel options it uses.

Thanks a lot

Sas[/code]

----------

## sog

here's lspci -v:

```
0000:00:1f.6 Modem: Intel Corp. 82801CA/CAM AC'97 Modem Controller (rev 02) (prog-if 00 [Generic])

        Subsystem: IBM: Unknown device 0227

        Flags: bus master, medium devsel, latency 0, IRQ 11

        I/O ports at 2400

        I/O ports at 2000 [size=128]
```

and -nv:

```
0000:00:1f.6 Class 0703: 8086:2486 (rev 02)

        Subsystem: 1014:0227

        Flags: bus master, medium devsel, latency 0, IRQ 11

        I/O ports at 2400

        I/O ports at 2000 [size=128]

```

as for the Live CD, don't know (and don't have one handy) but i suspect not. the modem didn't do much until i found slmodem. 

as for the setup on that, not really, just followed instructions. best advice i can give is find the exact device name and chipset using Windows and Linux returns.

my original problem was that i was relying on the same drivers that others using my platform had, instead of the chipset. scanmodem is useful, but it wasn't until i Googled Lucent Softmodem AMR etc  that i found the SLModem drivers. incidentally, the AMR is the problem - Lucent Softmodem's typically are supported by LTModem, but the AMR's are not. hence the need for the SLModem.

----------

## opensas

Hi sog, thanks for your prompt reply.

Well, I guess your 8086:2486 is pretty far away from my 11c1:048c.

Too bad

I´ll have to learn to live bearing the idea that my winmodem is definitely not supported by linux   :Sad:   :Sad:   :Sad: 

Hey man, life is tough.

By the way, facing the fact that I´ll soon have to get a new modem, Is there anyone in special you could recommend me?

Saludos

Sas (the defeated)   :Rolling Eyes: 

----------

