fwupd/plugins/solokey
Richard Hughes 7afd7cba0d Use FuFirmware as a container for firmware images
In many plugins we've wanted to use ->prepare_firmware() to parse the firmware
ahead of ->detach() and ->write_firmware() but this has the limitation that it
can only return a single blob of data.

For many devices, multiple binary blobs are required from one parsed image,
for instance providing signatures, config and data blobs that have to be pushed
to the device in different way.

This also means we parse the firmware *before* we ask the user to detach.

Break the internal FuDevice API to support these firmware types as they become
more popular.

This also allows us to move the Intel HEX and SREC parsing out of the dfu plugin
as they are used by a few plugins now, and resolving symbols between plugins
isn't exactly awesome.
2019-08-08 13:10:57 +01:00
..
data Add support for the SoloKey Secure 2019-07-30 16:16:14 +01:00
fu-plugin-solokey.c Add support for the SoloKey Secure 2019-07-30 16:16:14 +01:00
fu-solokey-device.c Use FuFirmware as a container for firmware images 2019-08-08 13:10:57 +01:00
fu-solokey-device.h Add support for the SoloKey Secure 2019-07-30 16:16:14 +01:00
fu-solokey-firmware.c Use FuFirmware as a container for firmware images 2019-08-08 13:10:57 +01:00
fu-solokey-firmware.h Use FuFirmware as a container for firmware images 2019-08-08 13:10:57 +01:00
meson.build Use FuFirmware as a container for firmware images 2019-08-08 13:10:57 +01:00
README.md Add support for the SoloKey Secure 2019-07-30 16:16:14 +01:00
solokey.quirk Add support for the SoloKey Secure 2019-07-30 16:16:14 +01:00

SoloKey Support

Introduction

The SoloKey Secure and Hacker is an affordable open source FIDO2 security key.

All hardware supports the U2F HID flashing protocol. The Hacker version is not supported and the existing DFU update procedure should be used.

Firmware Format

The daemon will decompress the cabinet archive and extract a firmware blob in a JSON wrapped, base-64, Intel hex file.

This plugin supports the following protocol ID:

  • com.solokeys

GUID Generation

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

  • USB\VID_0483&PID_A2CA&REV_0001
  • USB\VID_0483&PID_A2CA