tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Firmware compression



On Sun, May 04, 2008 at 11:23:27PM +0000, David Brownlee wrote:

> On Sun, 4 May 2008, Andrew Doran wrote:
> 
> >We have a meg or two of firmware images in the i386 GENERIC kernel, which 
> >is
> >insane. I was thinking of adding a function that would use kmem_alloc+zlib
> >to decompress images, and another to optionally free the decompressed 
> >image.
> >It would probably also be good to add a simple program under dev/microcode
> >to take a blob and spit out a compressed array in a C file.
> 
>       Only a (potentially) unhelpful one:
> 
>       Would it make sense to integrate this with firmload(9) such
>       that the firmware images could be linked into the kernel or
>       loaded from the filesystem on demand? Or is that a dead end
>       and the firmware which can be distributed should just be zlib
>       included in the appropriate kernel module (when everything is
>       built as modules :)

I think we would do well to convert many of the existing drivers to use
firmload, but for a few it's probably not an option. Consider the isp
driver, it might need to be loaded to access the root file system. Also,
converting something to firmload requires testing and I don't have any 
devices need to test this. Compressing the images in dev/microcode means
less chance of breakage, compared to complicated code changes for using
firmload.

Thanks,
Andrew


Home | Main Index | Thread Index | Old Index