firmware loading

Max Laier max at love2party.net
Tue Jan 24 17:26:55 PST 2006


On Wednesday 21 December 2005 06:54, Sam Leffler wrote:
> Florent Thoumie and I have been working on some generic support for
> loading firmware using kld's.  You can find a proof of concept at:
>
> http://www.freebsd.org/~sam/firmware.tgz
>
> It has code to manage firmware images and load them on demand by
> requesting a kld through standard facilities.  Firmware is packaged
> using a genfw program that's included.  You can package one or more
> firmware images in a single kld.  I've packaged the iwi firmware as a
> boot image in a single kld + kld's for each operating mode that have two
> firmware images.  The tarball also includes modified versions of the iwi
> and ipw drivers to use the code.  I tested iwi, Florent is working on ipw.
>
> If you're interested in this stuff feel free to pick it up; I've run out
> of time to work on it.  There are some potential issues with holding
> locks over the linker calls and the genfw program could use some TLC and
> probably a new name (plus the man page needs to be completed).
>
> It appears ispfw can be reworked to use this code.  iwi and ipw
> definitely can use it.  Not sure who else can/should use it.

An updated version of this work is here: 

http://people.freebsd.org/~mlaier/firmware-20060125.tgz

It includes the following changes:
- Firmware module generation with awk and ld (no special tool required).  The 
kmod.mk Makefile has been changed to support this and it's now very easy to 
build a firmware module.
- Versioning
- firmware_put() safe from any context
- digi(4) converted.  ATTENTION: this was done blindly - if you have digi(4) 
hardware I'd appreciate reports!
- Plenty iwi(4) changes which make it work much better for me - though there 
are some rough edges still.
- firmware(9) manpage

To try it, just copy the contents of the tarball over src and apply the two 
patches in sys/conf to the respective files.  The firmware support can be 
loaded as a module itself, so testing is really easy.

My plan is to import the basic firmware support on the weekend (if no 
objections are raised).  Drivers would be converted later after some more 
testing.  The aim of this is to avoid more and more handrolled sollutions.  I 
didn't yet have time to look at ispfw, but will do that as well.

So, any objections?  Comments?  Feedback?  Thanks!

-- 
/"\  Best regards,                      | mlaier at freebsd.org
\ /  Max Laier                          | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | mlaier at EFnet
/ \  ASCII Ribbon Campaign              | Against HTML Mail and News
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20060125/7bebd0d4/attachment.bin


More information about the freebsd-arch mailing list