Question on busybox and loading firmware?
Michael Conrad
mconrad at intellitree.com
Tue Sep 23 14:55:40 UTC 2014
On 9/23/2014 2:05 AM, Michael D. Setzer II wrote:
> device class 'firmware': registering
> pci 0000:02:08.0: Firmware left e100 interrupts enabled; disabling
> ipw2200 0000:02:02.0: Direct firmware load failed with error -2
> firmware ipw2200-bss.fw: firmware: requesting ipw2200-bss.fw
> ipw2200: ipw2200-bss.fw request_firmware failed: Reason -12
> ipw2200: Unable to load firmware: -12
> usbserial: USB Serial support registered for Keyspan - (without firmware)
> psmouse serio2: trackpoint: IBM TrackPoint firmware: 0x0e, buttons: 3/3
Most google results show -2. Maybe check the kernel source to see what
-12 is?
> ...takes about 1:46 to get
> to the loading of the file system, so not sure where the 60 seconds timeout
> starts, or if that is what is making it take so long?? On desktop system, the
> kernel loads in about 15 seconds.
If you enable timestamps in the kernel logging it can help find things
that are taking a long time to initialize. 1:46 seems a bit excessive.
If this does end up being the problem that the kernel firmware loader
times out before the root filesystem even gets loaded, you might be able
to edit the timeout in the kernel source.
> Another message talked about a hot plugin script, but there are two variables
> that it says are defined in the envirnonment, and I can not find them?
> Also, not sure if it would apply, since I thought hotplug was for devices that
> are later plugged into the system instead of devices that are actually built into
> the sytem.
These environment variables exist only when when the kernel is asking
for firmware. The hotplug interface is used for pretty much all
communication from the kernel to userspace about driver-things.
A quick way to debug is with a script like
#! /bin/sh
echo "-----------------------" >> /var/log/hotplug_requests.log
/usr/bin/env >> /var/log/hotplug_requests.log
exec /sbin/mdev
> HOTPLUG_FW_DIR=/usr/lib/hotplug/firmware/
firmware is typically located at /lib/firmware. This is where mdev
would look for it by default.
> Did a search in the /sys directory to look for any file called loading, but none
> exist on notebook or desktop systems I've seen.
They are created on demand by the kernel, matching the environment
variables given to hotplug.
> Thanks again.
If I had more time available I could give better examples, but there are
past examples in the archives of this list.
Good luck!
-Mike
More information about the busybox
mailing list