Commit Graph

1790 Commits

Author SHA1 Message Date
Daniel Schaefer
c84d3774cf libfprint: Don't build SPI backend if not SPI driver
The SPI backend only builds on Linux, this makes it work non non-Linux platforms, such as FreeBSD.

Signed-off-by: Daniel Schaefer <dhs@frame.work>
2024-08-30 02:00:16 +00:00
Haowei Lo
04a167b09b fpcmoc: Add PID 0x9524 and 0x9544
Change-Id: Id85116df233308297cf3d7b56146582a79f5fcdd
2024-08-30 01:33:03 +00:00
Aris Lin
538a18cf17 synaptics: Add new PID 0x00C6 2024-08-30 00:57:29 +00:00
Aris Lin
2e766904f0 synaptics: Add new PID 0x019D 2024-08-30 00:57:29 +00:00
haoweilo
9f55ef690d fpcmoc: fixed the error jumping to wrong state at end of custom enroll 2024-08-30 00:47:01 +00:00
herman lin
b6061c0af8 elanmoc: Add new PID 0x0C9F 2024-08-08 14:08:19 +08:00
Marco Trevisan (Treviño)
3f70bde21c fp-device: Do not duplicate udev paths strings
This is happening already internally when using g_value_set_string
2024-06-17 19:08:16 +00:00
Timo Schrader
dd6f020378 goodixmoc: Add PID 0x609A 2024-06-17 17:57:29 +00:00
2a4c05662a goodixmoc: Add PID 0x6512 2024-06-15 12:17:34 -05:00
Marco Trevisan (Treviño)
eaec2339cc libfprint-fprint-list-udev-hwdb: Add new broadcom device IDs 2024-05-22 17:09:38 +02:00
Marco Trevisan (Treviño)
83035be830 README: Add contact information 2024-05-03 15:35:11 +02:00
Marco Trevisan (Treviño)
4709efc678 fpi-device: Clarify transfer of errors in device complete tasks 2024-04-17 17:00:47 +00:00
Marco Trevisan (Treviño)
37ded921fd fpi-device: Simplify logic of fpi_device_task_return_data_free
The clear functions will do NULL checks already, so there's no need to
duplicate such effort
2024-04-17 17:00:47 +00:00
Haowei Lo
b7f3544e98 fpcmoc: Transfer error from autoptr before fpi_device_close_complete
Fixed coredump because of trying to free a null space

Change-Id: If5a23ba7b4f307580593712612e150d1ab893826
2024-04-18 00:38:44 +08:00
steven.chen
093f2fc0a6 fpcmoc: Modify ctrl timeout to fix identify return failed 2024-04-17 15:05:06 +00:00
Lee Jiajun
c5def9a528 goodixmoc: Add PID 0x609A 2024-04-17 09:37:25 +00:00
haoweilo
e71f3de786 fpcmoc: add error handling to evt_finger_dwn
Redo the current task state
if we got failed status from evt_finger_dwn
2024-04-17 08:33:24 +00:00
haoweilo
420fd7416d fpcmoc: fix incorrect immobile handling during enrollment
For the custom enrollment,
if the number of immobile touches have reached the maximum,
we should treat this touch as normal (valid) and increase
the enrollment progress.
2024-04-17 08:33:24 +00:00
Haowei Lo
f505158c04 fpcmoc: clean cmd_ssm before callback
fixed assertion of "cmd_ssm is not null"

