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
Bastien Nocera
e397571f83
lib: Add more args to fpi_ssm callbacks
...
Pass the struct fp_dev and user_data to fpi_ssm callbacks, so that we
might be able to get rid of the fpi_ssm_get_user_data(), and
fpi_ssm_get_dev() as most drivers just get those from the ssm anyway
in their callbacks.
2018-09-18 13:46:39 +02:00
Bastien Nocera
d34d7c26de
lib: Remove fpi_ssm_set_user_data()
...
And pass the user_data in fpi_ssm_new() instead.
2018-09-18 13:45:33 +02:00
Bastien Nocera
3f64b2ea5a
lib: Remove fpi_imgdev_get_usb_dev()
...
We now use fpi_get_usb_dev(FP_DEV()) instead.
2018-09-15 01:12:18 +02:00
Bastien Nocera
57b38a2876
lib: Remove fpi_imgdev_get_dev()
...
This is now handled by FP_DEV()
2018-09-15 01:12:18 +02:00
Bastien Nocera
058f91909d
lib: Remove fp_img_dev->priv
...
And use the new instance data helper.
2018-09-15 01:12:18 +02:00
Bastien Nocera
603aab0a81
lib: Rename fpi_ssm_mark_aborted to fpi_ssm_mark_failed
2018-09-05 16:29:26 +02:00
Bastien Nocera
48b9e6c517
lib: Typedef fpi_ssm
2018-09-05 15:40:34 +02:00
Igor Filatov
8553f2e41c
elan: Send stop cmd and recalibrate after each capture
...
This seems to fix the lock-up issue with 0903
2018-08-10 14:21:36 +02:00
Igor Filatov
4ff97e7cbd
elan: Increase bz3 threshold to 24
...
Based on experience. Values more than 24 seem to work just after
enrollment, but it becomes very hard to verify in a day or so.
2018-08-10 13:45:29 +02:00
Igor Filatov
75fe328f64
elan: Don't rotate frames on 0x0c03
...
There has been a report that a 0x0c03 was installed straight (other
readers so far have produced images that are 90 degrees rotated). There
is no way for the dirver to know how a device is installed, so for now just
make an exception.
2018-08-10 13:45:29 +02:00
Igor Filatov
b28b006d61
elan: Use IMGDEV_STATE_* events instead of pre-set capture path
2018-08-10 13:45:29 +02:00
Igor Filatov
c3b1c982bc
elan: Set max frame height to 50, add note about performance
...
Frame height is a loosely experience-backed guesstimation. 50 seems to be
a good middle ground between swipe speed and quality.
2018-08-10 13:45:29 +02:00
Igor Filatov
b098399bbc
elan: Support 0x0c01~0x0c33
2018-08-10 13:45:29 +02:00
Igor Filatov
65bbdff3fc
elan: Stop doing sensor reset, change calibration and frame logic
...
Sensor reset code has been removed because it is not needed during normal
operation.
Calibration and frame processing logic has been improved according to
recommendations from Elantech.
2018-08-10 13:45:29 +02:00
Igor Filatov
bccff4ffef
elan: Change command structs, support more devices
...
Make each command a separate struct to get finer control over which
commands are called on which devices. Update ssm's accordingly. Add
sensor_reset and fuse_load commands.
Support 0x0903, 0x0c03, 0x0c16, 0x0c1a, 0x0c26
2018-08-09 14:42:25 +02:00
Bastien Nocera
bb4d888661
elan: Fix typo in comment
2018-06-18 18:07:24 +02:00
Corentin Noël
6cb77465ab
elan: Add USB ID for TNP Nano USB Fingerprint Reader (04f3:0c26)
...
The device works without any additional changes to the driver.
https://www.amazon.co.uk/gp/product/B075955HY7/
2018-06-13 20:22:29 +01:00
Bastien Nocera
f40f231a63
lib: Make fp_img_dev structure opaque
2018-05-29 13:34:18 +02:00
Bastien Nocera
d83d92adf2
lib: Make fp_dev structure opaque
2018-05-29 13:34:18 +02:00
Bastien Nocera
2e035a7f45
lib: Make fpi_ssm opaque for drivers
...
We shouldn't access fpi_ssm struct fields directly in drivers, so add
accessor and setter functions for the common uses.
2018-05-29 13:34:18 +02:00
Bastien Nocera
19dfb138a6
drivers: Use new drivers_api.h in drivers
2018-05-29 13:34:18 +02:00
Bastien Nocera
994061af44
drivers: Simplify headers
...
Remove all the headers already included through "fp_internal.h" such as
<libusb.h> and <errno.h>, include "assembling.h" and "driver_ids.h" there
as well to avoid doing it in (almost) every driver.
2018-05-24 17:02:15 +02:00
Bastien Nocera
32fcfde86b
lib: Use GLib and libusb directly for debug output
...
Use GLib internally to output debug information, and tell about
libusb's LIBUSB_DEBUG envvar for libusb debug.
fp_set_debug() is now a no-op.
https://bugs.freedesktop.org/show_bug.cgi?id=106552
2018-05-23 19:13:08 +02:00
Bastien Nocera
363a1b3371
lib: Replace empty fp_dbg() calls
...
GLib won't like them, so use G_DEBUG_HERE() instead.
2018-05-23 19:11:07 +02:00
Igor Filatov
cfe60c0640
Add Elan driver
2017-12-03 21:17:26 +02:00