Glomation
 
Advanced Search
Welcome, Guest. Please login or register.

Login with username, password and session length
May 22, 2012, 07:14:46 PM
News: Welcome to GLomation peer support forum
Pages: [1]
Topic Tools  
Read April 21, 2009, 10:05:47 AM #0
please_work

Can't insmod/modprobe any driver

Hi,

Whenever i attempt to insert a driver i get the following message (for this case the posted GPIO driver):

insmod: module 'GPIO_driver.ko' not found

I've compliled another driver against the GES 2.6.25 kernel and i get the same problem, saying it cannot be found. What i don't understand is that the name of the driver is actually GPIO-driver.ko, that is, there is a "-" and not a "_" in the file name.

I've tried using serial and USB to copy the file across, although in both cases i coped the driver from a shared linux drive using windows, but i've never seen this problem before on other similiar drivers/platforms/kernels. I would have used NFS and copied it directly but that gives some weird error when i try and mount a Ubuntu shared directory (RPC: failed to contact local rpcbind server (errno 5). lockd_up: makesock failed, error=-5. I enabled ). The shared directory works for other boards i have.

I had this problem with the factory supplied image and i recently re-flashed the kernel using this config file:
http://glomation.net/smf/index.php?action=dlattach;topic=4.0;attach=1

The CONFIG_MODULES flag is set, i can't see what else is wrong.

I've searched through the forums/web and could not find anything useful.

Thanks in advance.

Evan
 
Read April 21, 2009, 11:32:42 AM #1
alvillarica

Re: Can't insmod/modprobe any driver

I've had this kind of issue before, but I'm using a buildroot (uclibc) kernel.  I solved my problem by disabling the insmod from busybox and building the non-busybox insmod.

Al


Hi,

Whenever i attempt to insert a driver i get the following message (for this case the posted GPIO driver):

insmod: module 'GPIO_driver.ko' not found

I've compliled another driver against the GES 2.6.25 kernel and i get the same problem, saying it cannot be found. What i don't understand is that the name of the driver is actually GPIO-driver.ko, that is, there is a "-" and not a "_" in the file name.

I've tried using serial and USB to copy the file across, although in both cases i coped the driver from a shared linux drive using windows, but i've never seen this problem before on other similiar drivers/platforms/kernels. I would have used NFS and copied it directly but that gives some weird error when i try and mount a Ubuntu shared directory (RPC: failed to contact local rpcbind server (errno 5). lockd_up: makesock failed, error=-5. I enabled ). The shared directory works for other boards i have.

I had this problem with the factory supplied image and i recently re-flashed the kernel using this config file:
http://glomation.net/smf/index.php?action=dlattach;topic=4.0;attach=1

The CONFIG_MODULES flag is set, i can't see what else is wrong.

I've searched through the forums/web and could not find anything useful.

Thanks in advance.

Evan
 
Read April 22, 2009, 10:01:58 AM #2
please_work

Re: Can't insmod/modprobe any driver

Hey,

Thanks for you reply. Yeah i notice if i run "busybox insmod driver-name.ko" i get exactly the same error. I'm still trying to find my way around this, I can't seem to find any way to configure busybox from inside the gesbc_9260S kernel release. Does this mean there is probably just a binary version of busy box inside the kernel directory somewhere and i should download, compile and configure busybox to exclude insmod? And then after that download, build and run insmod e.g. something like ./insmod driver-name.ko?  I noticed that the kernel .config contains a flag CONFIG_MODULES, this is not in anyway related to busy box as i understand it, and more the kernel accepting modules?

I've had this kind of issue before, but I'm using a buildroot (uclibc) kernel.  I solved my problem by disabling the insmod from busybox and building the non-busybox insmod.

Al


Hi,

Whenever i attempt to insert a driver i get the following message (for this case the posted GPIO driver):

insmod: module 'GPIO_driver.ko' not found

