On Thu, 03 Jul 2008 13:21:35 BST, David Woodhouse said:
3
The old config was FIRMWARE_IN_KERNEL=y, and that worked fine because the
microcode was compiled into tg3.o and All Was Good.
My current, *also* working config has FIRMWARE_IN_KERNEL=n, and CONFIG_TIGON3=m.
System comes up, initrd runs, the real root gets loaded, udev gets started,
and when the modprobe happens, /lib/firmware/tigon is there to handle the
request_firmware that gets launched when the module loads.
The *broken* config was FIRMWARE_IN_KERNEL=n, CONFIG_TIGON3=y. System comes up,
the request_firmware pops *very* early (as in while we're still on the initrd),
and I couldn't figure out how to get Fedora/nash/etc to do the firmware load
from the initrd (nash seems to want it in /firmware/tigon3, but putting it
there didn't help any). By the time udev gets launched, that request is DOA
and the interface doesn't come up. But as I said, that *seems* to be just a
lack of clue on my part about what nash wants.
Somebody else can decide that one. Kay does make a point in another mail
that you *really* want it to end up in /lib/firmware for good reasons.