]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/base/Kconfig
firmware: Add CONFIG_EXTRA_FIRMWARE option
[linux-2.6-omap-h63xx.git] / drivers / base / Kconfig
index d7da109c24fd298a5bf6cd527bb3b0fdad783d7a..13cfcb435f7d3e988cf792e106d8cd8cd0693e21 100644 (file)
@@ -34,6 +34,45 @@ config FW_LOADER
          require userspace firmware loading support, but a module built outside
          the kernel tree does.
 
+config EXTRA_FIRMWARE
+       string "External firmware blobs to build into the kernel binary"
+       depends on FW_LOADER
+       help
+         This option allows firmware to be built into the kernel, for the
+         cases where the user either cannot or doesn't want to provide it from
+         userspace at runtime (for example, when the firmware in question is
+         required for accessing the boot device, and the user doesn't want to
+         use an initrd).
+
+         This option is a string, and takes the (space-separated) names of the
+         firmware files -- the same names which 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
+         by default the firmware/ subdirectory of the kernel source tree.
+
+         So, for example, you might set CONFIG_EXTRA_FIRMWARE="usb8388.bin",
+         copy the usb8388.bin file into the firmware/ directory, and build the
+         kernel. Then any request_firmware("usb8388.bin") will be
+         satisfied internally without needing to call out to userspace.
+
+         WARNING: If you include additional firmware files into your binary
+         kernel image which are not available under the terms of the GPL,
+         then it may be a violation of the GPL to distribute the resulting
+         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
+       string "Firmware blobs root directory"
+       depends on EXTRA_FIRMWARE != ""
+       default "firmware"
+       help
+         This option controls the directory in which the kernel build system
+         looks for the firmware files listed in the EXTRA_FIRMWARE option.
+         The default is the firmware/ directory in the kernel source tree,
+         but by changing this option you can point it elsewhere, such as
+         the /lib/firmware/ directory or another separate directory
+         containing firmware files.
+
 config DEBUG_DRIVER
        bool "Driver Core verbose debug messages"
        depends on DEBUG_KERNEL