On Wed, 2011-02-23 at 21:59 -0800, Dan Mick wrote:
> On 02/23/11 09:01 PM, Cyril Plisko wrote:
> > On Thu, Feb 24, 2011 at 2:22 AM, Dan Mick<[email protected]> wrote:
> >> Don't see why it needs to be a kernel call; if you want "no user
> >> intervention", make an SMF service...
> >>
> >
> > Would it work for driver for boot device as well ?
> >
>
> Depends on what updating the firmware does, I suppose. If it disables the
> device, then clearly the OS can't be using the device at the time, but that's
> true of any method that's not pre-OS, right?
There is sometimes a need to load firmware on devices *before*
multi-user mode. Any device that might be used during fairly early boot
-- for example an HBA controller for a storage array.
It used to be that this would only be for devices not intrinsic to
booting the root filesystem, but now that becomes less of an issue with
the idea that the kernel can be in the boot-archive. The boot archive
doesn't have to be delivered the same way as the regular root
filesystem. (Of course, you'd need to have firmware in the boot archive
in that case.)
There's also the situation where you want to have firmware loaded "on
demand" -- e.g. when you plug in a USB controller which might be present
at boot. The logical thing to do is to upload the firmware to the
device during attach(9e).
But that requires that attach(9e) can get the firmware file. In theory
it *could* be supplied via a daemon and a door call, but it may actually
be simpler to just access the file directly from kernel space... its not
clear.
- Garrett
_______________________________________________
driver-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/driver-discuss