Bastien Nocera
36dba33808
build: Test builds with a single driver with no deps
...
So that we can be sure that the build doesn't break when those drivers
are not built.
2018-09-28 15:55:56 +02:00
Bastien Nocera
c273908471
lib: Tidy fp_internal.h
...
Group global variables, structure definitions, and functions, and
group functions by which C source they're defined in.
This also removes the FP_IMGDRV_SUPPORTS_UNCONDITIONAL_CAPTURE
definition that's already available in the drivers API-accessible
fpi-core.h
2018-09-28 15:12:39 +02:00
Bastien Nocera
bf8661bf45
lib: Include "fpi-dev.h" in drivers header
2018-09-28 15:12:39 +02:00
Bastien Nocera
499b522183
lib: Remove titles from headers
...
The purpose of the headers is (or will be) explained in more details
inside each one of the matching C files.
2018-09-28 15:12:39 +02:00
Bastien Nocera
13bfe7a65c
lib: Move driver definitions to fpi-core.h
2018-09-28 15:12:39 +02:00
Bastien Nocera
e90ec04441
lib: Move fp_minutiae to fpi-img.h
2018-09-28 15:12:39 +02:00
Bastien Nocera
a59a5caaf3
lib: Add missing includes
...
Headers for size_t and ssize_t, as used in the header itself.
2018-09-28 15:12:39 +02:00
Bastien Nocera
5b9f81fb46
lib: Move fp_dev helpers to fpi-dev.h from fpi-core.h
2018-09-28 15:12:39 +02:00
Bastien Nocera
d3aaebb352
lib: Add include guards to fpi-dev.h
2018-09-28 15:12:39 +02:00
Bastien Nocera
a99f920fe0
lib: Add include guards to fpi-poll.h
2018-09-28 15:12:39 +02:00
Bastien Nocera
fb5527c58c
lib: Split off imgdev functions
...
They now live in fpi-dev-img.[ch]
2018-09-28 15:12:39 +02:00
Bastien Nocera
fcd3c1dd89
lib: Split off core.c drivers API
2018-09-28 15:12:39 +02:00
Bastien Nocera
3a9500be67
lib: Move fpi-img utils to fpi-img's header
2018-09-28 15:12:39 +02:00
Bastien Nocera
1d93b86569
lib: Rename assembling.[ch]
...
This is already self-contained.
2018-09-28 15:12:39 +02:00
Bastien Nocera
aca2cd41d8
lib: Rename sync.c to fpi-sync.c
...
All the functions there are public, so no matching header.
2018-09-28 15:12:39 +02:00
Bastien Nocera
1035f733aa
lib: Split off async functions
...
And don't add the new fpi-async.h to the driver imports, it will only
be used by the upekts driver.
2018-09-28 15:12:39 +02:00
Bastien Nocera
2818d94010
lib: Split off fp_img helpers
...
And rename img.c to fpi-img.c, as well as pixman.c to fpi-img-pixman.c
2018-09-28 15:12:39 +02:00
Bastien Nocera
1d1c34eb60
lib: Make fpi_print_data_item_free() static
2018-09-28 15:12:39 +02:00
Bastien Nocera
ca06fae22e
lib: Split off fpi_print_data helpers
...
And rename data.c to fpi-data.c
2018-09-28 15:12:39 +02:00
Bastien Nocera
36f527269b
Revert "lib: Mark fpi_ssm_get_user_data as deprecated"
...
This reverts commit 1fd82b5162
.
This was causing too many warnings at this stage of porting. We'll add
it again when most of the drivers are ported.
2018-09-28 15:12:39 +02:00
Bastien Nocera
7cfe20e07f
lib: Fix gtk-doc warning
...
warning: no link for: "timeval" -> (<code class="literal">timeval</code>)
2018-09-27 16:08:21 +02:00
Bastien Nocera
1fd82b5162
lib: Mark fpi_ssm_get_user_data as deprecated
2018-09-27 16:07:58 +02:00
Bastien Nocera
0ace5f64f8
elan: Fix use-after-free if USB transfer is cancelled
2018-09-27 15:19:00 +02:00
Bastien Nocera
e532524c7e
elan: Name our timeouts
2018-09-27 15:17:15 +02:00
Bastien Nocera
ebd96f892e
lib: Make fpi_timeout_add() never fail
...
It will now assert if the monotonic clock isn't available. If that's the
case, we'll have bigger problems anyway.
2018-09-27 15:14:05 +02:00
Bastien Nocera
4b9b34fa4d
elan: Use USB helpers
2018-09-27 15:09:59 +02:00
Bastien Nocera
bcc1e7ae73
aes2501: Use USB helpers
...
Nice little cleanups.
2018-09-27 14:49:50 +02:00
Bastien Nocera
27accf42f2
uru4000: Port URU4000 driver to USB helpers
...
Doesn't look very useful.
2018-09-27 14:49:50 +02:00
Bastien Nocera
96f2e07cdd
lib: Add USB transfer helpers
...
Those helpers will provide more arguments in their callbacks, and handle
the libusb_transfer lifecycle, making it easier to use for drivers.
2018-09-27 14:49:50 +02:00
Bastien Nocera
192c4f3cfc
aesx660: Use constants for buffer sizes
2018-09-27 14:49:50 +02:00
Bastien Nocera
cb274032da
aes2501: Use constants for buffer sizes
2018-09-27 14:49:50 +02:00
Bastien Nocera
b890fa56d8
aes1610: Use constants for buffer sizes
2018-09-27 14:49:50 +02:00
Bastien Nocera
b817b46494
lib: Remove home-grown min() implementation
...
And use GLib's.
2018-09-27 14:49:50 +02:00
Bastien Nocera
49ba59369a
aesx660: Remove home-grown min() implementation
...
And use GLib's.
2018-09-27 14:49:50 +02:00
Bastien Nocera
d09cb88e9a
uru4000: Fix typos in comments
2018-09-27 14:49:50 +02:00
Bastien Nocera
44c3f4f772
lib: Cancel pending timeouts on close
...
So that the drivers don't call back into themselves once freed.
2018-09-27 14:49:50 +02:00
Bastien Nocera
948a67a51f
lib: Add internal fpi_timeout_cancel_all_for_dev()
...
This will be used to disable all timeouts for a device that's about
to be closed, and freed.
2018-09-27 14:49:50 +02:00
Bastien Nocera
de79609550
lib: Use timeout name in debug messages when available
2018-09-27 14:49:41 +02:00
Bastien Nocera
d18e10535e
lib: Add a way to name timeouts
...
To make it easier to print debug information about where timeouts are
coming from.
2018-09-27 14:49:41 +02:00
Bastien Nocera
2954583373
lib: Fix memory leak in fpi_poll_exit()
...
The active_timers list was freed, but not the elements themselves.
2018-09-27 14:36:06 +02:00
Bastien Nocera
ccdecdea11
lib: Document fpi_ssm_jump_to_state()
2018-09-26 15:57:25 +02:00
Bastien Nocera
946388d1e9
lib: Fix incorrect guard in FP_IMG_DEV()
...
The check for the DRIVER_IMAGING type was reversed.
2018-09-26 15:53:52 +02:00
Bastien Nocera
10ae8ffb55
drivers: Simplify libusb_alloc_transfer(0) calls
...
By using our new, never-failing, USB allocation wrapper. As it can never
fail, we can also remove all the error paths for the allocations
failing.
2018-09-19 17:06:17 +02:00
Bastien Nocera
bdba9990fb
lib: Add libusb allocation helper
2018-09-19 17:04:55 +02:00
Bastien Nocera
50166e88c0
lib: Add fpi_ssm_next_state_timeout_cb() helper
...
To be used in 5 drivers.
2018-09-19 15:46:29 +02:00
Bastien Nocera
f2bc826a20
lib: Move aeslib.[ch] to the drivers directory
...
As it's used by drivers, and isn't a set of generic helpers.
2018-09-19 15:16:40 +02:00
Bastien Nocera
ac48d66203
lib: Mention that fpi_timeout gets freed
2018-09-18 20:02:14 +02:00
Bastien Nocera
f68e7fcb9f
lib: Add fp_dev argument to timeout callback
...
To cut down on the fpi_ssm_get_user_data() usage again.
2018-09-18 20:00:59 +02:00
Bastien Nocera
0c3a22758b
drivers: Simplify FP_INSTANCE_DATA(FP_DEV()) calls
...
When fp_dev is already available, don't use the fp_img_dev struct to get
to fp_dev with FP_DEV(), use the fp_dev directly.
2018-09-18 18:30:42 +02:00
Bastien Nocera
9cc859a318
drivers: Diminish fpi_ssm_get_user_data() usage
...
Can't remove it yet, as libusb transfers and timeouts don't pass the
fp_dev or fp_img_dev separately.
2018-09-18 18:30:42 +02:00