The Linux Kernel
5.17.0
  • The Linux kernel user’s and administrator’s guide
  • Kernel Build System
  • The Linux kernel firmware guide
  • Open Firmware and Devicetree
  • The Linux kernel user-space API guide
  • Working with the kernel development community
  • Development tools for the kernel
  • How to write kernel documentation
  • Kernel Hacking Guides
  • Linux Tracing Technologies
  • Kernel Maintainer Handbook
  • fault-injection
  • Kernel Livepatching
  • The Linux driver implementer’s API guide
    • Driver Model
    • Driver Basics
    • Device drivers infrastructure
    • ioctl based interfaces
    • Early Userspace
    • CPU and Device Power Management
    • The Common Clk Framework
    • Bus-Independent Device Accesses
    • Buffer Sharing and Synchronization
    • Device links
    • Component Helper for Aggregate Drivers
    • Message-based devices
    • InfiniBand and Remote DMA (RDMA) Interfaces
    • Frame Buffer Library
    • Voltage and current regulator API
    • Reset controller API
    • Industrial I/O
    • Input Subsystem
    • Linux USB API
    • Firewire (IEEE 1394) driver Interface Guide
    • The Linux PCI driver implementer’s API guide
    • Compute Express Link
    • Serial Peripheral Interface (SPI)
    • I2C and SMBus Subsystem
    • IPMB Driver for a Satellite MC
    • The Linux IPMI Driver
    • I3C subsystem
    • Generic System Interconnect Subsystem
    • Device Frequency Scaling
    • High Speed Synchronous Serial Interface (HSI)
    • Error Detection And Correction (EDAC) Devices
    • SCSI Interfaces Guide
    • libATA Developer’s Guide
    • target and iSCSI Interfaces Guide
    • The Common Mailbox Framework
    • MTD NAND Driver Programming Interface
    • Parallel Port Devices
    • 16x50 UART Driver
    • Pulse-Width Modulation (PWM)
    • Intel(R) Management Engine Interface (Intel(R) MEI)
    • Memory Technology Device (MTD)
    • MMC/SD/SDIO card support
    • Non-Volatile Memory Device (NVDIMM)
    • W1: Dallas’ 1-wire bus
    • The Linux RapidIO Subsystem
    • Writing s390 channel device drivers
    • VME Device Drivers
    • Linux 802.11 Driver Developer’s Guide
    • The Userspace I/O HOWTO
    • Linux Firmware API
      • Introduction
      • Firmware API core features
        • Firmware search paths
        • Built-in firmware
        • Firmware cache
        • Direct filesystem lookup
        • Fallback mechanisms
        • Firmware lookup order
      • UEFI Support
      • request_firmware API
      • Other Firmware Interfaces
    • PINCTRL (PIN CONTROL) subsystem
    • General Purpose Input/Output (GPIO)
    • RAID
    • Media subsystem kernel internal API
    • Miscellaneous Devices
    • Near Field Communication
    • DMAEngine documentation
    • Linux kernel SLIMbus support
    • SoundWire Documentation
    • Thermal
    • FPGA Subsystem
    • ACPI Support
    • Auxiliary Bus
    • Kernel driver lp855x
    • Kernel Connector
    • Console Drivers
    • Dell Systems Management Base Driver
    • EISA bus support
    • ISA Drivers
    • ISA Plug & Play support by Jaroslav Kysela <perex@suse.cz>
    • The io_mapping functions
    • Ordering I/O writes to memory-mapped addresses
    • Generic Counter Interface
    • Memory Controller drivers
    • MEN Chameleon Bus
    • NTB Drivers
    • NVMEM Subsystem
    • PARPORT interface documentation
    • PPS - Pulse Per Second
    • PTP hardware clock infrastructure for Linux
    • Generic PHY Framework
    • Pulse Width Modulation (PWM) interface
    • PLDM Firmware Flash Update Library
    • Overview of the pldmfw library
    • rfkill - RF kill switch support
    • Support for Serial devices
    • SM501 Driver
    • Surface System Aggregator Module (SSAM)
    • Linux Switchtec Support
    • Sync File API Guide
    • VFIO Mediated devices
    • VFIO - “Virtual Function I/O”
    • Xilinx FPGA
    • Xillybus driver for generic FPGA interface
    • Writing Device Drivers for Zorro Devices
  • Core API Documentation
  • locking
  • Accounting
  • Block
  • cdrom
  • Linux CPUFreq - CPU frequency and voltage scaling code in the Linux(TM) kernel
  • Integrated Drive Electronics (IDE)
  • Frame Buffer
  • fpga
  • Human Interface Devices (HID)
  • I2C/SMBus Subsystem
  • Industrial I/O
  • ISDN
  • InfiniBand
  • LEDs
  • NetLabel
  • Linux Networking Documentation
  • pcmcia
  • Power Management
  • TCM Virtual Device
  • timers
  • Serial Peripheral Interface (SPI)
  • 1-Wire Subsystem
  • Linux Watchdog Support
  • Linux Virtualization Support
  • The Linux Input Documentation
  • Linux Hardware Monitoring
  • Linux GPU Driver Developer’s Guide
  • Security Documentation
  • Linux Sound Subsystem Documentation
  • Linux Kernel Crypto API
  • Filesystems in the Linux kernel
  • Linux Memory Management Documentation
  • BPF Documentation
  • USB support
  • Linux PCI Bus Subsystem
  • Linux SCSI Subsystem
  • Assorted Miscellaneous Devices Documentation
  • Linux Scheduler
  • MHI
  • TTY
  • Assembler Annotations
  • CPU Architectures
  • Kernel tools
  • Unsorted Documentation
  • Atomic Types
  • Atomic bitops
  • Memory Barriers
  • General notification mechanism
  • Translations
The Linux Kernel
  • »
  • The Linux driver implementer’s API guide »
  • Linux Firmware API »
  • Firmware API core features
  • View page source

Firmware API core features¶

The firmware API has a rich set of core features available. This section documents these features.

  • Firmware search paths
  • Built-in firmware
  • Firmware cache
  • Direct filesystem lookup
    • Firmware and initramfs
  • Fallback mechanisms
    • Justifying the firmware fallback mechanism
    • Types of fallback mechanisms
    • Firmware sysfs loading facility
      • firmware_fallback_sysfs
    • Firmware kobject uevent fallback mechanism
    • Firmware custom fallback mechanism
    • Firmware fallback timeout
    • EFI embedded firmware fallback mechanism
      • Example how to check for and extract embedded firmware
  • Firmware lookup order
Next Previous

© Copyright The kernel development community.

Built with Sphinx using a theme provided by Read the Docs.