I've compliled another driver against the GES 2.6.25 kernel and i get the same problem, saying it cannot be found. What i don't understand is that the name of the driver is actually GPIO-driver.ko, that is, there is a "-" and not a "_" in the file name.

I've tried using serial and USB to copy the file across, although in both cases i coped the driver from a shared linux drive using windows, but i've never seen this problem before on other similiar drivers/platforms/kernels. I would have used NFS and copied it directly but that gives some weird error when i try and mount a Ubuntu shared directory (RPC: failed to contact local rpcbind server (errno 5). lockd_up: makesock failed, error=-5. I enabled ). The shared directory works for other boards i have.

I had this problem with the factory supplied image and i recently re-flashed the kernel using this config file:
http://glomation.net/smf/index.php?action=dlattach;topic=4.0;attach=1

The CONFIG_MODULES flag is set, i can't see what else is wrong.

I've searched through the forums/web and could not find anything useful.

Thanks in advance.

Evan
 
Read April 22, 2009, 06:41:30 PM #3
admin

Re: Can't insmod/modprobe any driver

The Busybox is one big binary file for all the utility applets.  The usual Unix/Linux programs(commands) are just a symbolic link to the busybox file.  You can delete the sym link and install the Debian module utilities.

You can also build and use the new Emdebian file system which uses striped down regular Debian files instead of Busybox.  Of course it takes more storage space than the Busybox version.
 
Read April 25, 2009, 05:27:47 PM #4
hud001

Re: Can't insmod/modprobe any driver

I had the same problem with Busybox 1.12.1. and the GPIO_driver.ko.

insmod: module 'GPIO_driver.ko' not found.

insmod 1.12.1 has a few bugs in this version (Google your error and you will see others complaining too).

Upgrade BusyBox to v1.13.4, insmod ./GPIO_driver.ko works with no errors!

This is easy to do on a live board using tftp.

Using your cross-compiler build the source busybox-1.13.4 (default configuration). In the _install/bin directory you should find a BusyBox binary. 

Once you have the BusyBox binary make two copies of it.

Upload those to your /bin dir on the target board.  Use this new version of BusyBox to remove the old version.

E.g:
cd /bin
./busybox-new mv busybox bb_old
./busybox-new1 mv busybox-new busybox
rm ./bb_old
rm ./busybox-new1

Reboot target. insmod should now work with GPIO_driver.ko. 

Kind Regards
David
 
Read April 28, 2009, 08:06:35 AM #5
please_work

Re: Can't insmod/modprobe any driver

Hey,

Thanks all for the replies. Upgrading busybox to 1.13.4 did the trick, thanks heaps!! It was really bugging me that such a basic thing wasn't working.. I didn't really know how busybox and the kernel related, i thought a lot of those functions were built-in the kernel... interesting!

Thanks again,

Evan.
 
Read May 07, 2009, 10:49:17 AM #6
brady

Re: Can't insmod/modprobe any driver

Hey all,

Upgrading busybox fixed insmod for me, but rmmod now gives the same error as insmod did under the previous busybox version ("chdir(2.6.25): No such file or directory").  Any suggestions?

Thanks,
-b.

EDIT:  I was able to get rmmod working by creating /lib/modules/2.6.25.  Now rmmod complains that the module is not found, but it does successfully remove it.
« Last Edit: May 07, 2009, 10:52:44 AM by brady »
 
Read May 12, 2009, 10:45:50 AM #7
hud001

Re: Can't insmod/modprobe any driver

Hi,
Assuming your target uses kernel 2.6.27.4 BUT /lib/modules shows kernel 2.6.25

cd /lib/modules
// Create a link
ln -s 2.6.25 2.6.27.4

Now when you insert a module e.g : insmod ./test-driver.ko
Remove the inserted module using : rmmod test-driver
should work.
 
Kind Regards
David
 
Pages: [1]
Jump to:  

Theme Update by Runic Warrior Originally created by m3talc0re