fwupd/plugins/ep963x
Richard Hughes 1981c63d58 Remove FuFirmwareImage and just use FuFirmware instead
This allows us to 'nest' firmware formats, and removes a ton of duplication.

The aim here is to deprecate FuFirmwareImage -- it's almost always acting
as a 'child' FuFirmware instance, and even copies most of the vfuncs to allow
custom types. If I'm struggling to work out what should be a FuFirmware and
what should be a FuFirmwareImage then a plugin author has no hope.

For simple payloads we were adding bytes into an image and then the image into
a firmware. This gets really messy when most plugins are treating the FuFirmware
*as* the binary firmware file.

The GBytes saved in the FuFirmware would be considered the payload with the
aim of not using FuFirmwareImage in the single-image case.
2021-03-09 21:14:12 +00:00
..
ep963x.quirk Simplify the quirk file format 2021-03-03 08:30:34 +00:00
fu-ep963x-common.c Add support for EP963x hardware 2020-03-22 15:48:04 +00:00
fu-ep963x-common.h ep963x: Various changes to make the plugin actually work on real hardware 2020-04-22 12:27:44 +01:00
fu-ep963x-device.c Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
fu-ep963x-device.h Add support for EP963x hardware 2020-03-22 15:48:04 +00:00
fu-ep963x-firmware.c Remove FuFirmwareImage and just use FuFirmware instead 2021-03-09 21:14:12 +00:00
fu-ep963x-firmware.h Add support for EP963x hardware 2020-03-22 15:48:04 +00:00
fu-plugin-ep963x.c Use FWUPD_COMPILATION define to indicate an in tree build 2021-01-22 14:01:25 -06:00
meson.build Add support for EP963x hardware 2020-03-22 15:48:04 +00:00
README.md Add a new internal flag to opt-in to GUID matching 2021-02-25 15:47:25 +00:00

Explore EP963x Support

Introduction

The EP963x is a generic MCU used in many different products.

Firmware Format

The daemon will decompress the cabinet archive and extract a firmware blob in a packed binary file format.

This plugin supports the following protocol ID:

  • tw.com.exploretech.ep963x

GUID Generation

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

  • USB\VID_17EF&PID_7226&REV_0001
  • USB\VID_17EF&PID_7226
  • USB\VID_17EF

Update Behavior

The device usually presents in runtime mode, but on detach re-enumerates with the same USB PID in an unlocked mode. On attach the device again re-enumerates back to the runtime locked mode.

Vendor ID Security

The vendor ID is set from the USB vendor, in this instance set to USB:0x17EF

External interface access

This plugin requires read/write access to /dev/bus/usb.