[PATCH 11/14] firmware_loader: rename EXTRA_FIRMWARE and EXTRA_FIRMWARE_DIR

From: Luis R. Rodriguez
Date: Fri Sep 17 2021 - 14:22:59 EST


From: Luis Chamberlain <mcgrof@xxxxxxxxxx>

Now that we've tied loose ends on the built-in firmware API,
rename the kconfig symbols for it to reflect more that they are
associated to the firmware_loader and to make it easier to
understand what they are for.

Signed-off-by: Luis Chamberlain <mcgrof@xxxxxxxxxx>
---
.../driver-api/firmware/built-in-fw.rst | 6 +++---
Documentation/x86/microcode.rst | 6 +++---
arch/x86/Kconfig | 4 ++--
drivers/base/firmware_loader/Kconfig | 20 +++++++++++--------
drivers/base/firmware_loader/builtin/Makefile | 6 +++---
drivers/staging/media/av7110/Kconfig | 4 ++--
6 files changed, 25 insertions(+), 21 deletions(-)

diff --git a/Documentation/driver-api/firmware/built-in-fw.rst b/Documentation/driver-api/firmware/built-in-fw.rst
index 9dd2b1df44f0..b36ea4b13b5e 100644
--- a/Documentation/driver-api/firmware/built-in-fw.rst
+++ b/Documentation/driver-api/firmware/built-in-fw.rst
@@ -9,11 +9,11 @@ directly. You can enable built-in firmware using the kernel configuration
options:

* CONFIG_FW_LOADER_BUILTIN
- * CONFIG_EXTRA_FIRMWARE
- * CONFIG_EXTRA_FIRMWARE_DIR
+ * CONFIG_FW_LOADER_BUILTIN_FILES
+ * CONFIG_FW_LOADER_BUILTIN_DIR

There are a few reasons why you might want to consider building your firmware
-into the kernel with CONFIG_EXTRA_FIRMWARE:
+into the kernel with CONFIG_FW_LOADER_BUILTIN_FILES:

* Speed
* Firmware is needed for accessing the boot device, and the user doesn't
diff --git a/Documentation/x86/microcode.rst b/Documentation/x86/microcode.rst
index d199f0b98869..7aa9c86b2868 100644
--- a/Documentation/x86/microcode.rst
+++ b/Documentation/x86/microcode.rst
@@ -115,13 +115,13 @@ Builtin microcode

The loader supports also loading of a builtin microcode supplied through
the regular builtin firmware method using CONFIG_FW_LOADER_BUILTIN and
-CONFIG_EXTRA_FIRMWARE. Only 64-bit is currently supported.
+CONFIG_FW_LOADER_BUILTIN_FILES. Only 64-bit is currently supported.

Here's an example::

CONFIG_FW_LOADER_BUILTIN=y
- CONFIG_EXTRA_FIRMWARE="intel-ucode/06-3a-09 amd-ucode/microcode_amd_fam15h.bin"
- CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware"
+ CONFIG_FW_LOADER_BUILTIN_FILES="intel-ucode/06-3a-09 amd-ucode/microcode_amd_fam15h.bin"
+ CONFIG_FW_LOADER_BUILTIN_DIR="/lib/firmware"

This basically means, you have the following tree structure locally::

diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 25960fe242bd..60eae188ebe0 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -1304,8 +1304,8 @@ config MICROCODE
initrd for microcode blobs.

In addition, you can build the microcode into the kernel. For that you
- need to add the vendor-supplied microcode to the CONFIG_EXTRA_FIRMWARE
- config option.
+ need to add the vendor-supplied microcode to the configuration option
+ CONFIG_FW_LOADER_BUILTIN_FILES

config MICROCODE_INTEL
bool "Intel microcode loading support"
diff --git a/drivers/base/firmware_loader/Kconfig b/drivers/base/firmware_loader/Kconfig
index de4fcd9d41f3..181bfbc108e6 100644
--- a/drivers/base/firmware_loader/Kconfig
+++ b/drivers/base/firmware_loader/Kconfig
@@ -22,7 +22,7 @@ config FW_LOADER
You typically want this built-in (=y) but you can also enable this
as a module, in which case the firmware_class module will be built.
You also want to be sure to enable this built-in if you are going to
- enable built-in firmware (CONFIG_EXTRA_FIRMWARE).
+ enable built-in firmware (CONFIG_FW_LOADER_BUILTIN_FILES).

