linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Ming Lei <ming.lei@canonical.com>
Cc: "Pali Rohár" <pali.rohar@gmail.com>,
	"Pavel Machek" <pavel@ucw.cz>,
	"John W. Linville" <linville@tuxdriver.com>,
	"Grazvydas Ignotas" <notasas@gmail.com>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	"Network Development" <netdev@vger.kernel.org>,
	"Linux Kernel Mailing List" <linux-kernel@vger.kernel.org>,
	"Ivaylo Dimitrov" <ivo.g.dimitrov.75@gmail.com>,
	"Aaro Koskinen" <aaro.koskinen@iki.fi>,
	"Kalle Valo" <kvalo@adurom.com>,
	"Sebastian Reichel" <sre@ring0.de>,
	"David Gnedt" <david.gnedt@davizone.at>
Subject: Re: wl1251: NVS firmware data
Date: Mon, 8 Dec 2014 23:08:06 -0500	[thread overview]
Message-ID: <20141209040806.GA1257@kroah.com> (raw)
In-Reply-To: <CACVXFVO+pX29UE53EDP4va0hoWQw8h0E9Ji9t3OL=e0FyERxyA@mail.gmail.com>

On Tue, Dec 09, 2014 at 08:48:28AM +0800, Ming Lei wrote:
> On Tue, Dec 9, 2014 at 4:57 AM, Greg Kroah-Hartman
> <gregkh@linuxfoundation.org> wrote:
> > On Mon, Dec 08, 2014 at 05:47:30PM +0100, Pali Rohár wrote:
> >> On Monday 08 December 2014 17:37:14 Greg Kroah-Hartman wrote:
> >> > On Mon, Dec 08, 2014 at 11:18:18PM +0800, Ming Lei wrote:
> >> > > On Sat, Dec 6, 2014 at 9:02 PM, Pali Rohár
> >> <pali.rohar@gmail.com> wrote:
> >> > > > On Saturday 06 December 2014 13:49:54 Pavel Machek wrote:
> >> > > >  /**
> >> > > >
> >> > > > + * request_firmware_prefer_user: - prefer usermode helper
> >> > > > for loading firmware + * @firmware_p: pointer to firmware
> >> > > > image
> >> > > > + * @name: name of firmware file
> >> > > > + * @device: device for which firmware is being loaded
> >> > > > + *
> >> > > > + * This function works pretty much like
> >> > > > request_firmware(), but it prefer + * usermode helper. If
> >> > > > usermode helper fails then it fallback to direct access.
> >> > > > + * Usefull for dynamic or model specific firmware data.
> >> > > > + **/
> >> > > > +int request_firmware_prefer_user(const struct firmware
> >> > > > **firmware_p, +                           const char
> >> > > > *name, struct device *device) +{
> >> > > > +       int ret;
> >> > > > +       __module_get(THIS_MODULE);
> >> > > > +       ret = _request_firmware(firmware_p, name, device,
> >> > > > +                               FW_OPT_UEVENT |
> >> > > > FW_OPT_PREFER_USER); +       module_put(THIS_MODULE);
> >> > > > +       return ret;
> >> > > > +}
> >> > > > +EXPORT_SYMBOL_GPL(request_firmware_prefer_user);
> >> > >
> >> > > I'd like to introduce request_firmware_user() which only
> >> > > requests firmware from user space, and this way is simpler
> >> > > and more flexible since we have request_firmware_direct()
> >> > > already.
> >> >
> >> > Why would a driver care about what program provides the
> >> > firmware?  It shouldn't at all, and we want to get rid of the
> >> > userspace firmware loader, not encourage drivers to use it
> >> > "exclusively" at all.
> >> >
> >>
> >> Do not remove it! Without userspace firmware loader it is
> >> impossible to load dynamic firmware files.
> >
> > You should not be loading "dynamic" firmware files with the firmware
> > interface, as that's not a "firmware" file anymore, it's a "special
> > binary file that my driver needs to be created and sent into the
> > kernel."
> 
> It is reasonable to put firmware somewhere instead of default
> search path, maybe in network.

That's why we allow you to change the firmware search path at build
time, and kernel boot time (or firmware class module load time.)  To do
this on a per-firmware-file basis is crazy.

thanks,

greg k-h

      reply	other threads:[~2014-12-09  4:08 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-27 14:06 wl1251: NVS firmware data Pali Rohár
2014-11-27 14:21 ` Ming Lei
2014-11-27 14:43   ` Pali Rohár
2014-11-27 15:13     ` Ming Lei
2014-12-06 13:00       ` Pali Rohár
2014-11-27 15:14     ` Greg Kroah-Hartman
2014-11-27 15:24       ` Pali Rohár
2014-11-27 15:34         ` Ming Lei
2014-11-27 15:16     ` Greg Kroah-Hartman
2014-11-27 15:22       ` Pali Rohár
2014-11-27 15:58         ` Greg Kroah-Hartman
2014-12-06 12:49           ` Pavel Machek
2014-12-06 13:02             ` Pali Rohár
2014-12-08 15:18               ` Ming Lei
2014-12-08 15:22                 ` Pali Rohár
2014-12-08 15:35                   ` Ming Lei
2014-12-08 16:37                 ` Greg Kroah-Hartman
2014-12-08 16:47                   ` Pali Rohár
2014-12-08 17:05                     ` Marcel Holtmann
2014-12-08 17:11                       ` Pali Rohár
2014-12-08 18:50                         ` Marcel Holtmann
2014-12-08 19:15                           ` Pali Rohár
2014-12-08 19:26                             ` Dan Williams
2014-12-08 19:36                               ` Pali Rohár
2014-12-08 19:46                                 ` Marcel Holtmann
2014-12-08 19:56                                   ` Pali Rohár
2014-12-08 22:51                                 ` Dan Williams
2014-12-08 23:23                                   ` Pali Rohár
2014-12-08 23:42                                     ` Dan Williams
2014-12-08 23:52                                       ` Pali Rohár
2014-12-08 19:42                               ` Ivaylo Dimitrov
2014-12-08 22:41                                 ` Dan Williams
2014-12-09  5:10                                   ` Marcel Holtmann
2014-12-08 19:41                             ` Marcel Holtmann
2014-12-08 19:52                               ` Pali Rohár
2014-12-08 21:00                             ` Greg Kroah-Hartman
2014-12-08 21:08                               ` Pali Rohár
2014-12-08 20:57                     ` Greg Kroah-Hartman
2014-12-08 21:11                       ` Pali Rohár
2014-12-08 23:27                       ` Pali Rohár
2014-12-09  5:25                         ` Marcel Holtmann
2014-12-09  0:48                       ` Ming Lei
2014-12-09  4:08                         ` Greg Kroah-Hartman [this message]

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=20141209040806.GA1257@kroah.com \
    --to=gregkh@linuxfoundation.org \
    --cc=aaro.koskinen@iki.fi \
    --cc=david.gnedt@davizone.at \
    --cc=ivo.g.dimitrov.75@gmail.com \
    --cc=kvalo@adurom.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=ming.lei@canonical.com \
    --cc=netdev@vger.kernel.org \
    --cc=notasas@gmail.com \
    --cc=pali.rohar@gmail.com \
    --cc=pavel@ucw.cz \
    --cc=sre@ring0.de \
    /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;
as well as URLs for NNTP newsgroup(s).