fwupd/plugins
Richard Hughes 832231da9c synaptics-prometheus: Fix enumeration of the config child
Do not manually call config setup before adding the parent.

The ->setup() action is called on children explicitly in fu_device_setup()
after the parent device has all the required properties.

Fixes https://github.com/fwupd/fwupd/issues/3364
2021-06-15 11:46:17 -05:00
..
acpi-dmar trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
acpi-facp trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
acpi-phat trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
altos trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
amt trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
analogix trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
ata trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
bcm57xx trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
bios trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
ccgx trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
colorhug trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
cpu trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
cros-ec trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
dell trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
dell-dock trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
dell-esrt trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
dfu trivial: Export the DFU version constants into libfwupdplugin 2021-06-14 07:15:42 -05:00
dfu-csr trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
ebitdo trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
elantp trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
emmc trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
ep963x trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
fastboot trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
flashrom trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
fresco-pd trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
goodix-moc trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
hailuck trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
intel-spi trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
iommu trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
jabra trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
linux-lockdown trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
linux-sleep trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
linux-swap trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
linux-tainted trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
logind trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
logitech-hidpp logitech-hidpp: make receiver runtime class derivable 2021-06-14 13:31:44 +01:00
modem-manager modem-manager: Do not convert instance IDs to GUIDs manually 2021-06-15 09:14:39 -05:00
msr trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
nitrokey trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
nvme trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
optionrom trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
pci-bcr trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
pci-mei trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
pixart-rf trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
platform-integrity trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
redfish trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
rts54hid trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
rts54hub trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
solokey trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
steelseries trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
superio trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
synaptics-cxaudio trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
synaptics-mst trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
synaptics-prometheus synaptics-prometheus: Fix enumeration of the config child 2021-06-15 11:46:17 -05:00
synaptics-rmi trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
system76-launch trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
test trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
thelio-io trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
thunderbolt trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
tpm trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
tpm-eventlog trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
uefi-capsule Switch from sysctl to ioctl for ESRT on FreeBSD 2021-06-15 17:25:16 +01:00
uefi-dbx trivial: Add required dep for dbxtool 2021-06-15 11:45:16 +01:00
uefi-pk trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
uefi-recovery trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
upower trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
vli trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
wacom-raw trivial: fixup includes for a variety of plugins 2021-06-14 10:12:45 +01:00
wacom-usb wacom-usb: Show the user how to switch out of Android-mode 2021-06-15 14:15:22 +01:00
meson.build Add support for the PHAT table 2021-05-12 12:02:33 +01: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.