if FW_LOADER

@@ -48,18 +48,22 @@ config FW_LOADER_BUILTIN
Support for built-in firmware is not supported if you are using
the firmware loader as a module.

-config EXTRA_FIRMWARE
+config FW_LOADER_BUILTIN_FILES
string "Build named firmware blobs into the kernel binary"
depends on FW_LOADER_BUILTIN
help
This option is a string and takes the space-separated names of the
firmware files -- the same names that appear in MODULE_FIRMWARE()
and request_firmware() in the source. These files should exist under
- the directory specified by the EXTRA_FIRMWARE_DIR option, which is
+ the directory specified by the FW_LOADER_BUILTIN_DIR option, which is
/lib/firmware by default.

- For example, you might set CONFIG_EXTRA_FIRMWARE="usb8388.bin", copy
- the usb8388.bin file into /lib/firmware, and build the kernel. Then
+ For example, you might have set:
+
+ CONFIG_FW_LOADER_BUILTIN_FILES="usb8388.bin"
+
+ After this you would copy the usb8388.bin file into directory
+ specified by FW_LOADER_BUILTIN_DIR and build the kernel. Then
any request_firmware("usb8388.bin") will be satisfied internally
inside the kernel without ever looking at your filesystem at runtime.

@@ -69,15 +73,15 @@ config EXTRA_FIRMWARE
image since it combines both GPL and non-GPL work. You should
consult a lawyer of your own before distributing such an image.

-config EXTRA_FIRMWARE_DIR
+config FW_LOADER_BUILTIN_DIR
string "Directory with firmware to be built-in to the kernel"
depends on FW_LOADER_BUILTIN
default "/lib/firmware"
help
This option specifies the directory which the kernel build system
will use to look for the firmware files which are going to be
- built into the kernel using the space-separated EXTRA_FIRMWARE
- entries.
+ built into the kernel using the space-separated
+ FW_LOADER_BUILTIN_FILES entries.

config FW_LOADER_USER_HELPER
bool "Enable the firmware sysfs fallback mechanism"
diff --git a/drivers/base/firmware_loader/builtin/Makefile b/drivers/base/firmware_loader/builtin/Makefile
index eb4be452062a..7cdd0b5c7384 100644
--- a/drivers/base/firmware_loader/builtin/Makefile
+++ b/drivers/base/firmware_loader/builtin/Makefile
@@ -1,12 +1,12 @@
# SPDX-License-Identifier: GPL-2.0
obj-y += main.o

-# Create $(fwdir) from $(CONFIG_EXTRA_FIRMWARE_DIR) -- if it doesn't have a
+# Create $(fwdir) from $(CONFIG_FW_LOADER_BUILTIN_DIR) -- if it doesn't have a
# leading /, it's relative to $(srctree).
-fwdir := $(subst $(quote),,$(CONFIG_EXTRA_FIRMWARE_DIR))
+fwdir := $(subst $(quote),,$(CONFIG_FW_LOADER_BUILTIN_DIR))
fwdir := $(addprefix $(srctree)/,$(filter-out /%,$(fwdir)))$(filter /%,$(fwdir))

-firmware := $(addsuffix .gen.o, $(subst $(quote),,$(CONFIG_EXTRA_FIRMWARE)))
+firmware := $(addsuffix .gen.o, $(subst $(quote),,$(CONFIG_FW_LOADER_BUILTIN_FILES)))
obj-y += $(firmware)

FWNAME = $(patsubst $(obj)/%.gen.S,%,$@)
diff --git a/drivers/staging/media/av7110/Kconfig b/drivers/staging/media/av7110/Kconfig
index 9faf9d2d4001..87c7702f72f6 100644
--- a/drivers/staging/media/av7110/Kconfig
+++ b/drivers/staging/media/av7110/Kconfig
@@ -31,8 +31,8 @@ config DVB_AV7110
or /lib/firmware (depending on configuration of firmware hotplug).

Alternatively, you can download the file and use the kernel's
- EXTRA_FIRMWARE configuration option to build it into your
- kernel image by adding the filename to the EXTRA_FIRMWARE
+ FW_LOADER_BUILTIN_FILES configuration option to build it into your
+ kernel image by adding the filename to the FW_LOADER_BUILTIN_FILES
configuration option string.

Say Y if you own such a card and want to use it.
--
2.30.2