built-in-fw.rst 1.3 KB

123456789101112131415161718192021222324252627282930313233
  1. =================
  2. Built-in firmware
  3. =================
  4. Firmware can be built-in to the kernel, this means building the firmware
  5. into vmlinux directly, to enable avoiding having to look for firmware from
  6. the filesystem. Instead, firmware can be looked for inside the kernel
  7. directly. You can enable built-in firmware using the kernel configuration
  8. options:
  9. * CONFIG_EXTRA_FIRMWARE
  10. * CONFIG_EXTRA_FIRMWARE_DIR
  11. There are a few reasons why you might want to consider building your firmware
  12. into the kernel with CONFIG_EXTRA_FIRMWARE:
  13. * Speed
  14. * Firmware is needed for accessing the boot device, and the user doesn't
  15. want to stuff the firmware into the boot initramfs.
  16. Even if you have these needs there are a few reasons why you may not be
  17. able to make use of built-in firmware:
  18. * Legalese - firmware is non-GPL compatible
  19. * Some firmware may be optional
  20. * Firmware upgrades are possible, therefore a new firmware would implicate
  21. a complete kernel rebuild.
  22. * Some firmware files may be really large in size. The remote-proc subsystem
  23. is an example subsystem which deals with these sorts of firmware
  24. * The firmware may need to be scraped out from some device specific location
  25. dynamically, an example is calibration data for some WiFi chipsets. This
  26. calibration data can be unique per sold device.