mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-05 10:29:37 +00:00
![Benjamin Gilbert](/assets/img/avatar_default.png)
We've removed the option, so stop talking about it. Signed-off-by: Benjamin Gilbert <benjamin.gilbert@coreos.com> Acked-by: Ingo Molnar <mingo@kernel.org> Cc: Borislav Petkov <bp@suse.de> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: H. Peter Anvin <hpa@zytor.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
33 lines
1.3 KiB
ReStructuredText
33 lines
1.3 KiB
ReStructuredText
=================
|
|
Built-in firmware
|
|
=================
|
|
|
|
Firmware can be built-in to the kernel, this means building the firmware
|
|
into vmlinux directly, to enable avoiding having to look for firmware from
|
|
the filesystem. Instead, firmware can be looked for inside the kernel
|
|
directly. You can enable built-in firmware using the kernel configuration
|
|
options:
|
|
|
|
* CONFIG_EXTRA_FIRMWARE
|
|
* CONFIG_EXTRA_FIRMWARE_DIR
|
|
|
|
There are a few reasons why you might want to consider building your firmware
|
|
into the kernel with CONFIG_EXTRA_FIRMWARE:
|
|
|
|
* Speed
|
|
* Firmware is needed for accessing the boot device, and the user doesn't
|
|
want to stuff the firmware into the boot initramfs.
|
|
|
|
Even if you have these needs there are a few reasons why you may not be
|
|
able to make use of built-in firmware:
|
|
|
|
* Legalese - firmware is non-GPL compatible
|
|
* Some firmware may be optional
|
|
* Firmware upgrades are possible, therefore a new firmware would implicate
|
|
a complete kernel rebuild.
|
|
* Some firmware files may be really large in size. The remote-proc subsystem
|
|
is an example subsystem which deals with these sorts of firmware
|
|
* The firmware may need to be scraped out from some device specific location
|
|
dynamically, an example is calibration data for for some WiFi chipsets. This
|
|
calibration data can be unique per sold device.
|
|
|