fwupd/plugins
2020-01-07 08:12:23 -06:00
..
altos trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
amt trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
ata trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
colorhug trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
coreboot plugins/coreboot: Add missing fu_hash dependency 2019-12-18 08:33:10 +00:00
csr trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
dell trivial: rename synapticsmst to synaptics-mst 2019-12-12 13:59:41 -06:00
dell-dock trivial: dell-dock: drop unused quirk keyx 2019-12-12 13:59:41 -06:00
dell-esrt trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
dfu trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
ebitdo trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
emmc trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
fastboot trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
flashrom trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
jabra trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
logitech-hidpp logitech_hidpp: use the correct timeout for IO channel writes 2020-01-07 08:12:23 -06:00
modem-manager trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
nitrokey trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
nvme Don't always get the vendor ID for udev devices using the parent 2020-01-06 14:48:58 +00:00
optionrom Don't always get the vendor ID for udev devices using the parent 2020-01-06 14:48:58 +00:00
redfish trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
rts54hid trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
rts54hub trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
solokey trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
steelseries trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
superio trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
synaptics-cxaudio trivial: synaptics-cxaudio: Add Google type C <-> 3.5mm adapter 2019-12-15 20:17:42 -06:00
synaptics-mst Don't always get the vendor ID for udev devices using the parent 2020-01-06 14:48:58 +00:00
synaptics-prometheus trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
synaptics-rmi trivial: synaptics-rmi: hardcode Vendor string 2019-12-12 09:57:47 -06:00
test Add a runtime warning when adding a device without an vendor-id or protocol set 2020-01-06 14:48:32 +00:00
thelio-io trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
thunderbolt trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
thunderbolt-power Convert libfwupdprivate to a shared library libfwupdplugin 2019-11-27 11:32:43 +00:00
tpm trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
tpm-eventlog trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
uefi trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
uefi-recovery trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
upower trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
vli vli: Set more of the firmware max sizes automatically 2020-01-02 13:24:13 +00:00
wacom-raw trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
wacom-usb trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
meson.build vli: Rename the vli_usbhub plugin to vli 2020-01-02 13:24:13 +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.