Expanding Thoughts
This is for all the Sm56 users, who  are searching for Linux driver for SM56 Modem.  Motorola has developed the modem driver for the Redhat 7.1 Linux. But unfortunately the Driver does not support the Kernel from RedHat Linux  7.2 on Wards . From the RedHat 7.2 kernels the contains a few lines of code in the slab.c that does not allows more usage of memory. But Jan Michel Ibanez has developed a Kludge for the SM56 Modem Driver that is available with this Tar file. From Red Hat 8.0 or from Kernel version 2.4.18-14 on wards there is new problem with the precompiled kernel of any version of Linux such as SuSe , Mandrake etc  that gives a Segmentation Fault with a call from SM56 driver called __wake_up we haven't fixed that yet.

Exclusively for the 2.4.18.14 and above versions of the Linux kernel users !!

 We have a new problem with the call __wake_up from SM56 Driver that is not fixed yet, and  of course I don't have the Source Code of SM56 Modem  Driver, simply working with the sm56.lib.

        The Only available Solution is that Just make a new kernel from the available new kernel source and make ppp related things as loadable modules and install the sm56-gcc3.tar.gz in that new Linux Kernel that will work properly with out any trouble. I have added the Fixscript stuff with the sm56-gcc3.tar.gz file to avoid the unresolved problem of depmod -a with sm56 driver.

        In Some Extraordinary circumstances the Fixscript may can fail and I recommend You to change that line  from the sminst.sh file in the /root/sm56-gcc3 directory.

Requirements For Compiling the Driver.

          You Need to have installed the Correct Kernel source and it headers in your Linux System depending upon your distribution (Red Hat ,SuSe ,Mandrake etc) and Kernel Version.

Known Problem With this Driver

Some Times the gcc will fail to compile the "kludge.c" . it is basically because of the include directory include directory does not exists in your system . normally the  RedHat have a link to the current kernel source with /usr/src/linux-2.4  if you are using the other distribution then you have to edit the /root/sm56/Makefile   with the corresponding  path that you have in your system.

I Found a solution from the net suggesting the below mentioned operations for making the new compiled kernel.

(cpp-2.96-98.i386.rpm and gcc-2.96-98.i386.rpm from rpmfind.net and with gnorpm removed the default gcc-3 and cpp-3 from my system and installed the 2.96 version of both files, and so I recompiled the kernel again, more detailed I did a  make mrproper; cp configs/kernel-2.4.18 i686.config .config;make oldconfig; make dep; make bzImage; make modules; make modules_install; make install this gave me a kernel-2.4.18-14custom kernel but compiled with gcc-2.96 so I booted this custom kernel and tried the sm56-gcc3 drivers and worked perfectly)
 

But , The Gcc 3.x works fine for me and I recommend that don't waste your time by downloading these things, because with out any of the operations that are mentioned in the above bracket, We can compile the kernel and sm56 will work fine there !!!

Wishing all the Linuxers....... happy Linuxing,

Rajesh Kizhuveetil. (Tech Guru - Cranium Inc. )

Contact : Rajesh Kizhuveetil

Thanks : Jan Michael Ibanz , Marvin Stodolsky  & Discuss@linmodems.org

Download Linux Utilities.

Disclaimer : Owners of the domain name "www.sm56.tk" are in no way affiliated or associated with any software firm apart from the parent company. Sm56 is the registered trade mark of Motorola company. Cranium Inc does not have any subsidiaries or franchisees. The words Red Hat Linux, Windows  etc. are the registered trademarks of their own parent companies and in no way associated with us. Any references to these and their products are for descriptive or reference purposes only and do not imply any association with the company or any of its authorised dealers.

Powered By www.craniuminc.tk

eMail: craniuminc@yahoo.co.uk