Subject: Re: Convenient use of firmload(9)
To: None <tech-kern@netbsd.org>
From: Ignatios Souvatzis <is@netbsd.org>
List: tech-kern
Date: 01/17/2007 20:40:29
On Wed, Jan 17, 2007 at 01:57:25PM -0500, Arnaud Lacombe wrote:

> A problem may appear when disk are not mounted and the device need the
> firmware, so can firmload(9) be used for such PCI device (ie. could it
> be possible to delay the initialisation after having the disk mounted
> [2] ?). firmload(9) is does not provide information about this and it does
> not seems to have been dicussed before on lists.

firmload(9) does not work before the file-system the firmware is on is
mounted. It even used to crash the kernel if used before root was mounted,
but I discovered and fixed that last weekend.

Using it for audio is no problem - I intend to move an Amiga audio
device to using firmload(9) soon.

Using it for network is a problem if the device in question is used to
mount a filesystem (e.g. over NFS); same for scsi or ata drivers. If you
don't need this - fine. My junior boss' new laptop uses iwi which loads
the firmware on first ifconfig up. I only needed to mark /usr as critical
filesystem (that is, as one mounted before the network is started).

But I guess you could put initial root on MFS if you really wanted to
use an external-firmware fs ...

Now, some scsi devices have firmware that is executed out of kernel memory;
you wouldn't save anything by storing it externally.

Regards,
	-is