fwupd/plugins/tpm
Richard Hughes f50ff2c27e Decouple the version format from the version itself
If we say that the version format should be the same for the `version_lowest`
and the `version_bootloader` then it does not always make sense to set it at
the same time.

Moving the `version_format` to a standalone first-class property also means it
can be typically be set in the custom device `_init()` function, which means we
don't need to worry about *changing* ther version format as set by the USB and
UDev superclass helpers.
2020-02-25 14:00:09 +00:00
..
fu-plugin-tpm.c Add a new plugin that exposes the system TPM device firmware version 2019-12-05 21:05:17 +00:00
fu-tpm-device.c Decouple the version format from the version itself 2020-02-25 14:00:09 +00:00
fu-tpm-device.h Add a new plugin that exposes the system TPM device firmware version 2019-12-05 21:05:17 +00:00
meson.build Add a new plugin that exposes the system TPM device firmware version 2019-12-05 21:05:17 +00:00
README.md trivial: Document the use of vendor-id in each plugin 2019-12-11 18:10:44 +00:00
tpm.quirk Add a new plugin that exposes the system TPM device firmware version 2019-12-05 21:05:17 +00:00

TPM Support

Introduction

This allows enumerating Trusted Platform Modules, also known as "TPM" devices, although it does not allow the user to update the firmware on them.

GUID Generation

These devices use custom GUIDs:

  • TPM\VEN_$(manufacturer)&DEV_$(type)
  • TPM\VEN_$(manufacturer)&MOD_$(vendor-string)
  • TPM\VEN_$(manufacturer)&DEV_$(type)_VER_$(family),
  • TPM\VEN_$(manufacturer)&MOD_$(vendor-string)_VER_$(family)

...where family is either 2.0 or 1.2

Example GUIDs from a real system containing a TPM from Intel:

  Guid:                 34801700-3a50-5b05-820c-fe14580e4c2d <- TPM\VEN_INTC&DEV_0000
  Guid:                 03f304f4-223e-54f4-b2c1-c3cf3b5817c6 <- TPM\VEN_INTC&DEV_0000&VER_2.0

Vendor ID Security

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