fwupd/plugins
2021-01-05 17:09:02 +00:00
..
acpi-dmar Add external interface messages 2020-10-26 12:05:20 -05:00
acpi-facp Add external interface messages 2020-10-26 12:05:20 -05:00
altos Make the 'id' for fu_plugin_add_firmware_gtype() optional 2021-01-04 15:27:10 +00:00
amt Add external interface messages 2020-10-26 12:05:20 -05:00
ata ata: Add OUI quirk for Transcend 2021-01-05 16:20:09 +00:00
bcm57xx Make the 'id' for fu_plugin_add_firmware_gtype() optional 2021-01-04 15:27:10 +00:00
bios Export FwupdPlugin so we can convey enumerated system errors to the end user 2020-10-13 15:56:49 +01:00
ccgx ccgx: Fix a critical warning when parsing invalid firmware 2021-01-05 15:59:30 +00:00
colorhug colorhug: Don't set the version format to triplet at startup 2020-11-07 08:03:24 +00:00
coreboot Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
cpu trivial: Don't crash when failing to detect the CPU 2020-12-10 20:43:54 +00:00
cros-ec Make the 'id' for fu_plugin_add_firmware_gtype() optional 2021-01-04 15:27:10 +00:00
csr Add external interface messages 2020-10-26 12:05:20 -05:00
dell uefi: Rename to uefi-capsule 2021-01-05 15:31:22 +00:00
dell-dock Add external interface messages 2020-10-26 12:05:20 -05:00
dell-esrt Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
dfu libfwupdplugin: Use G_GNUC_WARN_UNUSED_RESULT for methods that should be checked 2021-01-04 15:24:35 +00:00
ebitdo Make the 'id' for fu_plugin_add_firmware_gtype() optional 2021-01-04 15:27:10 +00:00
elantp Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
emmc Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
ep963x Make the 'id' for fu_plugin_add_firmware_gtype() optional 2021-01-04 15:27:10 +00:00
fastboot Add external interface messages 2020-10-26 12:05:20 -05:00
flashrom Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
fresco-pd Make the 'id' for fu_plugin_add_firmware_gtype() optional 2021-01-04 15:27:10 +00:00
goodix-moc trivial: Require <string.h> for strlen() and memcpy() 2020-12-14 16:49:03 +00:00
hailuck hailuck: Fix a critical warning when parsing invalid firmware 2021-01-05 15:59:30 +00:00
iommu Add external interface messages 2020-10-26 12:05:20 -05:00
jabra trivial: Require <string.h> for strlen() and memcpy() 2020-12-14 16:49:03 +00:00
linux-lockdown Add external interface messages 2020-10-26 12:05:20 -05:00
linux-sleep Add external interface messages 2020-10-26 12:05:20 -05:00
linux-swap trivial: Fix swap self tests 2020-11-10 19:55:33 +00:00
linux-tainted Add external interface messages 2020-10-26 12:05:20 -05:00
logind Add external interface messages 2020-10-26 12:05:20 -05:00
logitech-hidpp Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
modem-manager Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
msr Install modules-load configs in the correct directory 2020-11-16 15:27:13 +00:00
nitrokey trivial: Fix two more missing <string.h> instances 2020-12-14 20:24:04 +00:00
nvme Add external interface messages 2020-10-26 12:05:20 -05:00
optionrom Use honggfuzz to fuzz firmware rather than AFL 2020-12-11 09:37:42 +00:00
pci-bcr trivial: Fix some error prefixes 2020-11-06 09:57:03 +00:00
pci-mei Add external interface messages 2020-10-26 12:05:20 -05:00
pixart-rf Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
platform-integrity Install modules-load configs in the correct directory 2020-11-16 15:27:13 +00:00
redfish Lower the CURL version required to fix build in RHEL 2020-12-07 14:17:22 +00:00
rts54hid plugins: rts54hid fix get report index error 2020-12-23 09:33:35 +00:00
rts54hub plugins: rts54hub: add Lenovo HotRod VID/PID 2020-12-31 09:18:46 +00:00
solokey Make the 'id' for fu_plugin_add_firmware_gtype() optional 2021-01-04 15:27:10 +00:00
steelseries Add external interface messages 2020-10-26 12:05:20 -05:00
superio Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
synaptics-cxaudio synaptics-cxaudio: Fix a critical warning when parsing invalid firmware 2021-01-05 15:59:30 +00:00
synaptics-mst Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
synaptics-prometheus synaptics-prometheus: Fix flashing a fingerprint reader that is in use 2021-01-04 21:52:10 +00:00
synaptics-rmi trivial: Fix up some NULL/FALSE confusion 2021-01-04 16:32:50 +00:00
test Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
thelio-io Add external interface messages 2020-10-26 12:05:20 -05:00
thunderbolt Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
tpm Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
tpm-eventlog uefi: Rename to uefi-capsule 2021-01-05 15:31:22 +00:00
uefi-capsule uefi: Rename to uefi-capsule 2021-01-05 15:31:22 +00:00
uefi-dbx libfwupdplugin: Export FuEfiSignatureList for plugins to use 2021-01-05 16:42:58 +00:00
uefi-pk Check the AMI test key if not installed for HSI-1 2021-01-05 17:09:02 +00:00
uefi-recovery uefi: Rename to uefi-capsule 2021-01-05 15:31:22 +00:00
upower Add external interface messages 2020-10-26 12:05:20 -05:00
vli Make the 'id' for fu_plugin_add_firmware_gtype() optional 2021-01-04 15:27:10 +00:00
wacom-raw trivial: Fix some error prefixes 2020-11-06 09:57:03 +00:00
wacom-usb Allow specifying more than one VendorID for a device 2021-01-04 22:30:20 +00:00
meson.build Check the AMI test key if not installed for HSI-1 2021-01-05 17:09:02 +00:00
README.md trivial: plugins: clarify stance on afuefi.efi 2019-08-23 10:54:58 -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/master/src/fu-device-metadata.h

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