summaryrefslogtreecommitdiff
path: root/Documentation/driver-api/firmware/lookup-order.rst
blob: 6064672a782ec4df2443bba8bde7643aa6715f1c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
=====================
Firmware lookup order
=====================

Different functionality is available to enable firmware to be found.
Below is chronological order of how firmware will be looked for once
a driver issues a firmware API call.

* The ''Built-in firmware'' is checked first, if the firmware is present we
  return it immediately
* The ''Firmware cache'' is looked at next. If the firmware is found we
  return it immediately
* The ''Direct filesystem lookup'' is performed next, if found we
  return it immediately
* The ''Platform firmware fallback'' is performed next, but only when
  firmware_request_platform() is used, if found we return it immediately
* If no firmware has been found and the fallback mechanism was enabled
  the sysfs interface is created. After this either a kobject uevent
  is issued or the custom firmware loading is relied upon for firmware
  loading up to the timeout value.