public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drivers: Update help for firmware loading options
@ 2015-08-09 22:01 Eric Biggers
  2015-10-04 19:14 ` Greg KH
  0 siblings, 1 reply; 3+ messages in thread
From: Eric Biggers @ 2015-08-09 22:01 UTC (permalink / raw)
  To: linux-kernel; +Cc: gregkh, Eric Biggers

Update the help text to account for the fact that the kernel can now load
firmware directly from the filesystem.  Also clarify how the FW_LOADER
option works.

Signed-off-by: Eric Biggers <ebiggers3@gmail.com>
---
 drivers/base/Kconfig | 33 +++++++++++++++++++++------------
 1 file changed, 21 insertions(+), 12 deletions(-)

diff --git a/drivers/base/Kconfig b/drivers/base/Kconfig
index 98504ec..2150f6c 100644
--- a/drivers/base/Kconfig
+++ b/drivers/base/Kconfig
@@ -78,12 +78,21 @@ config PREVENT_FIRMWARE_BUILD
 	  If unsure, say Y here.
 
 config FW_LOADER
-	tristate "Userspace firmware loading support" if EXPERT
+	tristate "Firmware loading support" if EXPERT
 	default y
 	---help---
-	  This option is provided for the case where none of the in-tree modules
-	  require userspace firmware loading support, but a module built
-	  out-of-tree does.
+	  If selected, the kernel will be able to load firmware when asked to do
+	  so by device drivers.  Firmware is usually located in a known location
+	  on the filesystem such as /lib/firmware/ and is loaded by the kernel
+	  on request.  Firmware can also be compiled into the kernel or loaded
+	  via a (deprecated) user-mode helper.
+
+	  This option is automatically selected by in-tree modules that need
+	  firmware loading support.  If no in-tree modules need it, then you can
+	  choose N, unless you have out-of-tree modules that need it in which
+	  case you will need to choose M or Y.
+
+	  If unsure, say Y.
 
 config FIRMWARE_IN_KERNEL
 	bool "Include in-kernel firmware blobs in kernel binary"
@@ -95,20 +104,20 @@ config FIRMWARE_IN_KERNEL
 	  use these is to run "make firmware_install", which, after
 	  converting ihex files to binary, copies all of the needed
 	  binary files in firmware/ to /lib/firmware/ on your system so
-	  that they can be loaded by userspace helpers on request.
+	  that they can be loaded by the kernel on request.
 
 	  Enabling this option will build each required firmware blob
 	  into the kernel directly, where request_firmware() will find
-	  them without having to call out to userspace. This may be
+	  them without having to call out to the filesystem. This may be
 	  useful if your root file system requires a device that uses
-	  such firmware and do not wish to use an initrd.
+	  such firmware and you do not wish to use an initrd.
 
 	  This single option controls the inclusion of firmware for
 	  every driver that uses request_firmware() and ships its
 	  firmware in the kernel source tree, which avoids a
 	  proliferation of 'Include firmware for xxx device' options.
 
-	  Say 'N' and let firmware be loaded from userspace.
+	  Say 'N' and let firmware be loaded from the filesystem.
 
 config EXTRA_FIRMWARE
 	string "External firmware blobs to build into the kernel binary"
@@ -116,9 +125,9 @@ config EXTRA_FIRMWARE
 	help
 	  This option allows firmware to be built into the kernel for the case
 	  where the user either cannot or doesn't want to provide it from
-	  userspace at runtime (for example, when the firmware in question is
-	  required for accessing the boot device, and the user doesn't want to
-	  use an initrd).
+	  the filesystem at runtime (for example, when the firmware in question
+	  is required for accessing the boot device, and the user doesn't want
+	  to use an initrd).
 
 	  This option is a string and takes the (space-separated) names of the
 	  firmware files -- the same names that appear in MODULE_FIRMWARE()
@@ -129,7 +138,7 @@ config EXTRA_FIRMWARE
 	  For example, you might set CONFIG_EXTRA_FIRMWARE="usb8388.bin", copy
 	  the usb8388.bin file into the firmware directory, and build the kernel.
 	  Then any request_firmware("usb8388.bin") will be satisfied internally
-	  without needing to call out to userspace.
+	  without needing to call out to the filesystem.
 
 	  WARNING: If you include additional firmware files into your binary
 	  kernel image that are not available under the terms of the GPL,
-- 
2.4.3


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] drivers: Update help for firmware loading options
  2015-08-09 22:01 [PATCH] drivers: Update help for firmware loading options Eric Biggers
@ 2015-10-04 19:14 ` Greg KH
  2015-10-04 19:24   ` Eric Biggers
  0 siblings, 1 reply; 3+ messages in thread
From: Greg KH @ 2015-10-04 19:14 UTC (permalink / raw)
  To: Eric Biggers; +Cc: linux-kernel

On Sun, Aug 09, 2015 at 05:01:16PM -0500, Eric Biggers wrote:
> Update the help text to account for the fact that the kernel can now load
> firmware directly from the filesystem.  Also clarify how the FW_LOADER
> option works.
> 
> Signed-off-by: Eric Biggers <ebiggers3@gmail.com>
> ---
>  drivers/base/Kconfig | 33 +++++++++++++++++++++------------
>  1 file changed, 21 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/base/Kconfig b/drivers/base/Kconfig
> index 98504ec..2150f6c 100644
> --- a/drivers/base/Kconfig
> +++ b/drivers/base/Kconfig
> @@ -78,12 +78,21 @@ config PREVENT_FIRMWARE_BUILD
>  	  If unsure, say Y here.
>  
>  config FW_LOADER
> -	tristate "Userspace firmware loading support" if EXPERT
> +	tristate "Firmware loading support" if EXPERT

Are you sure?  I think this should stay as "Userspace..." as that is
what it does, right?

Turning it off should only drop the userspace callouts, it shouldn't
stop the kernel from loading firmware from the filesystem all on its own
with no help.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] drivers: Update help for firmware loading options
  2015-10-04 19:14 ` Greg KH
@ 2015-10-04 19:24   ` Eric Biggers
  0 siblings, 0 replies; 3+ messages in thread
From: Eric Biggers @ 2015-10-04 19:24 UTC (permalink / raw)
  To: Greg KH; +Cc: linux-kernel

On Sun, Oct 04, 2015 at 08:14:16PM +0100, Greg KH wrote:
> 
> Are you sure?  I think this should stay as "Userspace..." as that is
> what it does, right?
> 
> Turning it off should only drop the userspace callouts, it shouldn't
> stop the kernel from loading firmware from the filesystem all on its own
> with no help.

As far as I can tell that's not true.  With FW_LOADER=n, firmware_class.c is
compiled out and request_firmware() always returns -EINVAL.  My patch tries to
make it more clear that FW_LOADER is the "top-level" option which covers all
three firmware loading mechanisms: built-in, directly from the filesystem, and
the user-mode helper.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-10-04 19:25 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-09 22:01 [PATCH] drivers: Update help for firmware loading options Eric Biggers
2015-10-04 19:14 ` Greg KH
2015-10-04 19:24   ` Eric Biggers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox