fwupd/plugins
Aleksander Morgado 705f5b64e3 modem-manager: explicitly use plain version format
The devices managed by this plugin expose version strings that are to
be treated as plain ASCII and compared just as plain ASCII.
2019-11-13 17:41:22 +00:00
..
altos trivial: Fix a compile error with older versions of gudev 2019-11-02 07:47:02 -05:00
amt Never guess the version format from the version string 2019-04-30 09:25:41 +01:00
ata trivial: Fix a compile error with older versions of gudev 2019-11-02 07:47:02 -05:00
colorhug Add new device flags indicating update resilience 2019-10-17 11:38:46 -05:00
coreboot trivial: Fix up some typos from codespell 2019-11-01 14:21:20 +00:00
csr Read firmware back from the device as a FuFirmware 2019-10-10 11:57:48 +01:00
dell trivial: dell: work around a memory leak caught by address sanitizer 2019-10-18 22:07:49 -05:00
dell-dock Add new device flags indicating update resilience 2019-10-17 11:38:46 -05:00
dell-esrt uefi, dell-esrt: Show firmware version when capsule updates unavailable 2019-09-19 15:48:39 +01:00
dfu trivial: Fix up some typos from codespell 2019-11-01 14:21:20 +00:00
ebitdo trivial: Provide some defines for common image names 2019-11-08 09:30:09 -06:00
emmc trivial: Fix up some NULL/FALSE confusion 2019-11-01 13:55:32 +00:00
fastboot fastboot: Fix a regression when updating modem firmware 2019-11-05 06:04:36 -06:00
flashrom flashrom: Only show DEBUG and DEBUG2 output if using --plugin-verbose=flashrom 2019-07-12 09:22:38 -07:00
jabra jabra: Move the Jabra-specific detach out into its own plugin 2019-10-30 15:09:49 +00:00
logitech-hidpp trivial: conflict with old unifying plugin 2019-11-04 13:35:36 -06:00
modem-manager modem-manager: explicitly use plain version format 2019-11-13 17:41:22 +00:00
nitrokey nitrokey: Use fu_common_dump_raw() when debugging 2019-10-31 09:21:35 -05:00
nvme trivial: Fix a compile error with older versions of gudev 2019-11-02 07:47:02 -05:00
optionrom Add new flags can-verify and can-verify-image 2019-10-14 12:41:09 -05:00
redfish trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
rts54hid trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
rts54hub trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
solokey trivial: Provide some defines for common image names 2019-11-08 09:30:09 -06:00
steelseries trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
superio superio: Never read from port offset zero 2019-11-08 17:51:43 +00:00
synaptics-cxaudio Allow fwupdtool to dump details of common firmware formats 2019-10-22 12:36:15 -05:00
synaptics-prometheus synaptics-prometheus: Don't add a config-subdevice in bootloader mode 2019-10-30 06:44:14 -05:00
synaptics-rmi synaptics-rmi: correct an error cleaning up on probe 2019-11-06 08:21:51 -06:00
synapticsmst trivial: synapticmst: allow missing /proc/modules 2019-11-08 09:52:02 -06:00
test Add new flags can-verify and can-verify-image 2019-10-14 12:41:09 -05:00
thelio-io trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
thunderbolt trivial: thunderbolt: clarify error message 2019-11-11 16:16:51 -06:00
thunderbolt-power trivial: Fix a compile error with older versions of gudev 2019-11-02 07:47:02 -05:00
uefi trivial: Fix up some NULL/FALSE confusion 2019-11-01 13:55:32 +00:00
uefi-recovery uefi-recovery: Add a plugin to add a fake ESRT entry for device recovery 2019-09-11 12:47:31 +01:00
upower Add a specific error code for the low battery case 2019-07-11 09:31:34 -07:00
vli-usbhub trivial: Fix the protocol ID for VLI usbhub devices 2019-11-07 09:37:34 +00:00
wacom-raw trivial: wacom-raw: add more device IDs for Dell devices 2019-11-07 00:40:22 -06:00
wacom-usb Allow fwupdtool to dump details of common firmware formats 2019-10-22 12:36:15 -05:00
meson.build Rename unifying plugin to logitech-hidpp (Fixes: #1329) 2019-11-04 13:35:36 -06: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.