fwupd/plugins/synaptics-cape
Simon Ho 5e67108ab8
plugins: add new plugin for Synaptics CAPE devices (#3746)
CAPE family is Audio DSP for a board range of applications in IOT, PC
and mobile can be interfaced via I2C, UART or USB interface. This patch
is only for CX31993 and CX31988 chips, there is not immediate plans is
to add support to other CAPE devices.

CX31993 have two separate firmware .hid file for for each partition. It
need to convert two .hid files into a .fw file for fwupd tool to
consume.

Currently, this patch is only support for EPOS headsets with basic
firmware update feature. Either new code singing or manifest.xml are
unsupported yet.

The code has been tested with CX31993 EVK board.

A test firmware file is put at 'src/fuzzing/firmware/synaptics-cape.fw'

synaptics-cape: Port to new FuProgress API and style fixups

synaptics-cape: Fix compile errors and add missing test fw file

Signed-off-by: Simon Ho <simon.ho@synaptics.com>

synaptics-cape: Fix fuzzer test

Signed-off-by: Simon Ho <simon.ho@synaptics.com>

synaptics-cape: Fix progress bar number

Signed-off-by: Simon Ho <simon.ho@synaptics.com>

synaptics-cape: Mark the fuzzing target

trivial: Use a stable GLib branch for fuzzing

synaptics-cape: Fix progress bar number

Signed-off-by: Simon Ho <simon.ho@synaptics.com>

synaptics-cape: Fix readme

synaptics-cape: Style fixups

synaptics-cape: Fix progress bar percentage

synaptics-cape: Style fixups
2021-09-15 03:42:07 +08:00
..
fu-plugin-synaptics-cape.c plugins: add new plugin for Synaptics CAPE devices (#3746) 2021-09-15 03:42:07 +08:00
fu-synaptics-cape-device.c plugins: add new plugin for Synaptics CAPE devices (#3746) 2021-09-15 03:42:07 +08:00
fu-synaptics-cape-device.h plugins: add new plugin for Synaptics CAPE devices (#3746) 2021-09-15 03:42:07 +08:00
fu-synaptics-cape-firmware.c plugins: add new plugin for Synaptics CAPE devices (#3746) 2021-09-15 03:42:07 +08:00
fu-synaptics-cape-firmware.h plugins: add new plugin for Synaptics CAPE devices (#3746) 2021-09-15 03:42:07 +08:00
meson.build plugins: add new plugin for Synaptics CAPE devices (#3746) 2021-09-15 03:42:07 +08:00
README.md plugins: add new plugin for Synaptics CAPE devices (#3746) 2021-09-15 03:42:07 +08:00
synaptics-cape.quirk plugins: add new plugin for Synaptics CAPE devices (#3746) 2021-09-15 03:42:07 +08:00

Synaptics CAPE devices

Introduction

This plugin is used to update Synaptics CAPE based audio devices.

Firmware Format

The daemon will decompress the cabinet archive and extract a firmware blob.

This plugin supports the following protocol ID:

  • com.synaptics.cape

GUID Generation

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

  • USB\VID_1395&PID_0293

These devices also use custom GUID values, e.g.

  • SYNAPTICS_CAPE\CX31993
  • SYNAPTICS_CAPE\CX31988

Update Behavior

The firmware is deployed when the device is in normal runtime mode, and the device will reset when the new firmware has been written.

Vendor ID Security

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

Quirk Use

This plugin uses no plugin-specific quirks.

External Interface Access

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