linux-arm-msm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] arm64: defconfig: Disable firmware sysfs fallback
@ 2021-09-30 21:53 Bjorn Andersson
  2021-10-01  0:12 ` Dmitry Baryshkov
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Bjorn Andersson @ 2021-09-30 21:53 UTC (permalink / raw)
  To: Catalin Marinas, Will Deacon, Shawn Guo, Geert Uytterhoeven,
	Vinod Koul, Arnd Bergmann
  Cc: linux-arm-kernel, linux-kernel, linux-arm-msm, Robin Gong

Part of the enablement of SDMA on the IMX platforms, '7f4e4afa140c
("arm64: defconfig: Enable SDMA on i.mx8mq/8mm")' also enabled
CONFIG_FW_LOADER_USER_HELPER_FALLBACK, to allow "firmware loaded by
udev".

Unfortunately having the fallback enabled does, due to the 60 second
timeout, essentially requiring userspace to provide a firmware loader.
But systemd dropped the support for this interface back in 2014 and
because arm64 is the only architecture that has this enabled, there
doesn't seem to be any standard solution available.

Examples of this problem can be found in e.g. the ath10k driver, which
with a standard distro can take about 10 minutes before wlan0 appears.

The alternative to this patch would be to change these drivers to use
firmware_request_direct(), to avoid the sysfs fallback. But that would
prevent other systems, such as Android, to rely on a userspace firmware
loader to pick the firmware from a non-standard place, with just a
custom defconfig.

This patch therefor attempts to align the arm64 defconfig will all other
architectures in the upstream kernel.

Cc: Robin Gong <yibin.gong@nxp.com>
Cc: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
---
 arch/arm64/configs/defconfig | 1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index da988a54bfb9..f9e0b3fdaf0b 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -243,7 +243,6 @@ CONFIG_PCI_EPF_TEST=m
 CONFIG_DEVTMPFS=y
 CONFIG_DEVTMPFS_MOUNT=y
 CONFIG_FW_LOADER_USER_HELPER=y
-CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
 CONFIG_HISILICON_LPC=y
 CONFIG_SIMPLE_PM_BUS=y
 CONFIG_FSL_MC_BUS=y
-- 
2.29.2


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

* Re: [PATCH] arm64: defconfig: Disable firmware sysfs fallback
  2021-09-30 21:53 [PATCH] arm64: defconfig: Disable firmware sysfs fallback Bjorn Andersson
@ 2021-10-01  0:12 ` Dmitry Baryshkov
  2021-10-05  6:05 ` Shawn Guo
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Dmitry Baryshkov @ 2021-10-01  0:12 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Catalin Marinas, Will Deacon, Shawn Guo, Geert Uytterhoeven,
	Vinod Koul, Arnd Bergmann, Linux ARM, open list,
	open list:DRM DRIVER FOR MSM ADRENO GPU, Robin Gong

On Fri, 1 Oct 2021 at 00:51, Bjorn Andersson <bjorn.andersson@linaro.org> wrote:
>
> Part of the enablement of SDMA on the IMX platforms, '7f4e4afa140c
> ("arm64: defconfig: Enable SDMA on i.mx8mq/8mm")' also enabled
> CONFIG_FW_LOADER_USER_HELPER_FALLBACK, to allow "firmware loaded by
> udev".
>
> Unfortunately having the fallback enabled does, due to the 60 second
> timeout, essentially requiring userspace to provide a firmware loader.
> But systemd dropped the support for this interface back in 2014 and
> because arm64 is the only architecture that has this enabled, there
> doesn't seem to be any standard solution available.

I tend to use the following 'standard' solution:

cat /lib/udev/rules.d/50-firmware.rules
# stub for immediately telling the kernel that userspace firmware loading
# failed; necessary to avoid long timeouts with CONFIG_FW_LOADER_USER_HELPER=y
SUBSYSTEM=="firmware", ACTION=="add", ATTR{loading}="-1"

> Examples of this problem can be found in e.g. the ath10k driver, which
> with a standard distro can take about 10 minutes before wlan0 appears.
>
> The alternative to this patch would be to change these drivers to use
> firmware_request_direct(), to avoid the sysfs fallback. But that would
> prevent other systems, such as Android, to rely on a userspace firmware
> loader to pick the firmware from a non-standard place, with just a
> custom defconfig.
>
> This patch therefor attempts to align the arm64 defconfig will all other
> architectures in the upstream kernel.
>
> Cc: Robin Gong <yibin.gong@nxp.com>
> Cc: Shawn Guo <shawnguo@kernel.org>
> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

> ---
>  arch/arm64/configs/defconfig | 1 -
>  1 file changed, 1 deletion(-)
>
> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> index da988a54bfb9..f9e0b3fdaf0b 100644
> --- a/arch/arm64/configs/defconfig
> +++ b/arch/arm64/configs/defconfig
> @@ -243,7 +243,6 @@ CONFIG_PCI_EPF_TEST=m
>  CONFIG_DEVTMPFS=y
>  CONFIG_DEVTMPFS_MOUNT=y
>  CONFIG_FW_LOADER_USER_HELPER=y
> -CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
>  CONFIG_HISILICON_LPC=y
>  CONFIG_SIMPLE_PM_BUS=y
>  CONFIG_FSL_MC_BUS=y
> --
> 2.29.2
>


-- 
With best wishes
Dmitry

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

* Re: [PATCH] arm64: defconfig: Disable firmware sysfs fallback
  2021-09-30 21:53 [PATCH] arm64: defconfig: Disable firmware sysfs fallback Bjorn Andersson
  2021-10-01  0:12 ` Dmitry Baryshkov
