-   Linux - Newbie (
-   -   printer modules not loaded; parallel printer doesn't work (

blinux1 06-22-2004 11:56 PM

printer modules not loaded; parallel printer doesn't work
Hey guys. Well, my problem is a hp deskjet 952C printer connected to the parallel printer port on my toshiba laptop. I found a giant monolithic set of HP printer drivers off of sourceforge and I was able to print with the 952 on my desktop computer. However, the same set of drivers didn't work on the laptop. They installed correctly from a tarball and were configured correctly, showing up in lists of available drivers for printer configuration apps. However, whenever I use printerdrake/printtool to add a printer to the system, It doesn't even notice a printer is connected to the computer. Here is the crappy output:

rmmod: module parport_pc is not loaded
rmmod: module parport_probe is not loaded
/lib/modules/2.4.21-0.13mdk/kernel/drivers/parport/parport_pc.o.gz: init_module:
Device or resource busy
Hint: insmod errors can be caused by incorrect module parameters, including invalid IO or IRQ parameters
Your may find more information in syslog or the output form dmesg modprobe: insmod /lib/modules/2.4.21-0.13mdk/kernel/drivers/parport/parport_pc.o.gz failed
modprobe: insmod parport_pc failed
rmmod: modlue parport_probe is not loaded


WARNING: Parallel printer kernel modules could not be loaded, your parallel printer may not work.

Well, not only did that come up, telling me that my modules were missing, but I also check ed to see if the parallel devices EVEN existed. Not only were there any lp0 symlinks, but there wasn't even a character special device like /dev/printers/0 to the parallel port. When I created the parallel port devices using mknod in a futile effort, the modules of course still weren't there, and my printer couldn't be installed correctly. Any suggestions as to where I should go?
Thanks. .

dalek 06-23-2004 01:21 AM

You need to make the modules in the kernel for the printer, then load them. Right now the system cannot see the port, that is why it gives you the error "Parallel printer kernel modules could not be loaded, your parallel printer may not work".

I'm not sure on Redhat but you should be able to install the kernel sources, if not there already, and make the modules and then load them in the kernel. It should be able to work then. Otherwise, rebuild the kernel or re-install Redhat with the printer connected and hope it sees it and makes the modules for you. Mandrake does, not sure about Redhat though.

Most of this depends on what kernel version you are using. Type in uname -r and post back what it says. Also get a listing from /usr/src and see if the kernel sources are installed. It should have directories in there called linux-2.*.* depending on version they used.

It should work, just got to get the system to see that port first. It is trying to drive blindfolded. :tisk:


:D :D :D :D

blinux1 06-23-2004 09:29 AM

Thanks for the explanation dalek. So the modules probably aren't even there, and thats why my kernel doesn't even recognize my port. Sorry that I didn't say earlier but I'm using Mandy 9.1 with 2.4.21-0.13mdk kernel version. Are you suggesting that during the installation Mandrake assessed that I wouldn't need the paraport modules because I didn't have a printer hooked up? So do you know how to integrate these files like "parport.o.gz" in the /lib/modules/2.4.21-0.13mdk/kernel/drivers/parport/ directory with the kernel? And what will it do? In my /usr/src directory i have nothing except a basically empty RPM directory -- that always happens with mandrake.

dalek 06-23-2004 09:57 AM

You should be able to get the kernel sources off the CD. Click start thingy, then configuration, then ?install software?, I think. You should get a screen wanting root password then search for kernel. You will get more than one. Make SURE it matched what you are using. It should then install them for you. I think they are on CD #3.

After that go to a console as root and do this:


cd /usr/src/linux

make menuconfig

Then look around till you find a screen that looks something like this.


  │ │                          <*> Parallel port support                                                    │ │
  │ │                          <*>  PC-style hardware                                                      │ │
  │ │                          <*>    Multi-IO cards (parallel and serial)                                │ │
  │ │[*]    Use FIFO/DMA if available (EXPERIMENTAL)                            │ │
  │ │[*]    SuperIO chipset support (EXPERIMENTAL)                              │ │
  │ │[*] Support foreign hardware                                                │ │
  │ │                          [ ] IEEE 1284 transfer modes                                                │ │

It may not look exactly like that but something close.

Where mine has a "*" you need to put a "M" for module. While you have the top one highlighted, use the arow keys to highlight help at the bottom then hit enter. It will tell you the name of the module. WRITE that down.

After you exit out of there type in this.


make modules && make modules_install
That should make and install the modules. Then type in


modprobe <name of module you wrote down>
That should load the module. Then try the printer then. You may need to go through the setup again but I would try it first. It may just work. You also need to look around in the /etc directory for a file called modules. Add that module, may be parport, to the file. That way it will load it automatically when you reboot next time.

I have never used this method but have read it works. As usual, there is very little that can't be done in Linux that requires a reboot.

Post back how it goes.


:D :D :D

blinux1 06-23-2004 11:11 PM

hey guys. Well dalek, thanx for your explanation about getting the module. However, after i ran menuconfig and marked parallel port support as a module, the make modules && make modules_install, it exited with an error code. It appears that the was

"No rule to make target `/usr/src/linux-2.4.21-0.13mdk/include/linux/modversions.h', needed by `ac.o'.

But I tried to install the printer again with printerdrake anyway, and the same errors as the first message came up. What I now know is this: i have been able to modprobe parrallel printer module "parport" and include it in the startup module loader file in the /etc/ directory. However, modprobe "parport_pc" returns errors and modprobe "parport_probe" registers not found.

What I think i'll do is try reinstalling first to see if it automatically detects. I'm not one to just shrug off problems but if I keep failing I'll switch to a different USB printer. Thanks for all your help though Dalek and I'm still open to suggestions!

dalek 06-23-2004 11:22 PM

The 2.4 version may want you to rebuild the whole kernel first. It may be that only 2.6 will let you do that way.

If you re-install and it don't work, post back. Actually, post back either way.


:scratch: :D :D :D

blinux1 06-24-2004 04:25 PM

Well, I reinstalled and in effect nothing happened. I first checked the /dev/ directory to see if I had a parallel port, but neither /dev/lp0 or /dev/printers/0 exists after a clean installation. Does it seem that install didn't even notice I have a parallel port on my laptop?

I still have the same error messages. module parport is working. Yet modprobe parport_pc or insmod parport_pc doesn't work. It may be my kernel version, yet that seems a little doubtful since the same mandrake install recognizes my parallel port on my desktop. I'm running dual boot on the laptop and Windows XP notices the parallel port so it can't be a hardware problem.

dalek 06-24-2004 10:59 PM

I just wonder if the 2.4 kernel can see that port. You may want to try a 2.6 kernel if you can. It should have newer driver at least.

I'm stumped. I'm also not good on laptops.

:D :D :scratch:

All times are GMT -5. The time now is 03:42 PM.