All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Luis R. Rodriguez" <mcgrof@kernel.org>
To: gregkh@linuxfoundation.org
Cc: akpm@linux-foundation.org, keescook@chromium.org,
	josh@joshtriplett.org, maco@android.com, andy.gross@linaro.org,
	david.brown@linaro.org, bjorn.andersson@linaro.org, teg@jklm.no,
	wagi@monom.org, hdegoede@redhat.com, andresx7@gmail.com,
	zohar@linux.vnet.ibm.com, kubakici@wp.pl, shuah@kernel.org,
	mfuzzey@parkeon.com, dhowells@redhat.com, pali.rohar@gmail.com,
	tiwai@suse.de, kvalo@codeaurora.org,
	arend.vanspriel@broadcom.com, zajec5@gmail.com, nbroeking@me.com,
	markivx@codeaurora.org, broonie@kernel.org,
	dmitry.torokhov@gmail.com, dwmw2@infradead.org,
	torvalds@linux-foundation.org, Abhay_Salunke@dell.com,
	jewalt@lgsinnovations.com, oneukum@suse.com,
	cantabile.desu@gmail.com, ast@fb.com, hare@suse.com,
	jejb@linux.vnet.ibm.com, martin.petersen@oracle.com,
	khc@pm.waw.pl, davem@davemloft.net, arve@android.com,
	tkjos@android.com, corbet@lwn.net, mchehab+samsung@kernel.org,
	linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org,
	linux-scsi@vger.kernel.org, linux-wireless@vger.kernel.org,
	netdev@vger.kernel.org, "Luis R. Rodriguez" <mcgrof@kernel.org>
Subject: [PATCH v6 04/13] firmware_loader: document firmware_sysfs_fallback()
Date: Tue,  8 May 2018 11:12:38 -0700	[thread overview]
Message-ID: <20180508181247.19431-5-mcgrof@kernel.org> (raw)
In-Reply-To: <20180508181247.19431-1-mcgrof@kernel.org>

This also sets the expecations for future fallback interfaces, even
if they are not exported.

Signed-off-by: Luis R. Rodriguez <mcgrof@kernel.org>
---
 drivers/base/firmware_loader/fallback.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/drivers/base/firmware_loader/fallback.c b/drivers/base/firmware_loader/fallback.c
index 3db9e0f225ac..9169e7b9800c 100644
--- a/drivers/base/firmware_loader/fallback.c
+++ b/drivers/base/firmware_loader/fallback.c
@@ -662,6 +662,26 @@ static bool fw_run_sysfs_fallback(enum fw_opt opt_flags)
 	return fw_force_sysfs_fallback(opt_flags);
 }
 
