Whole document tree 8. FAQ/TroubleshootingHere is a set of common problems that you may face, along with their possible solutions. 8.1. Compiling Problems
You need to have your kernel source installed under /usr/src/linux/ If you have the kernel source installed somewhere else, just make the appropriate symlink. (see section 7.6 for more information) If you have that installed under /usr/src/linux/ , run bash$ make config bash$ make dep in /usr/src/linux/ 8.2. Problems while loading the modules.
Firstly, check that you are loading ptserial.o only after loading pctel.o. If that does not solve the problem, then probably you have compiled your modules for the wrong kernel version. Check your kernel version with the command bash$ uname -r and then verify if you have the right files in /usr/src/linux . Moreover, if you have a running kernel for a uniprocessor machine and have kernel source in /usr/src/linux/ that is configured for smp support, then you will get unresolved symbols. A method to check whether you have a smp supporting source is by running bash$ make menuconfig in /usr/src/linux/ and seeing whether smp support is selected. Another way to get rid of the unresolved symbols problem is to use the fixscript package from http://www.medres.ch/~jstifter/linux/fixscript.gz The procedure is to: Unpack the downloaded file with bash$ gzip -d fixscript.gz Make it executable with bash$ chmod +x fixscript Run it with bash$ ./fixscript old_module.o new_module.o This will create the new module, which you can try to load with bash$ insmod new_module.o If fixscript reports an error like objcopy: --redefine-sym: Symbol x is target of more than one redefinition then, fixscript can not help you. The best method is of course, to fix your kernel source and recompile the drivers. Make sure that you do a bash$ make clean before recompiling. 8.3. General modem based problems.
First of all, check if you really have the drivers loaded. You can do this by the command bash$ lsmod This command lists all the modules that you have loaded, and if you see something like
then, the modules are correctly loaded. If not, just load them and retry. Also check whether the file /dev/modem is symlinked to /dev/ttyS15 Remember, even if msdos or Microsoft Windows tells you that the modem is in com 3 or com 4, in linux the driver makes it appear in /dev/ttyS15 (the Microsoft equivalent of which will be com 16!!) If you are in doubt, I suggest that you re-create the device files by the commands bash$ rmmod ptserial bash$ rmmod pctel bash$ rm /dev/ttyS15 /dev/modem bash$ mknod /dev/ttyS15 c 62 79 NOTE: the numbers after /devttyS15 are distribution specific, and the c 62 79 works for Red Hat Linux. If you have any other distribution, please check your documentations. bash$ chgrp uucp /dev/ttyS15 bash$ chmod 666 /dev/ttyS15 bash$ ln -s /dev/ttyS15 /dev/modem This is a bug with the drivers for the kernel 2.4x series Refer to section 7.5 for more information. This is usually solved by adding ATX3 to your modem init strings. First of all, check if the drivers are loaded or not and then see, if any program is using the modem. If everything seems to be all right, try to find out the irq of your modem with the command bash$ lspci -v If the irq listed is obviously incorrect (like 0) (or does not tally with your M$-Windows configuration) then either use the setserial command bash$ setserial /dev/ttyS15 irq * (where * is the irq of your modem) or fiddle with the BIOS settings (see section 7.7) 8.4. I have a problem that is not listed in this section. What do I do?The output of the command bash$ tail /var/log/messages will give you a lot of information if anything goes wrong The normal output should be something like this
Mail the output you get to the <discuss@linmodems.org> list( more on this in section 9.2.2), and wait for a reply. |