@ 2021-10-05  6:05 ` Shawn Guo
  2021-10-16  4:40 ` patchwork-bot+linux-arm-msm
  2021-10-17 15:31 ` (subset) " Bjorn Andersson
  3 siblings, 0 replies; 5+ messages in thread
From: Shawn Guo @ 2021-10-05  6:05 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Catalin Marinas, Will Deacon, Geert Uytterhoeven, Vinod Koul,
	Arnd Bergmann, linux-arm-kernel, linux-kernel, linux-arm-msm,
	Robin Gong

On Thu, Sep 30, 2021 at 02:53:00PM -0700, Bjorn Andersson wrote:
> Part of the enablement of SDMA on the IMX platforms, '7f4e4afa140c
> ("arm64: defconfig: Enable SDMA on i.mx8mq/8mm")' also enabled
> CONFIG_FW_LOADER_USER_HELPER_FALLBACK, to allow "firmware loaded by
> udev".
> 
> Unfortunately having the fallback enabled does, due to the 60 second
> timeout, essentially requiring userspace to provide a firmware loader.
> But systemd dropped the support for this interface back in 2014 and
> because arm64 is the only architecture that has this enabled, there
> doesn't seem to be any standard solution available.
> 
> Examples of this problem can be found in e.g. the ath10k driver, which
> with a standard distro can take about 10 minutes before wlan0 appears.
> 
> The alternative to this patch would be to change these drivers to use
> firmware_request_direct(), to avoid the sysfs fallback. But that would
> prevent other systems, such as Android, to rely on a userspace firmware
> loader to pick the firmware from a non-standard place, with just a
> custom defconfig.
> 
> This patch therefor attempts to align the arm64 defconfig will all other
> architectures in the upstream kernel.
> 
> Cc: Robin Gong <yibin.gong@nxp.com>
> Cc: Shawn Guo <shawnguo@kernel.org>

Acked-by: Shawn Guo <shawnguo@kernel.org>

> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> ---
>  arch/arm64/configs/defconfig | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> index da988a54bfb9..f9e0b3fdaf0b 100644
> --- a/arch/arm64/configs/defconfig
> +++ b/arch/arm64/configs/defconfig
> @@ -243,7 +243,6 @@ CONFIG_PCI_EPF_TEST=m
>  CONFIG_DEVTMPFS=y
>  CONFIG_DEVTMPFS_MOUNT=y
>  CONFIG_FW_LOADER_USER_HELPER=y
> -CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y
>  CONFIG_HISILICON_LPC=y
>  CONFIG_SIMPLE_PM_BUS=y
>  CONFIG_FSL_MC_BUS=y
> -- 
> 2.29.2
> 

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

* Re: [PATCH] arm64: defconfig: Disable firmware sysfs fallback
  2021-09-30 21:53 [PATCH] arm64: defconfig: Disable firmware sysfs fallback Bjorn Andersson
  2021-10-01  0:12 ` Dmitry Baryshkov
  2021-10-05  6:05 ` Shawn Guo
@ 2021-10-16  4:40 ` patchwork-bot+linux-arm-msm
  2021-10-17 15:31 ` (subset) " Bjorn Andersson
  3 siblings, 0 replies; 5+ messages in thread
From: patchwork-bot+linux-arm-msm @ 2021-10-16  4:40 UTC (permalink / raw)
  To: Bjorn Andersson; +Cc: linux-arm-msm

Hello:

This patch was applied to qcom/linux.git (for-next)
by Bjorn Andersson <bjorn.andersson@linaro.org>:

On Thu, 30 Sep 2021 14:53:00 -0700 you wrote:
> Part of the enablement of SDMA on the IMX platforms, '7f4e4afa140c
> ("arm64: defconfig: Enable SDMA on i.mx8mq/8mm")' also enabled
> CONFIG_FW_LOADER_USER_HELPER_FALLBACK, to allow "firmware loaded by
> udev".
> 
> Unfortunately having the fallback enabled does, due to the 60 second
> timeout, essentially requiring userspace to provide a firmware loader.
> But systemd dropped the support for this interface back in 2014 and
> because arm64 is the only architecture that has this enabled, there
> doesn't seem to be any standard solution available.
> 
> [...]

Here is the summary with links:
  - arm64: defconfig: Disable firmware sysfs fallback
    https://git.kernel.org/qcom/c/5c1c3e2a7693

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



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

* Re: (subset) [PATCH] arm64: defconfig: Disable firmware sysfs fallback
  2021-09-30 21:53 [PATCH] arm64: defconfig: Disable firmware sysfs fallback Bjorn Andersson
                   ` (2 preceding siblings ...)
  2021-10-16  4:40 ` patchwork-bot+linux-arm-msm
@ 2021-10-17 15:31 ` Bjorn Andersson
  3 siblings, 0 replies; 5+ messages in thread