+/**
+ * firmware_fallback_sysfs() - use the fallback mechanism to find firmware
+ * @fw: pointer to firmware image
+ * @name: name of firmware file to look for
+ * @device: device for which firmware is being loaded
+ * @opt_flags: options to control firmware loading behaviour
+ * @ret: return value from direct lookup which triggered the fallback mechanism
+ *
+ * This function is called if direct lookup for the firmware failed, it enables
+ * a fallback mechanism through userspace by exposing a sysfs loading
+ * interface. Userspace is in charge of loading the firmware through the syfs
+ * loading interface. This syfs fallback mechanism may be disabled completely
+ * on a system by setting the proc sysctl value ignore_sysfs_fallback to true.
+ * If this false we check if the internal API caller set the @FW_OPT_NOFALLBACK
+ * flag, if so it would also disable the fallback mechanism. A system may want
+ * to enfoce the sysfs fallback mechanism at all times, it can do this by
+ * setting ignore_sysfs_fallback to false and force_sysfs_fallback to true.
+ * Enabling force_sysfs_fallback is functionally equivalent to build a kernel
+ * with CONFIG_FW_LOADER_USER_HELPER_FALLBACK.
+ **/
 int firmware_fallback_sysfs(struct firmware *fw, const char *name,
 			    struct device *device,
 			    enum fw_opt opt_flags,
-- 
2.17.0

WARNING: multiple messages have this Message-ID (diff)
From: "Luis R. Rodriguez" <mcgrof@kernel.org>
To: gregkh@linuxfoundation.org
Cc: akpm@linux-foundation.org, keescook@chromium.org,
	josh@joshtriplett.org, maco@android.com, andy.gross@linaro.org,
	david.brown@linaro.org, bjorn.andersson@linaro.org, teg@jklm.no,
	wagi@monom.org, hdegoede@redhat.com, andresx7@gmail.com,
	zohar@linux.vnet.ibm.com, kubakici@wp.pl, shuah@kernel.org,
	mfuzzey@parkeon.com, dhowells@redhat.com, pali.rohar@gmail.com,
	tiwai@suse.de, kvalo@codeaurora.org,
	arend.vanspriel@broadcom.com, zajec5@gmail.com, nbroeking@me.com,
	markivx@codeaurora.org, broonie@kernel.org,
	dmitry.torokhov@gmail.com, dwmw2@infradead.org,
	torvalds@linux-foundation.org, Abhay_Salunke@dell.com,
	jewalt@lgsinnovations.com, oneukum@suse.com,
	cantabile.desu@gmail.com, ast@fb.com, hare@suse.com,
	jejb@linux.vnet.ibm.com, martin.petersen@oracle.com,
	khc@pm.waw.pl, davem@davemloft.
Subject: [PATCH v6 04/13] firmware_loader: document firmware_sysfs_fallback()
Date: Tue,  8 May 2018 11:12:38 -0700	[thread overview]
Message-ID: <20180508181247.19431-5-mcgrof@kernel.org> (raw)
In-Reply-To: <20180508181247.19431-1-mcgrof@kernel.org>

This also sets the expecations for future fallback interfaces, even
if they are not exported.

Signed-off-by: Luis R. Rodriguez <mcgrof@kernel.org>
---
 drivers/base/firmware_loader/fallback.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/drivers/base/firmware_loader/fallback.c b/drivers/base/firmware_loader/fallback.c
index 3db9e0f225ac..9169e7b9800c 100644
--- a/drivers/base/firmware_loader/fallback.c
+++ b/drivers/base/firmware_loader/fallback.c
@@ -662,6 +662,26 @@ static bool fw_run_sysfs_fallback(enum fw_opt opt_flags)
 	return fw_force_sysfs_fallback(opt_flags);
 }
 
