fwupd/plugins
Richard Hughes d0b821f832 dfu: Always mark devices as UPDATABLE
Some devices don't set the CAN_DOWNLOAD attribute in their runtime descriptor.

Rather than quirk these devices just assume that all DFU devices with a DFU
interface can download in DFU mode. The logic being, why would they expose a
runtime DFU interface if they can't download new firmware in DFU mode...

Devices like the DW1820A that are currently blacklisted because of broken DFU
support will remain blocked with this change.
2019-10-28 08:39:47 +00:00
..
altos
amt
ata
colorhug
coreboot
csr
dell
dell-dock
dell-esrt
dfu dfu: Always mark devices as UPDATABLE 2019-10-28 08:39:47 +00:00
ebitdo
emmc
fastboot
flashrom
modem-manager
nitrokey
nvme
optionrom
redfish
rts54hid
rts54hub
solokey
steelseries
superio
synaptics-cxaudio
synaptics-prometheus
synaptics-rmi
synapticsmst
test
thelio-io
thunderbolt
thunderbolt-power
uefi
uefi-recovery
unifying
upower
vli-usbhub
wacom-raw
wacom-usb
meson.build
README.md

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.