Commit Graph

1883 Commits

Author SHA1 Message Date
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
Jason Huang 9bddd90f06 egis_etu905: Add 1c7a:05ae and 1c7a:9201 fingerprint readers 2026-06-10 10:14:47 +02:00
Vincent Huang 0209e7735e synaptics: add new PID 0x1A4 2026-06-09 14:05:20 +02:00
Marco Trevisan (Treviño) 9d4e7fc87b fpi-usb-transfer: Wrap g_error_new arguments 2026-06-08 14:45:40 +02:00
Marco Trevisan (Treviño) e7c80e748e fpi-usb-transfer: Add missing definition of set_short_error()
It was in the header but not implemented
2026-06-08 14:45:40 +02:00
Marco Trevisan (Treviño) f6a8cae5b4 fpi-byte-reader: Add support to read to a static buffer
This works through macros when the size of a buffer is statically
defined
2026-06-08 12:44:44 +00:00
Marco Trevisan (Treviño) dc48ab8b40 fpi-byte-reader: Add support to read and get/peek GBytes 2026-06-08 12:44:44 +00:00
Marco Trevisan (Treviño) 14763d29cf fpi-byte-writer: Add APIs to write and get GBytes
It makes it handier to handle data elements without having to keep size
and data separated
2026-06-08 12:44:44 +00:00
Marco Trevisan (Treviño) 9c140036e9 doc: Include Binary buffer I/O section for the byte reader/writer 2026-06-08 12:44:44 +00:00
jialei 8961a5ee45 goodixmoc:Fixed inconsistent enrollment progress when swiping quickly. 2026-05-22 18:11:52 +08:00
lichenggang d79f157282 goodixmoc: Add support for 0x27C6:0x6090
Signed-off-by: lichenggang <lichenggang@uniontech.com>
2026-04-14 13:43:46 +08:00
YooLc 3ce79986cf goodixmoc: add new PID 0x6890 2026-04-13 13:01:01 +00:00
lichenggang d8641635c5 fpcmoc: Add support for 0x10A5:0x9B24
Add the new FPC fingerprint device (0x10A5:0x9B24) to the driver and
autosuspend hwdb.

Signed-off-by: lichenggang <lichenggang@uniontech.com>
2026-04-09 06:43:40 +00:00
Ken ee422fc3c5 elanmoc: Add new PID 0xCB2 2026-03-20 11:23:09 +08:00
FIM43-Redeye 66b1ada0d6 tests: Update goodixmoc capture for verify finger-up wait
Re-record the umockdev USB capture to include the new
GOODIX_VERIFY_WAIT_FINGER_UP state's USB exchanges during
verify and identify operations.

Captured on a Goodix MOC sensor (27c6:609c, Framework Laptop 13)
with FP_DEVICE_EMULATION=1 as required by the test framework.
2026-03-17 17:55:38 +00:00
FIM43-Redeye 7893c2cb36 goodixmoc: Wait for finger removal before completing verify
The goodixmoc driver's verify state machine was missing a
WAIT_FINGER_UP state between IDENTIFY and PWR_BTN_SHIELD_OFF.
After the sensor reported a match/no-match result, the driver
immediately completed the verify operation without waiting for
the finger to be lifted from the sensor.

This caused problems when fprintd retried verification after a
no-match: the finger was still on the sensor, so the same
(wrong) finger was scanned again instantly. On fast match-on-chip
readers, all retry attempts could be exhausted in under a second,
giving the user no time to reposition their finger.

Add GOODIX_VERIFY_WAIT_FINGER_UP to the verify state machine,
mirroring the existing GOODIX_ENROLL_WAIT_FINGER_UP in the
enroll flow. The new state sends MOC_CMD0_FINGER_MODE /
MOC_CMD1_SET_FINGER_UP to the sensor and waits for the finger
to be removed before advancing to PWR_BTN_SHIELD_OFF.

The callback handles the same cases as the enroll equivalent:
- Timeout (5s): retry the finger-up wait
- Protocol error: fail the SSM
- Success: clear FINGER_STATUS_PRESENT and advance

Link: https://gitlab.freedesktop.org/libfprint/fprintd/-/issues/209
2026-03-17 17:55:38 +00:00
Daniel Schaefer 2c7842c905 focaltech_moc: add new pid:0x077A pid:0x079A
Tested on working hardware with examples/enroll and examples/verify

Signed-off-by: Daniel Schaefer <dhs@frame.work>
2026-02-12 17:09:41 +08:00
Marco Trevisan (Treviño) e8c55c5939 data/autosuspend.hwdb: Sync with unsupported devices wiki 2026-02-10 05:41:06 +00:00
Marco Trevisan (Treviño) fedb62f091 ci: Make jobs interrumpible 2026-02-10 06:35:26 +01:00
Marco Trevisan (Treviño) cc41f805f2 tests/valgrind-python.supp: Ignore PyGObject leaks
They are unrelated to fprint itself, so let's ignore them
2026-02-10 06:33:00 +01:00
Marco Trevisan (Treviño) 1ee7df6cf2 ci: Add PyGObject symbols 2026-02-10 06:33:00 +01:00
Marco Trevisan (Treviño) 3f43c9356c build: Ignore -Werror=unused-but-set-variable for nbis 2026-02-10 06:33:00 +01:00
Marco Trevisan (Treviño) 0c97a47d8e Release 1.94.10 v1.94.10 2026-02-10 03:18:14 +01:00
Petko Bordjukov 5f1da71e70 synaptics: Add 06cb:00e9
Tested working on an HP x360 1040 G8

Reverts: 0edae7b641
2026-02-10 02:01:08 +00:00
Ankur 87092d74ff Add support for 04f3:0ca7 Elan Microelectronics Corp. ELAN:ARM-M4 2025-12-18 10:59:29 -08:00
herman lin df67c08a97 elanmoc: Add new PID 0xCB0 2025-12-16 16:20:35 +08:00
Marco Trevisan (Treviño) b069c78348 fpcmoc: Do not leak the interrupt cancellable
g_set_object adds a reference already so we need to cleanup the original
reference first if we do not want to leak it
2025-12-09 20:37:34 +01:00