Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Gentoo: Embedded

Automatic module loading not working?

 

 

Gentoo embedded RSS feed   Index | Next | Previous | View Threaded


lists at wildgooses

Aug 13, 2009, 3:23 AM

Post #1 of 4 (1262 views)
Permalink
Automatic module loading not working?

Hi, I apologise if this is a very newbie question, but - I have an Alix
board and custom kernel which doesn't seem to be autoloading kernel modules

The Alix is running 2.6.29, uclibc 0.9.30.1, busybox 1.14.2, Udev 141,
openrc 0.40. When I insert any hardware, eg trying now with a USB GPS
then I get a bunch of general USB nodes created, but the pl2303 module
(used with this device) is not auto loaded. If I modprobe this module
then everything works as expected.

On my desktop machine (2.6.29, and a more standard AMD64 build, but
still with openrc), I see udev loading my modules correctly.

Here is the log from udevadm status on the Alix:

KERNEL[946736607.038720] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1 (usb)
UDEV [946736607.041839] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1 (usb)
KERNEL[946736607.042595] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/2-1:1.0 (usb)
KERNEL[946736607.043576] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/2-1:1.0/usb_endpoint/usbdev2.6_ep81
(usb_endpoint)
KERNEL[946736607.044331] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/2-1:1.0/usb_endpoint/usbdev2.6_ep02
(usb_endpoint)
KERNEL[946736607.045158] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/2-1:1.0/usb_endpoint/usbdev2.6_ep83
(usb_endpoint)
KERNEL[946736607.045688] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/usb_device/usbdev2.6 (usb_device)
KERNEL[946736607.046425] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/usb_endpoint/usbdev2.6_ep00
(usb_endpoint)
UDEV [946736607.066290] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/usb_device/usbdev2.6 (usb_device)
UDEV [946736607.081372] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/usb_endpoint/usbdev2.6_ep00
(usb_endpoint)
UDEV [946736607.101506] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/2-1:1.0 (usb)
UDEV [946736607.104493] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/2-1:1.0/usb_endpoint/usbdev2.6_ep81
(usb_endpoint)
UDEV [946736607.107785] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/2-1:1.0/usb_endpoint/usbdev2.6_ep83
(usb_endpoint)
UDEV [946736607.110207] add
/devices/pci0000:00/0000:00:0f.4/usb2/2-1/2-1:1.0/usb_endpoint/usbdev2.6_ep02
(usb_endpoint)


And now on the desktop machine (now my pl2303 is added automatically):

KERNEL[1250157653.739660] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2 (usb)
UDEV [1250157653.740370] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2 (usb)
KERNEL[1250157653.742698] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0 (usb)
KERNEL[1250157653.742719] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/usb_endpoint/usbdev6.5_ep81
(usb_endpoint)
KERNEL[1250157653.742744] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/usb_endpoint/usbdev6.5_ep02
(usb_endpoint)
KERNEL[1250157653.742759] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/usb_endpoint/usbdev6.5_ep83
(usb_endpoint)
KERNEL[1250157653.742775] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/usb_endpoint/usbdev6.5_ep00
(usb_endpoint)
UDEV [1250157653.743187] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/usb_endpoint/usbdev6.5_ep00
(usb_endpoint)
KERNEL[1250157653.744917] add /module/pl2303 (module)
KERNEL[1250157653.744991] add /bus/usb-serial/drivers/pl2303 (drivers)
UDEV [1250157653.745260] add /module/pl2303 (module)
UDEV [1250157653.745344] add /bus/usb-serial/drivers/pl2303 (drivers)
KERNEL[1250157653.756463] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/ttyUSB0 (usb-serial)
KERNEL[1250157653.756662] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/ttyUSB0/tty/ttyUSB0 (tty)
KERNEL[1250157653.756714] add /bus/usb/drivers/pl2303 (drivers)
UDEV [1250157653.756868] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0 (usb)
UDEV [1250157653.757187] add /bus/usb/drivers/pl2303 (drivers)
UDEV [1250157653.757536] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/usb_endpoint/usbdev6.5_ep81
(usb_endpoint)
UDEV [1250157653.758064] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/usb_endpoint/usbdev6.5_ep02
(usb_endpoint)
UDEV [1250157653.758171] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/usb_endpoint/usbdev6.5_ep83
(usb_endpoint)
UDEV [1250157653.758514] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/ttyUSB0 (usb-serial)
UDEV [1250157653.768152] add
/devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2:1.0/ttyUSB0/tty/ttyUSB0 (tty)


