On 11/12/17(Mon) 10:01, Theo de Raadt wrote: > > On 11/12/17(Mon) 17:44, Stefan Sperling wrote: > > > When the root filesystem is mounted, the iwm(4) driver will try to > > > load firmware from the root filesystem in order to read the MAC > > > address. > > > > > > This has never worked in bsd.rd and results in a bogus "could not > > > load firmware" error being displayed during every upgrade. > > > > > > With this diff, when the driver runs in bsd.rd it will try to > > > load firmware when the interface comes up for the first time > > > which avoids the pointless error. > > > > > > Personally, I think this change is long overdue... > > > > Why not load the firmware in iwm_init()/init_hw() like other wireless > > drivers do? > > That does get done. But the ramdisk doesn't contain the firmware.
No that doesn't get done. The driver uses a hook to load the firmware. I'm asking why it uses a hook and not load the firmware when bringing the interface UP like any other wireless interface. The only difference I see is that the MAC address has to be read from the EEPROM. It's not clear to me if Linux does that for all models, hence my question.