+/**
+ * firmware_fallback_sysfs() - use the fallback mechanism to find firmware
+ * @fw: pointer to firmware image
+ * @name: name of firmware file to look for
+ * @device: device for which firmware is being loaded
+ * @opt_flags: options to control firmware loading behaviour
+ * @ret: return value from direct lookup which triggered the fallback mechanism
+ *
+ * This function is called if direct lookup for the firmware failed, it enables
+ * a fallback mechanism through userspace by exposing a sysfs loading
+ * interface. Userspace is in charge of loading the firmware through the syfs
+ * loading interface. This syfs fallback mechanism may be disabled completely
+ * on a system by setting the proc sysctl value ignore_sysfs_fallback to true.
+ * If this false we check if the internal API caller set the @FW_OPT_NOFALLBACK
+ * flag, if so it would also disable the fallback mechanism. A system may want
+ * to enfoce the sysfs fallback mechanism at all times, it can do this by
+ * setting ignore_sysfs_fallback to false and force_sysfs_fallback to true.
+ * Enabling force_sysfs_fallback is functionally equivalent to build a kernel
+ * with CONFIG_FW_LOADER_USER_HELPER_FALLBACK.
+ **/
 int firmware_fallback_sysfs(struct firmware *fw, const char *name,
 			    struct device *device,
 			    enum fw_opt opt_flags,
-- 
2.17.0

  parent reply	other threads:[~2018-05-08 18:12 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-08 18:12 [PATCH v6 00/13] firmware_loader changes for v4.18 Luis R. Rodriguez
2018-05-08 18:12 ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 01/13] firmware: wrap FW_OPT_* into an enum Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 02/13] firmware: use () to terminate kernel-doc function names Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 03/13] firmware: rename fw_sysfs_fallback to firmware_fallback_sysfs() Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:12 ` Luis R. Rodriguez [this message]
2018-05-08 18:12   ` [PATCH v6 04/13] firmware_loader: document firmware_sysfs_fallback() Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 05/13] firmware_loader: enhance Kconfig documentation over FW_LOADER Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 22:42   ` Kees Cook
2018-05-08 22:42     ` Kees Cook
2018-05-09 20:55     ` Luis R. Rodriguez
2018-05-09 20:55       ` Luis R. Rodriguez
2018-05-09 23:01       ` Kees Cook
2018-05-09 23:01         ` Kees Cook
2018-05-08 18:12 ` [PATCH v6 06/13] firmware_loader: move kconfig FW_LOADER entries to its own file Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 07/13] firmware_loader: make firmware_fallback_sysfs() print more useful Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 08/13] firmware: add firmware_request_nowarn() - load firmware without warnings Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 09/13] ath10k: use firmware_request_nowarn() to load firmware Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 10/13] ath10k: re-enable the firmware fallback mechanism for testmode Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 11/13] Documentation: fix few typos and clarifications for the firmware loader Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 12/13] Documentation: remove stale firmware API reference Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-09 15:12   ` Mauro Carvalho Chehab
2018-05-09 15:12     ` Mauro Carvalho Chehab
2018-05-09 19:43     ` Luis R. Rodriguez
2018-05-09 19:43       ` Luis R. Rodriguez
2018-05-08 18:12 ` [PATCH v6 13/13] Documentation: clarify firmware_class provenance and why we can't rename the module Luis R. Rodriguez
2018-05-08 18:12   ` Luis R. Rodriguez
2018-05-08 18:53   ` Andres Rodriguez
2018-05-08 18:53     ` Andres Rodriguez
2018-05-09 13:21   ` Mauro Carvalho Chehab
2018-05-09 13:21     ` Mauro Carvalho Chehab
2018-05-08 22:45 ` [PATCH v6 00/13] firmware_loader changes for v4.18 Kees Cook
2018-05-08 22:45   ` Kees Cook

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=20180508181247.19431-5-mcgrof@kernel.org \
    --to=mcgrof@kernel.org \
    --cc=Abhay_Salunke@dell.com \
    --cc=akpm@linux-foundation.org \
    --cc=andresx7@gmail.com \
    --cc=andy.gross@linaro.org \
    --cc=arend.vanspriel@broadcom.com \
    --cc=arve@android.com \
    --cc=ast@fb.com \
    --cc=bjorn.andersson@linaro.org \
    --cc=broonie@kernel.org \
    --cc=cantabile.desu@gmail.com \
    --cc=corbet@lwn.net \
    --cc=davem@davemloft.net \
    --cc=david.brown@linaro.org \
    --cc=dhowells@redhat.com \
    --cc=dmitry.torokhov@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=hare@suse.com \
    --cc=hdegoede@redhat.com \
    --cc=jejb@linux.vnet.ibm.com \
    --cc=jewalt@lgsinnovations.com \
    --cc=josh@joshtriplett.org \
    --cc=keescook@chromium.org \
    --cc=khc@pm.waw.pl \
    --cc=kubakici@wp.pl \
    --cc=kvalo@codeaurora.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=maco@android.com \
    --cc=markivx@codeaurora.org \
    --cc=martin.petersen@oracle.com \
    --cc=mchehab+samsung@kernel.org \
    --cc=mfuzzey@parkeon.com \
    --cc=nbroeking@me.com \
    --cc=netdev@vger.kernel.org \
    --cc=oneukum@suse.com \
    --cc=pali.rohar@gmail.com \
    --cc=shuah@kernel.org \
    --cc=teg@jklm.no \
    --cc=tiwai@suse.de \
    --cc=tkjos@android.com \
    --cc=torvalds@linux-foundation.org \
    --cc=wagi@monom.org \
    --cc=zajec5@gmail.com \
    --cc=zohar@linux.vnet.ibm.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.