fwupd/plugins
Mario Limonciello f57a6637c9 trivial: fix man page sections
They're marked in the man page as section 8 but installed into 1.
They should be installed into 1 as they're not admin tools.
2022-01-04 14:17:43 -06:00
..
acpi-dmar Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
acpi-facp Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
acpi-phat Make more plugins optional 2021-11-29 09:30:57 +00:00
amt Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
analogix Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
ata Check the value range when parsing the quirk keys 2021-12-09 13:09:43 +00:00
bcm57xx Make more plugins optional 2021-11-29 09:30:57 +00:00
bios Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
ccgx Check the value range when parsing the quirk keys 2021-12-09 13:09:43 +00:00
cfu cfu: Add a missing version setter 2021-12-10 15:58:22 +00:00
colorhug Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
cpu trivial: Add the missing plugin_cpu 2021-12-10 12:00:33 +00:00
cros-ec add new device Belkin docking station : VID050D/PID003F 2021-12-16 11:57:19 +00:00
dell trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
dell-dock trivial: win32: don't reference synaptics-mst plugin 2021-12-15 06:46:27 -06:00
dell-esrt Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
dfu trivial: fix man page sections 2022-01-04 14:17:43 -06:00
dfu-csr Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
ebitdo Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
elanfp elanfp: Add some sanity checks to the firmware parser 2021-11-23 14:56:47 +00:00
elantp Check the value range when parsing the quirk keys 2021-12-09 13:09:43 +00:00
emmc Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
ep963x Make more plugins optional 2021-11-29 09:30:57 +00:00
fastboot plugins/fastboot: increase operation delay for Quectel EG25-G 2021-12-15 22:07:23 +00:00
flashrom plugins/flashrom: Change StarLabs devices from number to plain 2021-12-17 16:44:16 +00:00
fresco-pd Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
goodix-moc Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
hailuck Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
intel-spi Check the value range when parsing the quirk keys 2021-12-09 13:09:43 +00:00
iommu Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
jabra Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
lenovo-thinklmi trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
linux-lockdown trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
linux-sleep Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
linux-swap trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
linux-tainted trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
logind Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
logitech-bulkcontroller logitech-bulkcontroller: Assign the update interface correctly 2022-01-04 18:13:59 +00:00
logitech-hidpp logitech-hidpp: Use endian-safe version functions 2021-12-10 15:59:57 +00:00
modem-manager trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
msr Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
mtd Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
nitrokey Make more plugins optional 2021-11-29 09:30:57 +00:00
nordic-hid trivial: Remove unused variable 2021-12-30 15:14:26 +00:00
nvme nvme: ignore non-PCI NVMe devices 2021-12-29 11:13:55 -06:00
optionrom Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
parade-lspcon parade-lspcon: Add a missing error check 2021-12-10 15:58:39 +00:00
pci-bcr Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
pci-mei Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
pixart-rf trivial: Fix precommit issue with PixArt quirk file 2021-12-29 10:44:45 +00:00
platform-integrity Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
powerd trivial: Fix various const issues 2022-01-03 22:46:23 +00:00
realtek-mst trivial: Remove some unused variables 2021-12-10 16:00:07 +00:00
redfish trivial: Add some more annotations for language bindings 2022-01-03 22:46:23 +00:00
rts54hid Check the value range when parsing the quirk keys 2021-12-09 13:09:43 +00:00
rts54hub Check the value range when parsing the quirk keys 2021-12-09 13:09:43 +00:00
steelseries trivial: Remove some unused variables 2021-12-10 16:00:07 +00:00
superio trivial: Add some more annotations for language bindings 2022-01-03 22:46:23 +00:00
synaptics-cape synaptics-cape: Do not assume we can align uint8_t to uint32_t 2021-12-10 15:59:24 +00:00
synaptics-cxaudio Check the value range when parsing the quirk keys 2021-12-09 13:09:43 +00:00
synaptics-mst trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
synaptics-prometheus trivial: synaptics-prometheus: add some other product IDs 2021-12-07 14:05:07 -06:00
synaptics-rmi Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
system76-launch system76-launch: Wait for the device to come back from DFU mode 2021-11-27 08:26:51 +00:00
test Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
thelio-io Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
thunderbolt trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
tpm trivial: Fix an impossible-to-hit scan-build warning 2022-01-03 22:46:23 +00:00
uefi-capsule trivial: fix man page sections 2022-01-04 14:17:43 -06:00
uefi-dbx trivial: fix man page sections 2022-01-04 14:17:43 -06:00
uefi-pk Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
uefi-recovery Speed up the daemon startup by ~2% by doing dlsym much less 2021-11-09 12:02:07 +00:00
uf2 uf2: Fix fuzzer timeout when parsing an invalid UF2 file 2021-12-22 11:46:03 +00:00
upower trivial: Fix various const issues 2022-01-03 22:46:23 +00:00
usi-dock trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
vli trivial: Cast the g_signal_connect() object to allow static analysis 2022-01-03 22:46:23 +00:00
wacom-raw Check the value range when parsing the quirk keys 2021-12-09 13:09:43 +00:00
wacom-usb trivial: Add some more annotations for language bindings 2022-01-03 22:46:23 +00:00
meson.build Add support for UF2 devices 2021-12-21 10:06:18 +00:00
README.md Rename the development branch from master to main 2021-09-24 14:20:24 -05:00

Adding a new plugin

An extensible architecture allows for providing new plugin types (for reading and writing different firmware) as well as ways quirk their behavior.

You can find more information about the architecture in the developers section of the fwupd website.

You can use the fwupd developer documentation to assist with APIs available to write the plugin.

If you have a firmware specification and would like to see support in this project, please file an issue and share the spec. Patches are also welcome.

We will not accept plugins that upgrade hardware using a proprietary Linux executable, proprietary UEFI executable, proprietary library, or DBus interface.

Plugin interaction

Some plugins may be able to influence the behavior of other plugins. This includes things like one plugin turning on a device, or providing missing metadata to another plugin.

The ABI for these interactions is defined in: https://github.com/fwupd/fwupd/blob/main/libfwupdplugin/fu-device-metadata.h

All interactions between plugins should have the interface defined in that file.