fwupd/plugins/mtd
Richard Hughes 0415db6f67 Revert "trivial: Use files() rather than current_source_dir()"
This reverts commit b581fa5670 as it breaks
`ninja dist` with `-Dgresource_quirks=enabled`.
2022-09-25 10:31:14 +01:00
..
fu-mtd-device.c Load coSWID metadata from a uSWID MTD block device 2022-09-07 16:02:27 +01:00
fu-mtd-device.h Add a new plugin to handle MTD devices 2021-11-05 20:01:51 +00:00
fu-plugin-mtd.c Add FuProgress to ->startup() and ->coldplug() 2022-06-04 20:21:50 +01:00
fu-self-test.c trivial: try harder to make sure mtdram is set up 2022-09-07 08:24:10 -05:00
meson.build Revert "trivial: Use files() rather than current_source_dir()" 2022-09-25 10:31:14 +01:00
mtd.quirk mtd: expose Pine64 PinePhone Pro MTD as Tow-Boot 2022-09-12 14:51:14 +01:00
README.md mtd: Use the correct uSWID child for multiple coSWID children 2022-04-18 17:48:52 +01:00

MTD

Introduction

The Memory Technology Device (MTD) interface is a way of abstracting flash devices as if they were normal block devices.

See http://www.linux-mtd.infradead.org/doc/general.html for more details.

This plugin supports the following protocol ID:

  • org.infradead.mtd

GUID Generation

These devices use custom DeviceInstanceId values built from the device NAME and DMI data, e.g.

  • MTD\NAME_Factory
  • MTD\VENDOR_foo&NAME_baz
  • MTD\VENDOR_foo&PRODUCT_bar&NAME_baz

If the FirmwareGType quirk is set for the device then the firmware is read back from the device at daemon startup and parsed for the version number. In the event the firmware has multiple child images then the device GUIDs are used as firmware IDs.

Update Behavior

The MTD device is erased in chunks, written and then read back to verify.

Vendor ID Security

The vendor ID is set from the system vendor, for example DMI:LENOVO

External Interface Access

This plugin requires read/write access to /dev/mtd.