fwupd/plugins
2022-06-14 14:36:52 -05:00
..
acpi-dmar Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
acpi-facp Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
acpi-ivrs Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
acpi-phat Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
amt Add FuProgress to ->startup() and ->coldplug() 2022-06-04 20:21:50 +01:00
analogix Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
ata Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
bcm57xx Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
bios Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
ccgx trivial: Remove fu_byte_array_set_size_full() 2022-06-14 14:36:52 -05:00
cfu Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
ch341a Unexport fu_common_reverse_uint8() 2022-06-14 14:36:52 -05:00
colorhug Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
corsair Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
cpu Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
cros-ec Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
dell Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
dell-dock Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
dell-esrt Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
dfu Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
dfu-csr Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
ebitdo Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
elanfp Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
elantp Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
emmc Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
ep963x Remove the recently added fu_progress_add_step_full() 2022-06-03 13:47:11 -05:00
fastboot Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
flashrom Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
fresco-pd Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
genesys Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
goodix-moc Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
gpio Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
hailuck trivial: Remove fu_byte_array_set_size_full() 2022-06-14 14:36:52 -05:00
intel-spi Split out the kernel helpers to a new source file 2022-06-14 14:36:52 -05:00
iommu Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
jabra Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
lenovo-thinklmi Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
linux-lockdown Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
linux-sleep Make the HSI tests optional for embedded targets 2021-11-29 09:30:57 +00:00
linux-swap Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
linux-tainted Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
logind Add FuProgress to ->startup() and ->coldplug() 2022-06-04 20:21:50 +01:00
logitech-bulkcontroller trivial: Remove fu_byte_array_set_size_full() 2022-06-14 14:36:52 -05:00
logitech-hidpp Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
modem-manager Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
msr Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
mtd Split out the GByte helpers to a new source file 2022-06-14 14:36:52 -05:00
nitrokey Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
nordic-hid Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
nvme Split out the GByte helpers to a new source file 2022-06-14 14:36:52 -05:00
optionrom Do not fallback to audio-card 2022-04-25 14:49:30 +01:00
parade-lspcon Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
pci-bcr Rename fu_udev_device_pread_full() as we broke ABI 2022-06-03 13:47:11 -05:00
pci-mei Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
pci-psp Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
pixart-rf Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
powerd Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
realtek-mst Remove the recently added fu_progress_add_step_full() 2022-06-03 13:47:11 -05:00
redfish Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
rts54hid Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
rts54hub Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
scsi Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
steelseries Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
superio Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
synaptics-cape Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
synaptics-cxaudio Split out the memory helpers to a new source file 2022-06-14 14:36:52 -05:00
synaptics-mst trivial: Remove fu_byte_array_set_size_full() 2022-06-14 14:36:52 -05:00
synaptics-prometheus Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
synaptics-rmi Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
system76-launch Remove the recently added fu_progress_add_step_full() 2022-06-03 13:47:11 -05:00
test Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
thelio-io Remove the recently added fu_progress_add_step_full() 2022-06-03 13:47:11 -05:00
thunderbolt Split out the kernel helpers to a new source file 2022-06-14 14:36:52 -05:00
tpm Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
uefi-capsule Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
uefi-dbx Split out the path helpers to a new source file 2022-06-14 14:36:52 -05:00
uefi-pk Add FuProgress to ->startup() and ->coldplug() 2022-06-04 20:21:50 +01:00
uefi-recovery Add FuProgress to ->startup() and ->coldplug() 2022-06-04 20:21:50 +01:00
uf2 trivial: Remove fu_byte_array_set_size_full() 2022-06-14 14:36:52 -05:00
upower Add FuProgress to ->startup() and ->coldplug() 2022-06-04 20:21:50 +01:00
usi-dock Split out the string helpers to a new source file 2022-06-14 14:36:52 -05:00
vli Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
wacom-raw Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
wacom-usb Split out the dump helpers to a new source file 2022-06-14 14:36:52 -05:00
meson.build Remove platform-integrity plugin 2022-06-06 10:03:04 +01: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.