Click to See Complete Forum and Search --> : Error inserting lirc_gpio


Davy
04-09-2005, 11:54 PM
greetings and salutations fellow linux denizens! i come to you once again to defer to your great wisdom, style, patience and wit.

being the guy that i am, i wanted to get my avermedia98 remote control to work with the avermedia card that i bought a while back.

so, i urpmi lirc and lirc was installed on my mandrake 10.0 community (2.6.3-4mdk) machine. i made lircd as i was told to do on the http://www.lirc.org/html/configure.html#lircd.conf page.

it should work, but the problem is that, now, when i try to start the config, i get this funny little error:


FATAL: Error inserting lirc_gpio (/lib/modules/2.6.3-4mdk/kernel3rdparty/lirc/lirc_gpio.ko.gz): Invalid request code

when i try to modprobe lirc_gpio, naturally, i get the same error. i did a manual check and lirc_gpio is present and waiting.

so what might be my problem and (better yet) how might i fix it?

i sit in anticipation for your answers and thank you's all around ahead of time for considering my plight!!! :)

je_fro
04-10-2005, 01:06 PM
I wonder if the module is supposed to still be gzipped?
Maybe bwkaz will be along with insight.

bwkaz
04-10-2005, 02:04 PM
You rang? :p

As to the actual problem, I'm not sure. It shouldn't matter whether or not it's gzipped, as modprobe is able to handle that if needed.

If you're using the 2.6 kernel, you probably have module-init-tools installed, correct? Do you have modutils installed? You should have module-init-tools but not modutils.

The reason I ask is that I've seen similar errors (though not exactly the same) when someone tries to use modutils' "modprobe" command on a 2.6 kernel. If that's not it, then I'm guessing it's something inside this module. Was that module compiled for your kernel, or did you install a precompiled version?

Davy
04-10-2005, 07:36 PM
after reading your modutil vs module-init-tools explanation, i tested for both to see with was installed... it would appear that neither was. so, i did: urpmi module-init-tools and it is installed now.

to see if it made any changed, i stopped the lirc daemon and turned it back on... there was no change and the error remains exactly the same.

as far as the other question of how this module is compiled: i don't understand the question. i did a urpmi lirc and the module came with the whole installation. if it helps any, the online update source for my urpmi is ftp://ftp-linux.cc.gatech.edu/pub/linux/distributions/mandrake/devel/community/i586/Mandrake/RPMS
if you can explain what the difference is, maybe it might help in my predicament. :confused:

bwkaz
04-11-2005, 07:04 PM
Originally posted by Davy
there was no change and the error remains exactly the same. Dang.

Well, so much for that idea.

i did a urpmi lirc and the module came with the whole installation. OK. I'm not sure what that does, but I'm guessing it installs a precompiled module. I'll check here if I can find that RPM on the FTP site you posted.

OK, that's odd. The RPM on that site doesn't seem to have any kernel modules in it at all, just the tools to run as a user.

Can you check the packages that your lirc package depends on? I can't, because I don't have rpm installed. (I believe the syntax is: "rpm -q lirc -R", without the quotes.) Hmm... this module might be part of the standard Mandrake kernel, actually.

if you can explain what the difference is, maybe it might help in my predicament. There's only a difference because kernel modules configure themselves to match a specific kernel, and can't (usually) be used in other kernels. Usually, when you install a kernel module, you either have to find one that was compiled for the exact kernel you're running, or you have to compile it yourself (which requires the kernel-source package to be installed).

Actually, if "rpm -qa | grep kernel" does not show kernel-source, then you didn't compile it yourself.

Davy
04-11-2005, 09:47 PM
rpm -q lirc -R

rpm -q lirc -R
chkconfig
rpm-helper
setserial
/bin/sh
/bin/sh
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
bash
libICE.so.6
libSM.so.6
libX11.so.6
libc.so.6
libc.so.6(GLIBC_2.0)
libc.so.6(GLIBC_2.1)
libc.so.6(GLIBC_2.1.1)
libc.so.6(GLIBC_2.1.3)
libc.so.6(GLIBC_2.3)
liblirc_client.so.0
libutil.so.1
libutil.so.1(GLIBC_2.0)

rpm -qa | grep kernel
kernel-source-2.6.3-4mdk
kernel-2.6.3.4mdk-1-1mdk