I believe I have all the kernel options required for udev (can post
.config if useful?), but this seems like a kernel config issue at my end?

Can anyone please give me some advice on debugging this further? Am I
missing something in the kernel? (CONFIG_KMOD is implicit in all recent
kernels anyway). Is this something I'm missing in my udev setup, or
some problem with my busybox config (it seems to be ok modprobing module
aliases?)

I notice that rebooting with the device connected doesn't change
anything (but I don't think I have any coldplug options set in openrc,
not sure if these even exist anymore?). I have a fairly minimal set of
packages installed on the Alix - is it possible that I am missing some
dependency that allows udev to do it's magic? There are no errors here,
so I'm assuming a kernel problem rather than a udev problem?

Thanks for any help


Ed W


c.affolter at stepping-stone

Aug 13, 2009, 3:56 AM

Post #2 of 4 (1191 views)
Permalink
Re: Automatic module loading not working? [In reply to]

Hi

> Hi, I apologise if this is a very newbie question, but - I have an Alix
> board and custom kernel which doesn't seem to be autoloading kernel modules
>
> The Alix is running 2.6.29, uclibc 0.9.30.1, busybox 1.14.2, Udev 141,
> openrc 0.40. When I insert any hardware, eg trying now with a USB GPS
> then I get a bunch of general USB nodes created, but the pl2303 module
> (used with this device) is not auto loaded. If I modprobe this module
> then everything works as expected.

As a simple workaround add your module to /etc/conf.d/modules


Regards
Chris


lists at wildgooses

Aug 13, 2009, 4:09 AM

Post #3 of 4 (1197 views)
Permalink
Re: Automatic module loading not working? [In reply to]

Christian Affolter wrote:
> Hi
>
>
>> Hi, I apologise if this is a very newbie question, but - I have an Alix
>> board and custom kernel which doesn't seem to be autoloading kernel modules
>>
>> The Alix is running 2.6.29, uclibc 0.9.30.1, busybox 1.14.2, Udev 141,
>> openrc 0.40. When I insert any hardware, eg trying now with a USB GPS
>> then I get a bunch of general USB nodes created, but the pl2303 module
>> (used with this device) is not auto loaded. If I modprobe this module
>> then everything works as expected.
>>
>
> As a simple workaround add your module to /etc/conf.d/modules
>

Actually it's a good idea, but in this case I am trying to support quite
a few devices and I moved a bunch of them into modules because it seemed
to be slowing down my boot times by quite a bit (mainly all the serial
to usb adaptors).

Basically I need to try and understand what I am missing because it's
going to cause some subtle problems down the line when I try to do some
more advanced udev rules

Grateful for any tips?

Currently I'm wondering if it's some unsupported command line being
passed to modprobe? I see some old emails about this, but it's curious
that I don't see any errors here, syslog/dmesg shows no errors either?

I think I'm missing something simple...

Thanks

Ed W


lists at wildgooses

Aug 13, 2009, 11:41 AM

Post #4 of 4 (1196 views)
Permalink
Re: Automatic module loading not working? [In reply to]

Ed W wrote:
> Hi, I apologise if this is a very newbie question, but - I have an
> Alix board and custom kernel which doesn't seem to be autoloading
> kernel modules
>
> The Alix is running 2.6.29, uclibc 0.9.30.1, busybox 1.14.2, Udev 141,
> openrc 0.40. When I insert any hardware, eg trying now with a USB GPS
> then I get a bunch of general USB nodes created, but the pl2303 module
> (used with this device) is not auto loaded. If I modprobe this module
> then everything works as expected.

Hmm, the problem appears to be in busybox. If you use the "small"
modprobe utils then something is obviously not supported correctly and
the kernel modules are not autoloaded. I suspect some kind of
commandline param not supported issue, but have not debugged it further.

Hopefully this helps someone else...

Ed W

Gentoo embedded RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.