From: Bjorn Andersson @ 2021-10-17 15:31 UTC (permalink / raw)
  To: Shawn Guo, Vinod Koul, Arnd Bergmann, Catalin Marinas,
	Geert Uytterhoeven, Will Deacon, Bjorn Andersson
  Cc: linux-kernel, linux-arm-msm, linux-arm-kernel, Robin Gong

On Thu, 30 Sep 2021 14:53:00 -0700, Bjorn Andersson wrote:
> Part of the enablement of SDMA on the IMX platforms, '7f4e4afa140c
> ("arm64: defconfig: Enable SDMA on i.mx8mq/8mm")' also enabled
> CONFIG_FW_LOADER_USER_HELPER_FALLBACK, to allow "firmware loaded by
> udev".
> 
> Unfortunately having the fallback enabled does, due to the 60 second
> timeout, essentially requiring userspace to provide a firmware loader.
> But systemd dropped the support for this interface back in 2014 and
> because arm64 is the only architecture that has this enabled, there
> doesn't seem to be any standard solution available.
> 
> [...]

Applied, thanks!

[1/1] arm64: defconfig: Disable firmware sysfs fallback
      commit: 5c1c3e2a7693c5e47a7d93898ade1acaac2afb38

Best regards,
-- 
Bjorn Andersson <bjorn.andersson@linaro.org>

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

end of thread, other threads:[~2021-10-17 15:31 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-30 21:53 [PATCH] arm64: defconfig: Disable firmware sysfs fallback Bjorn Andersson
2021-10-01  0:12 ` Dmitry Baryshkov
2021-10-05  6:05 ` Shawn Guo
2021-10-16  4:40 ` patchwork-bot+linux-arm-msm
2021-10-17 15:31 ` (subset) " Bjorn Andersson

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).