From: Marcel Holtmann <marcel@holtmann.org>
To: "Luis R. Rodriguez" <mcgrof@gmail.com>
Cc: Johannes Berg <johannes@sipsolutions.net>,
John Linville <linville@tuxdriver.com>,
linux-wireless <linux-wireless@vger.kernel.org>
Subject: Re: [PATCH] ar9170: load firmware asynchronously
Date: Fri, 18 Dec 2009 15:08:55 -0800 [thread overview]
Message-ID: <1261177735.4041.107.camel@localhost.localdomain> (raw)
In-Reply-To: <43e72e890912181502u3610ac23qe2dfc09f1d337bf5@mail.gmail.com>
Hi Luis,
> > This converts ar9170 to load firmware asynchronously
> > out of ->probe() and only register with mac80211 when
> > all firmware has been loaded successfully. If, on the
> > other hand, any firmware fails to load, it will now
> > unbind from the device.
> >
> > Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
> > ---
> > This can go in now, the prereq patch went in via gregkh.
> >
> > This ought to make it possible to build the driver
> > into the kernel and as long as your system boots
> > within 60 seconds it'll all just work.
> >
> > This is how we need to load firmware for drivers that
> > require the firmware image to detect which features
> > to register to mac80211/cfg80211, but it's also useful
> > when no features depend on the firmware.
> >
> > I've done ar9170 because I'm somewhat familiar with its
> > implementation. b43 should probably be converted to this
> > scheme since it actually has features that depend on the
> > firmware, and libertas_tf has the MAC addresss depending
> > on the firmware (well it needs the firmware to read it).
> >
> > The only complication with this is that now the user is
> > mostly unaware they have a wireless device, they can only
> > find it via lsusb/lspci etc. if firmware loading fails,
> > or from kernel messages. And also manual binding in sysfs,
> > device re-plugging or module re-loading is required to
> > get the module to find the device after putting firmware
> > in place...
> >
> > Still I think this is better than what we have now with
> > many drivers -- if firmware is missing you get network
> > interfaces etc. but cannot ever use them, and it's not
> > always entirely clear that is due to missing firmware.
>
> Sweet -- we could also expose firmware load events if not done so
> already and let userspace propagate such nasty warnings, I think we'd
> need to pass the firmware expected and the driver the requested it so
> that once the firmware is in place (I guess through inotify maybe) the
> driver modprobe can be retried.
actually PackageKit should be doing something like this already. It
might need to be adapted a bit, but the basics should be there.
Regards
Marcel
next prev parent reply other threads:[~2009-12-18 23:09 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-18 22:47 [PATCH] ar9170: load firmware asynchronously Johannes Berg
2009-12-18 23:02 ` Luis R. Rodriguez
2009-12-18 23:08 ` Marcel Holtmann [this message]
2009-12-18 23:16 ` Luis R. Rodriguez
2009-12-19 10:31 ` Johannes Berg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1261177735.4041.107.camel@localhost.localdomain \
--to=marcel@holtmann.org \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=linville@tuxdriver.com \
--cc=mcgrof@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox