fwupd/plugins/jabra
Richard Hughes 6bbc4c787b jabra: Move the Jabra-specific detach out into its own plugin
This also lets us remove the call to dfu_device_wait_for_replug() which was
causing a deadlock due to unsafe main context usage. Splitting the code allows
us to use the device list to watch for replug, without adding even more Jabra-
specific plugin code to the DFU plugin.

Looking at this with a 40,000ft view, the Jabra runtime really doesn't have
much in common with DFU and the reason it was originally all lumped together
was that the daemon couldn't "change" plugins between detach and update.

It's unfortunate that we have to include a sleep() in the DFU code after the
DFU probe, but this is specified by Jabra themselves. Attempting to open the
device without waiting reboots the hub back into runtime firmware mode, so we
can't even retry the failing setup action.
2019-10-30 15:09:49 +00:00
..
fu-jabra-device.c jabra: Move the Jabra-specific detach out into its own plugin 2019-10-30 15:09:49 +00:00
fu-jabra-device.h jabra: Move the Jabra-specific detach out into its own plugin 2019-10-30 15:09:49 +00:00
fu-plugin-jabra.c jabra: Move the Jabra-specific detach out into its own plugin 2019-10-30 15:09:49 +00:00
jabra.quirk jabra: Move the Jabra-specific detach out into its own plugin 2019-10-30 15:09:49 +00:00
meson.build jabra: Move the Jabra-specific detach out into its own plugin 2019-10-30 15:09:49 +00:00
README.md jabra: Move the Jabra-specific detach out into its own plugin 2019-10-30 15:09:49 +00:00

Jabra Support

Introduction

This plugin is used to detach the Jabra device to DFU mode.

GUID Generation

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

  • USB\VID_0B0E&PID_0412

Quirk use

This plugin uses the following plugin-specific quirks:

Quirk Description fwupd version
JabraMagic Two magic bytes sent to detach into DFU mode. 1.3.3