Messages in this thread | | | From | "Rafael J. Wysocki" <> | Subject | Re: request_firmware vs. resume (was Re: [PATCH] bnx2 - use request_firmware()) | Date | Wed, 9 Jul 2008 23:13:54 +0200 |
| |
On Wednesday, 9 of July 2008, Pavel Machek wrote: > Hi! > > > > > The firmware needs to be reloaded every time the chip resets. > > > > You're not saving anything/ > > > > > > > See above, you aren't saving anything. The firmware needs to stay > > > > around so it can be reloaded into the card during exceptions. > > > > > > > > That is, unless you want a more failure prone system. > > > > > > Ok so if tg3 always needs the same firmware and always needs it in memory > > > then maybe it isn't a significant candidate for request_firmware beyond > > > the neatness of distribution. I note the firmware hasn't changed in years > > > so it can easily be shipped separately and the one package would have > > > done for all this time. > > > > It isn't just tg3. All the broadcom gigabit chips need this > > kind of handling. > > > > Basically all of the drivers we are pushing back on. > > > > I bet there are other similar examples. > > Be careful about request_firmware. Doing it right w.r.t. > suspend/resume is quite tricky: you have to load it from userspace > before kernel starts, so that you can use it during resume...
Rather, you have to cache it in memory before your ->suspend() is invoked.
Thanks, Rafael
| |