Marco Trevisan (Treviño)
a4eb3013da
mafpmoc: Init the device enroll stage at class init
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
77b73b04b4
mafpmoc: Allow listing non-fprint prints
...
It's then up to the upper levels to handle them differently, and fprintd
is already strong enough to ignore them.
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
5a2762fe17
mafpmoc: Cleanup handling of identify and matching prints
...
Make clearer the ownership of the prints we're tracking
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
147f3db814
mafpmoc: Ensure the current task SSM reference is always cleaned up
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
3cbeb34d36
libfprint/fprint-list-udev-hwdb: Drop mafpmoc from unsupported list
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
4be0fc60a4
mafpmoc: Init print id value
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
893003799d
mafpmoc: Ignore prints not enrolled by FPrint when listing them
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
b25cbff9be
mafpmoc: Do not compare differently signed values
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
b141eca270
mafpmoc: Handle cancellation without overriding the error
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
95ecaa156d
mafpmoc: Improve creation and destruction of templates list
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
3ce345b876
mafpmoc: Do not pack templates structure
...
Otherwise undefined sanitizer would fail for unaligned memory access
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
b3ad630fb4
mafpmoc: Steal errors when forwarding their ownerships
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
8d81299743
mafpmoc: Clear errors when they are not forwarded
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
67649a0efd
pafpmoc: Drop check on fprintd templates
...
It's not up to the drivers do do this check
2026-06-18 15:47:34 +02:00
Marco Trevisan (Treviño)
bbd4ca2fdf
mafpmoc: Cleanup code
2026-06-18 15:47:34 +02:00
‘王毅’
e1caa3de3b
formatting
2026-06-18 15:47:34 +02:00
王毅
beab941894
Modify debugging print interface, modify comments
2026-06-18 15:47:34 +02:00
王毅
7cf358d42a
mafpmoc: Support Microarray Inc. series fingerprint sensor PID 8012
2026-06-18 15:47:34 +02:00
lichenggang
4610f2285e
elan: Add support for 0x0c58 sensor response codes
...
The Elan 04f3:0c58 sensor returns 0xaf during capture which indicates
finger removed or sensor busy. Also 0x00 can occur meaning not ready.
These responses should trigger a retry instead of failing.
To avoid changing behavior for other Elan devices, limit the new retry
logic to the 0x0c58 device type and add a small 10ms delay between
retries.
Additionally, increase calibration attempts from 10 to 30 for 0x0c58
as this sensor needs more time to complete calibration.
Source: https://gitlab.freedesktop.org/libfprint/libfprint/-/work_items/763
Signed-off-by: lichenggang <lichenggang@uniontech.com>
Co-Authored-By: Marco Trevisan (Treviño) <mail@3v1n0.net>
2026-06-17 20:05:02 +02:00
Marco Trevisan (Treviño)
5b01f0b7c1
secugen: Do image processing inside GTask threads
...
Do not block the main loop to process image data
2026-06-17 19:47:24 +02:00
Marco Trevisan (Treviño)
4a7842347e
secugen: Use autopointers
2026-06-17 19:47:24 +02:00
Marco Trevisan (Treviño)
0c34a2b888
secugen: Use device timeout rather than a custom one
2026-06-17 19:47:23 +02:00
Marco Trevisan (Treviño)
3af57e3483
secugen: Check transfers have a minimal lengths
2026-06-17 19:47:23 +02:00
Marco Trevisan (Treviño)
726cf8a515
secugen: Protect against invalid fw_data
...
This fixes an issue detected by scan build
2026-06-17 19:47:23 +02:00
Jared Vacanti
5b34908a21
Add driver for SecuGen Hamster Pro 20
...
Add support for the SecuGen Hamster Pro 20 (1162:2200), a 500 DPI
press-type optical scanner built around the SIDO020A sensor.
The protocol was reverse-engineered from USB packet captures. The
sensor is configured over I2C-tunneled vendor control transfers and
streams 956x688 raw frames over the bulk endpoint, read in 64KB
chunks so the standard pcap-based test tooling can record full
frames (the kernel usbmon interface truncates single URBs at
ring_size/5). Frames are processed with band compensation, an
edge-aware unsharp mask, a fixed-point bilinear downsample to
300x400, flat-field blending and directional sharpening, driven by
per-device factory calibration data read from the device firmware.
The fixed-point pipeline keeps the output bit-identical across
compilers and architectures for the image comparison test.
The sensor has no proximity hardware and its GET_STATUS request
always returns zeros, so finger presence is detected by polling
preview frames and comparing the mean brightness of the central
region against a calibration background frame.
Includes a umockdev capture/replay test with a reference image.
Closes: https://gitlab.freedesktop.org/libfprint/libfprint/-/work_items/353
2026-06-17 19:47:23 +02:00
Marco Trevisan (Treviño)
732dbe855e
fprint-list-metainfo: Update the bug tracker URI
2026-06-17 19:36:59 +02:00
Mikko Nyman
0dc384b90e
focaltech_moc: add new pid:0xA97A
2026-06-11 19:08:52 +02:00
Harshith Goka
e43137c760
feat: Add support for Goodix device 0x27C6:0x6984
...
It includes autosuspend configuration.
2026-06-11 18:08:30 +02:00
Daniel Schaefer
20f5ce682e
tests: /usr/bin/env shebang
...
Not all distros have /usr/bin/python3. Using env is more portable.
Signed-off-by: Daniel Schaefer <git@danielschaefer.me>
2026-06-11 15:47:32 +00:00
Daniel Schaefer
8a2123ce6a
fpcmoc: Avoid dead-store
...
Fixes the CI test_scan_build
libfprint/drivers/fpcmoc/fpc.c:275 — [deadcode.DeadStores]
warning: Value stored to 'data' during its initialization is never read
CommandData *data = fpi_ssm_get_data (ssm);
Signed-off-by: Daniel Schaefer <dhs@frame.work>
2026-06-11 15:40:46 +00:00
Marco Trevisan (Treviño)
7111218427
docs: Address various issues leading to wrong docs
2026-06-11 15:15:48 +02:00
Marco Trevisan (Treviño)
58a40bb4a3
ci/scan-build: Exclude the full path of the build dir
...
The tool runs in the build dir as cwd, but let' make this clearer
2026-06-11 15:10:36 +02:00
Marco Trevisan (Treviño)
7c5d1b454d
ci: Do pages job also on new tag
2026-06-11 15:10:30 +02:00
Marco Trevisan (Treviño)
e40f9825fd
ci: Also export docs in pages
2026-06-11 15:10:24 +02:00
Marco Trevisan (Treviño)
ed1b18e687
ci: Use upstream image all the times
2026-06-11 15:10:16 +02:00
Daniel Schaefer
710735efdd
examples/clear-storage: Clarify default as N
...
Pressing enter, selects N(o), make that obvious by capitalizing N
instead of Y.
Signed-off-by: Daniel Schaefer <git@danielschaefer.me>
2026-06-11 14:24:56 +08:00
Daniel Schaefer
c0a4626a3b
focal: Add PID 5158
...
Signed-off-by: Daniel Schaefer <git@danielschaefer.me>
2026-06-10 08:36:48 +00:00
Daniel Schaefer
bad930503c
focal: Add clear_storage
...
Signed-off-by: Daniel Schaefer <git@danielschaefer.me>
2026-06-10 08:23:00 +00:00
Marco Trevisan (Treviño)
6a71e039a1
egis_etu905: Double-check that the identified ID is part of the enrolled list
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
06ad44bc1d
egis_etu905: Improve the identify callback data reading
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
c0a9811053
egis_etu905: Do not try to continue a failed SSM
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
5b51f9c8cc
egis_etu905: Sanitize print data parsing
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
65c3dcb1eb
egis_etu905: Avoid potential wrong memory accesses
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
c6f9f094af
egis_etu905: drop unused sid field
...
We read it but we never use it
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
4b8f46f1f9
egis_etu905: Use fpi-bytes-reader to get the firmware string
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
42f0b96c10
egis_etu905: Rely on default device cancellable for all the actions
...
I don't see a reason why we should rely on a different cancellable for
interrupts, but happy to learn more about this
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
12af25d43b
egis_etu905: Set short error using function
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
f5806825de
egis_etu905: Remove unused variable
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
fdbc9ee655
egis_etu905: Remove unused transfer
2026-06-10 10:14:51 +02:00
Marco Trevisan (Treviño)
c216f04dd1
egis_etu905: Do not leak the transfer buffer
...
The buffer is now owned by the data, so we should not steal it when
passing it around or we'll leak.
2026-06-10 10:14:51 +02:00