Re: ipw2100: firmware problem

Jeff Garzik
2005-06-09T06:06:47Z

David S. Miller wrote:
> From: James Ketrenos <jketreno@linux.intel.com>
> Date: Wed, 08 Jun 2005 12:10:37 -0500
>
>
>>My approach is to make the driver so it supports as many usage models as
>>possible, leaving policy to other components of the system.
>
>
> I don't see how this kind of firmware load setup handles something
> like an NFS root over such a device that requires firmware.
>
> And let's not mention that I have to setup an initrd to make that
> work, that's rediculious.
>
> This is the kind of crap that happens when drivers in the kernel
> are not self contained, and need "external stuff" to work properly.
> It means that simple things like NFS root over the device do not
> work in a straightforward, simple, and elegant manner.

Actually these questions has already been answered (though I know you
will probably grumble a bit :))

"early userspace" is the long term answer. usr/* in the current kernel
tree is a placeholder for an image that is shipped with the kernel,
which provides things (kernel modules, userspace programs, firmware)
that are necessary to boot.

The key is that it is shipped with the kernel source tree, and built
into the kernel image, and _dropped from memory_ after init. The entire
process should all be automatic.

Linus ack'd the current stuff (by merging it, after some discussion) and
would have merged klibc too, had it any users.

...

As to $current_thread, initramfs exists but "early userspace" does not.
There isn't AFAIK any infrastructure to automatically add firmware
to initrd in any standard distribution (corrections welcome!). So
today, initrd+firmware is just a big pain.

Therefore, the easiest way to make things work today is to poke Intel to
fix their firmware license so that we can distribute it with the kernel :)

Jeff