fwupd/plugins/optionrom
Richard Hughes b333e0045c Split out a shared system context
There is a lot of code in fwupd that just assigns a shared object type to
a FuPlugin, and then for each device on that plugin assigns that same shared
object to each FuDevice.

Rather than proxy several kinds of information stores over two different levels
of abstraction create a 'context' which contains the shared *system* state
between the daemon, the plugins and the daemon.

This will allow us to hold other per-machine state in the future, for instance
the system battery level or AC state.
2021-04-01 21:11:29 +01:00
..
fuzzing Use honggfuzz to fuzz firmware rather than AFL 2020-12-11 09:37:42 +00:00
fu-optionrom-device.c Call the superclass directly from subclassed devices 2021-02-18 16:18:34 +00:00
fu-optionrom-device.h trivial: Remove G_BEGIN_DECLS from all private headers 2019-10-09 20:02:16 +01:00
fu-plugin-optionrom.c Split out a shared system context 2021-04-01 21:11:29 +01:00
fu-self-test.c Install the installed tests 2020-08-28 10:10:43 -05:00
meson.build Move the plugin build logic to the plugins themselves 2021-02-18 14:46:20 +00:00
optionrom.quirk Simplify the quirk file format 2021-03-03 08:30:34 +00:00
README.md optionrom: Do not parse the image 2021-02-10 16:23:16 +00:00

OptionROM Support

Introduction

This plugin is also able to read and parse the firmware of some PCI devices which allows some host state verification to be done.

GUID Generation

These devices use the standard USB DeviceInstanceId values, e.g.

  • PCI\VEN_%04X&DEV_%04X

Vendor ID Security

The device is not upgradable and thus requires no vendor ID set.

External interface access

This plugin requires read access to the rom file of PCI devices (/sys/class/pci_bus/*/device/rom)