> My assumption was that the deferred initialization was to avoid
> consuming firmware ressources until the device is actually used
> and not about availability of the firmware. It also lets you
> load and unload the firmware by just putting the interface up
> and down.
Hmm, probably we should ask a person who implemented it,
but my assumption is that it was just a hack since
we didn't have proper hooks to defer initialization
> Moving initialization into a config_mountroot() looks interesting,
> but it looks a bit like it may only happen once and leaves out
> the possibility to reload the firmware. Or can you control this
> with drvctl?
> If drvctl lets you detach and rescan USB devices, then maybe
> a solution would be to not even attach the devices before the
> firmware is available but to defer all this to an rc script?
IMO we should have firmware in root file system as kernel modules
and we don't have to defer it to an rc script.
Anyway, your suggestion looks beyond the scope of this PR.