fwupd/plugins
2021-03-25 14:30:07 +00:00
..
acpi-dmar Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
acpi-facp Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
altos Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
amt Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
ata Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
bcm57xx trivial: Limit alignment to 2GB to fix a fuzzing crash 2021-03-17 11:14:46 +00:00
bios Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
ccgx Allow objects to deserialize to XML 2021-03-15 12:07:30 +00:00
colorhug Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
cpu Simplify the quirk file format 2021-03-03 08:30:34 +00:00
cros-ec cros-ec: Add D501 Baklava device support 2021-03-18 14:29:42 -07:00
dell Simplify the quirk file format 2021-03-03 08:30:34 +00:00
dell-dock Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
dell-esrt Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
dfu Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
dfu-csr Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
ebitdo ebitdo: Add support for writing firmware 2021-03-10 21:33:28 -06:00
elantp Allow objects to deserialize to XML 2021-03-15 12:07:30 +00:00
emmc Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
ep963x Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
fastboot Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
flashrom Removed PciBcr Quirk 2021-03-15 18:56:54 +00:00
fresco-pd Allow objects to deserialize to XML 2021-03-15 12:07:30 +00:00
goodix-moc Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
hailuck trivial: Codespell fixes 2021-03-19 16:42:33 +00:00
intel-spi intel-spi: Fix a typo spotted by Coverity 2021-03-20 17:33:18 +00:00
iommu Simplify the quirk file format 2021-03-03 08:30:34 +00:00
jabra Be more strict for custom quirk keys 2021-03-03 08:30:34 +00:00
linux-lockdown Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
linux-sleep Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
linux-swap Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
linux-tainted Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
logind Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
logitech-hidpp trivial: Codespell fixes 2021-03-19 16:42:33 +00:00
modem-manager Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
msr Simplify the quirk file format 2021-03-03 08:30:34 +00:00
nitrokey Simplify the quirk file format 2021-03-03 08:30:34 +00:00
nvme Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
optionrom trivial: Remove unused source file 2021-03-05 09:42:27 +00:00
pci-bcr Updated StarLabs guids 2021-03-04 17:56:43 +00:00
pci-mei Simplify the quirk file format 2021-03-03 08:30:34 +00:00
pixart-rf pixart: Modify ota retransmit flow 2021-03-22 17:48:08 +01:00
platform-integrity Simplify the quirk file format 2021-03-03 08:30:34 +00:00
redfish trivial: Codespell fixes 2021-03-19 16:42:33 +00:00
rts54hid Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
rts54hub Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
solokey solokey: Add support for writing firmware 2021-03-11 10:13:46 +00:00
steelseries Simplify the quirk file format 2021-03-03 08:30:34 +00:00
superio trivial: Codespell fixes 2021-03-19 16:42:33 +00:00
synaptics-cxaudio synaptics-cxaudio: Retry GetReport to fix an enumeration failure 2021-03-25 14:30:07 +00:00
synaptics-mst Allow objects to deserialize to XML 2021-03-15 12:07:30 +00:00
synaptics-prometheus Allow objects to deserialize to XML 2021-03-15 12:07:30 +00:00
synaptics-rmi synaptics-rmi: Force the hardware into IEP mode as required 2021-03-22 07:51:06 +00:00
system76-launch Simplify the quirk file format 2021-03-03 08:30:34 +00:00
test Simplify the quirk file format 2021-03-03 08:30:34 +00:00
thelio-io Simplify the quirk file format 2021-03-03 08:30:34 +00:00
thunderbolt Allow objects to deserialize to XML 2021-03-15 12:07:30 +00:00
tpm Simplify the quirk file format 2021-03-03 08:30:34 +00:00
tpm-eventlog tpm-eventlog: Fix a possible crash if not using _new() 2021-02-18 16:56:40 +00:00
uefi-capsule trivial: Codespell fixes 2021-03-19 16:42:33 +00:00
uefi-dbx Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
uefi-pk Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
uefi-recovery Simplify the quirk file format 2021-03-03 08:30:34 +00:00
upower Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
vli Allow objects to deserialize to XML 2021-03-15 12:07:30 +00:00
wacom-raw Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
wacom-usb Allow objects to deserialize to XML 2021-03-15 12:07:30 +00:00
meson.build trivial: Rename spi to intel-spi as it's all Intel specific 2021-03-20 12:24:27 +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.