i needed the kernel sources, though a while back cuz i wanted install the nvidia drivers.

on a side note: i hope it's not related, but when i tried to install the nvidia drivers, i also couldn't get a module to run.

wanna know something else funny? when i do an lsmod, it shows that lirc_i2c (an alternative to the lirc_gpio module) running. (according to the documentation, you can either run the lirc_serial module, the lirc_gpio module or the lirc_i2c module). what's weird about it is that both my setup expressedly lists lirc_gpio... so i wonder why it's running. according to lsmod, i2c-core is using the lirc_i2c module.

something else: just for the fun of it, i did urpmi libutil.so.1 (one of the packages that lirc depends on) and it downloaded and installed the package. that shouldn't be able to happen, should it? why would it install a package when the packages it depends on haven't been installed?

EDIT: i just repeated what i did above for most of the packages... most of them haven't previously been installed.

Davy
04-13-2005, 07:59 AM
UPDATE:

alas, there's still no change... exactly the same error message whenever i try to get the lirc_gpio module to run.

:(

bwkaz
04-13-2005, 07:09 PM
Hmm... could you modprobe -r lirc_i2c (remove i2c_core first, if needed) and then a modprobe lirc_gpio? In other words, try manually unloading the perhaps-conflicting modules, and manually loading the one you want.

Davy
04-17-2005, 04:47 AM
... good idea.

but there's no change :( the original error message continues showing up.

lsmod now shows that lirc-dev and i2c_core are running, but no lirc_gpio module NOR lirc_i2c.

how would i go about checking a module? i mean, how would i go about making sure that the module existed and if it's working at all?

bwkaz
04-17-2005, 02:47 PM
Doing some searching for that error message showed that there are a couple of modules that you need to have aliases for in /etc/modprobe.conf, and/or maybe you just need to load them first.

The article I saw mentioned the bttv and tuner modules -- I would try modprobe'ing them, and then try lirc_gpio again. There was another article that said to double-check the compatibility of your TV card with lirc (apparently not all cards were supported, or something).

Davy
04-19-2005, 06:41 PM
i checked out my /etc/modprobe.conf and it made no mention of lirc_gpio, so maybe your right. can you point me in the direction of the paper so i can find out how to set it up?

the bttv module is already up and running fine. I also checked the lirc homepage for compatibility a while ago (before i tried lirc). according to its own documentation, by
tuner card is fully supported. (if you're curious, you can check out the .conf file along with a pic of the remote control):
http://lirc.sourceforge.net/remotes/avermedia/lircd.conf.avermedia.98
http://lirc.sourceforge.net/remotes/avermedia/tvphone98_0x00031461.jpg

i should have said it earlier, but thank you for your help. without you, i would have just plain given this up a long time ago. :)

bwkaz
04-21-2005, 06:44 PM
Well, here's the thread:

http://sourceforge.net/mailarchive/forum.php?forum_id=5339&max_rows=25&style=nested&viewmonth=200302

Search through it for "How to get remote control working", and you should find it. That person was using a different TV card (and likely a different remote), but it may be that the same setup would work. Here are the options he sets up in modprobe.conf:

#i2c
alias char-major-88 i2c-dev
options i2c-core i2c_debug=1
options i2c-algo-bit bit_test=1
#bttv
alias char-major-81 videodev
alias char-major-81-0 bttv
options bttv card=37 pll=1 radio=1
options tuner type=5 debug=1 pal=b The aliases will probably only help you if you don't use udev. Otherwise, double check the option values, and/or just preload i2c-dev, videodev, and bttv. (And perhaps tuner.)

Davy
04-25-2005, 10:40 AM
ah, yes... i see it

i did some searching and it seems like i use udev because i have a /dev directory. so i'll leave out the aliases.

i wonder how the options work. :confused: can you point me to some documentation on how to set those up, please?

i'll let ya'll know what's'a happening after i do some more tinkering; but as it stands, those options don't seem to work for me.

je_fro
04-25-2005, 11:47 AM
just because you have a /dev directory doesn't mean you're using udev.
here are a couple of links I use to write udev rules:
http://www.reactivated.net/udevrules.php
http://webpages.charter.net/decibelshelp/LinuxHelp_UDEVPrimer.html#UDEV