mirror of
https://git.proxmox.com/git/fwupd
synced 2025-05-21 07:16:30 +00:00
![]() Before this change calling FuUsbDevice->open() opened the device, and also unconditionally added various GUIDs and InstanceIDs which we normally do in setup. Then fu_device_setup() would call the FuSubclass->setup() vfunc which would have no way of either opting out of the FuUsbDevice->setup()-like behaviour, or controlling if the parent class ->setup is run before or after the subclass setup. Split up FuUsbDevice->open() into clear ->open() and ->setup() phases and add the parent class calls where appropriate. This means that ->setup() now behaves the same as all the other vfuncs. |
||
---|---|---|
.. | ||
data | ||
fu-plugin-synaptics-prometheus.c | ||
fu-self-test.c | ||
fu-synaprom-common.c | ||
fu-synaprom-common.h | ||
fu-synaprom-config.c | ||
fu-synaprom-config.h | ||
fu-synaprom-device.c | ||
fu-synaprom-device.h | ||
fu-synaprom-firmware.c | ||
fu-synaprom-firmware.h | ||
meson.build | ||
README.md | ||
synaptics-prometheus.quirk |
Synaptics Prometheus
Introduction
This plugin can flash the firmware on the Synaptics Prometheus fingerprint readers.
Firmware Format
The daemon will decompress the cabinet archive and extract a firmware blob in an unspecified binary file format. The binary file has a vendor-specific header that is used when flashing the image.
This plugin supports the following protocol ID:
- com.synaptics.prometheus
GUID Generation
These devices use the standard USB DeviceInstanceId values, e.g.
USB\VID_06CB&PID_00A9&REV_0001
USB\VID_06CB&PID_00A9
USB\VID_06CB&PID_00A9-cfg
USB\VID_06CB&PID_00A9&CFG1_3483&CFG2_500
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:0x06CB
External interface access
This plugin requires read/write access to /dev/bus/usb
.