[PATCH AUTOSEL 5.10 11/11] firmware: include drivers/firmware/Kconfig unconditionally

From: Sasha Levin
Date: Tue Oct 12 2021 - 20:56:30 EST


From: Arnd Bergmann <arnd@xxxxxxxx>

[ Upstream commit 951cd3a0866d29cb9c01ebc1d9c17590e598226e ]

Compile-testing drivers that require access to a firmware layer
fails when that firmware symbol is unavailable. This happened
twice this week:

- My proposed to change to rework the QCOM_SCM firmware symbol
broke on ppc64 and others.

- The cs_dsp firmware patch added device specific firmware loader
into drivers/firmware, which broke on the same set of
architectures.

We should probably do the same thing for other subsystems as well,
but fix this one first as this is a dependency for other patches
getting merged.

Reviewed-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
Reviewed-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxx>
Acked-by: Will Deacon <will@xxxxxxxxxx>
Acked-by: Bjorn Andersson <bjorn.andersson@xxxxxxxxxx>
Cc: Mark Brown <broonie@xxxxxxxxxx>
Cc: Liam Girdwood <lgirdwood@xxxxxxxxx>
Cc: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxx>
Cc: Simon Trimmer <simont@xxxxxxxxxxxxxxxxxxxxx>
Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx>
Reviewed-by: Mark Brown <broonie@xxxxxxxxxx>
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
arch/arm/Kconfig | 2 --
arch/arm64/Kconfig | 2 --
arch/ia64/Kconfig | 2 --
arch/mips/Kconfig | 2 --
arch/parisc/Kconfig | 2 --
arch/riscv/Kconfig | 2 --
arch/x86/Kconfig | 2 --
drivers/Kconfig | 2 ++
8 files changed, 2 insertions(+), 14 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 002e0cf025f5..d4c6b95b24d7 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -2043,8 +2043,6 @@ config ARCH_HIBERNATION_POSSIBLE

endmenu

-source "drivers/firmware/Kconfig"
-
if CRYPTO
source "arch/arm/crypto/Kconfig"
endif
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 5e5cf3af6351..f4809760a806 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -1933,8 +1933,6 @@ source "drivers/cpufreq/Kconfig"

endmenu

-source "drivers/firmware/Kconfig"
-
source "drivers/acpi/Kconfig"

source "arch/arm64/kvm/Kconfig"
diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig
index 39b25a5a591b..e8014d2e36c0 100644
--- a/arch/ia64/Kconfig
+++ b/arch/ia64/Kconfig
@@ -426,8 +426,6 @@ config CRASH_DUMP
help
Generate crash dump after being started by kexec.

-source "drivers/firmware/Kconfig"
-
endmenu

menu "Power management and ACPI options"
diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
index 1a63f592034e..3bd3a01a2a2b 100644
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -3328,8 +3328,6 @@ source "drivers/cpuidle/Kconfig"

endmenu

-source "drivers/firmware/Kconfig"
-
source "arch/mips/kvm/Kconfig"

source "arch/mips/vdso/Kconfig"
diff --git a/arch/parisc/Kconfig b/arch/parisc/Kconfig
index 14f3252f2da0..ad13477fb40c 100644
--- a/arch/parisc/Kconfig
+++ b/arch/parisc/Kconfig
@@ -378,6 +378,4 @@ config KEXEC_FILE

endmenu

-source "drivers/firmware/Kconfig"
-
source "drivers/parisc/Kconfig"
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index f7abd118d23d..fcb8e5da148e 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -428,5 +428,3 @@ menu "Power management options"
source "kernel/power/Kconfig"

endmenu
-
-source "drivers/firmware/Kconfig"
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index f3c8a8110f60..499f3cc1e62f 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -2899,8 +2899,6 @@ config HAVE_ATOMIC_IOMAP
def_bool y
depends on X86_32

-source "drivers/firmware/Kconfig"
-
source "arch/x86/kvm/Kconfig"

source "arch/x86/Kconfig.assembler"
diff --git a/drivers/Kconfig b/drivers/Kconfig
index dcecc9f6e33f..493ac7ffd8d0 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -16,6 +16,8 @@ source "drivers/bus/Kconfig"

source "drivers/connector/Kconfig"

+source "drivers/firmware/Kconfig"
+
source "drivers/gnss/Kconfig"

source "drivers/mtd/Kconfig"
--
2.33.0