Change-Id: I8f914468dc0e40c6cac33d680411a2d957cf2296
2024-04-16 21:46:19 +08:00
Jichi Zhang
fb13722629 goodixmoc: Add PID 0x650C 2024-03-13 05:16:16 -07:00
Marco Trevisan (Treviño)
666cd0c08d egismoc: Use FpiByteReader to compute the check bytes
We can read the values in the proper format without having to
deal with endianness ourself, so let's do this instead of manual
labor.
2024-02-20 18:07:18 +01:00
Marco Trevisan (Treviño)
e055781006 egismoc: Use FpiByteWriter to allocate the commit payload 2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
48c8c539c7 egismoc: Use FpiByteWriter to generate the get check command 2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
40c7599fb1 egismoc: Compute the delete command using FpiByteWriter 2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
28c26c7d7e egismoc: Use FpiByteReader to read the enrolled IDs 2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
dd5a71695f egismoc: Use FpiByteWriter to prepare the command message 2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
977d324970 egismoc: Do not store twice the number of enrolled IDs
We already store it in the array, so let's just use that value
2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
4992110829 fpi-byte-writer: Zero-init the allocated data by default
This could have been done via fill method + pos reset, but it's just
something we normally want to do for safety, so let's do it all the
times.
2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
53f2539b6a fpi-byte-writer: Use nicer API to unset the parent data 2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
18e2906d62 fpi-byte-writer: Initialize the parent size when initializing with size 2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
19806546a2 fpi-byte-writer: Add change pos method
It allows to move the position of the cursor with a relative position.
2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
75559415fe fpi-byte-writer/reader: Add autopointers definitions 2024-02-20 17:57:46 +01:00
Marco Trevisan (Treviño)
7dbb21e77a build/tests: Skip a test if the test requires it during inspection
In case we don't have dependencies, we should skip the test, otherwise
we can just fail at test time
2024-02-20 08:25:53 +01:00
Marco Trevisan (Treviño)
4b72f27de6 build: Look for sh just once 2024-02-20 08:22:42 +01:00
Marco Trevisan (Treviño)
5ada931ede ci: Export coverage to pages
So that we can link it outside
2024-02-20 01:55:11 +01:00
Marco Trevisan (Treviño)
bebe8565cd Release 1.94.7 v1.94.7 2024-02-20 01:09:54 +01:00
Marco Trevisan (Treviño)
5501dc7b47 build: Stop using deprecated dep.get_pkgconfig_variable() method
Use generic get_variable() instead
2024-02-20 01:02:00 +01:00
Marco Trevisan (Treviño)
3e5ab6fdad egismoc: Convert value check values to big endian only when needed
Since the driver seem to require a big-endian value it's just better
to use architecture native endianness to compute the check value and
eventually just convert to big endian as the chip wants.
2024-02-19 23:38:40 +01:00
Marco Trevisan (Treviño)
5462db9901 egismoc: Convert the check value to little endian
In this way we can support the big-endian architectures too.
2024-02-19 23:38:40 +01:00
Marco Trevisan (Treviño)
59dc585ccd egismoc: Simplify check bytes computation
We use big endian values for generating the check bytes, but we can do
the same logic in a simpler way.
2024-02-19 23:38:40 +01:00
Marco Trevisan (Treviño)
6768bd0ff4 egismoc: Use strictly sized types to hold check bytes contents
So we are sure about the size we're sending at compile time too.
2024-02-19 23:38:40 +01:00
Marco Trevisan (Treviño)
ed1815c3d9 build: Allow testing more drivers in both big and little endian
I've tested them in a s390x host and many more tests work fine, so let's
enable them.
2024-02-19 23:38:40 +01:00
Marco Trevisan (Treviño)
057c209beb build: Build-depend on glib 2.68
GLib 2.68 is now more than 3 years old, so we can definitely start
using it without thinking too much.

This allows us to drop lots of compat code that we had around.

And like the previous commit tells us, it will also help us to have
more correct code around.
2024-02-19 22:23:02 +01:00
Marco Trevisan (Treviño)
90c4afded4 cleanup: Use non-const pointers for non constant cases
We had various cases in which we were using const pointers for
non constant data, and in fact we were allocating and free'ing
them.

So let's handle all these case properly, so that we won't have
newer GLib complaining at us!
2024-02-19 22:14:14 +01:00
Marco Trevisan (Treviño)
f8f28a066b egismoc: Simplify fingerprint id and firmware reading
We can do copy and duplicate in oneshot since we are handling strings
after all.
2024-02-19 17:25:21 +01:00
Marco Trevisan (Treviño)
adc66edd8d egismoc: Implement suspension properly
In case of suspension we can't just cancel the operations but
also return when completed, and this may not happen immediately
if there are ongoing operations.

This is automagically handled by libfprint internals, but in order
to make it happen, we need to cancel the ongoing operations and then
mark it completed. libfprint will then wait for the task completion
before actually marking the device as suspended.
2024-02-19 17:21:58 +01:00
Marco Trevisan (Treviño)
9af211cc89 egismoc: Use device cancellable on transfers 2024-02-19 17:12:12 +01:00
Marco Trevisan (Treviño)
904bddd988 egismoc: Use g_new0 instead of g_malloc to make the type clearer 2024-02-19 17:12:12 +01:00
Marco Trevisan (Treviño)
8badfa84e9 egismoc: Assert that current transfer is unset when setting it
We need to ensure that we are not overwriting the instance transfer, so
that we can be sure that we are only doing one transfer at time.

Also we need to ensure that the ssm unsetting it, is the owner of it.
2024-02-19 17:12:12 +01:00
Marco Trevisan (Treviño)
b97efa6fed egismoc: Assert that task ssm is unset when setting it
We need to ensure that we are not overwriting the instance SSM, so that
we can be sure that we are only doing one operation at time.

Also we need to ensure that the task unsetting it, is the owner of it.
2024-02-19 17:12:12 +01:00