diff --git a/debian/patches/Fix-blacklist-handling-in-udev-rules-creation.patch b/debian/patches/Fix-blacklist-handling-in-udev-rules-creation.patch deleted file mode 100644 index 933d2bd3..00000000 --- a/debian/patches/Fix-blacklist-handling-in-udev-rules-creation.patch +++ /dev/null @@ -1,20 +0,0 @@ -From 1f1d14d5fad50a469c1214a394e4a89d7d32101d Mon Sep 17 00:00:00 2001 -From: Didier Raboud -Date: Mon, 25 Jun 2012 22:47:26 +0200 -Subject: [PATCH] Fix blacklist handling in udev rules creation. - ---- - libfprint/fprint-list-udev-rules.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/libfprint/fprint-list-udev-rules.c -+++ b/libfprint/fprint-list-udev-rules.c -@@ -52,7 +52,7 @@ - blacklist = 0; - for (j = 0; blacklist_id_table[j].vendor != 0; j++) { - if (driver->id_table[i].vendor == blacklist_id_table[j].vendor && -- driver->id_table[j].product == blacklist_id_table[j].product) { -+ driver->id_table[i].product == blacklist_id_table[j].product) { - blacklist = 1; - break; - } diff --git a/debian/patches/link-against-glib.patch b/debian/patches/link-against-glib.patch deleted file mode 100644 index a6102204..00000000 --- a/debian/patches/link-against-glib.patch +++ /dev/null @@ -1,26 +0,0 @@ -From b6c2f72400a15873978717875894854e1136e428 Mon Sep 17 00:00:00 2001 -From: Jeremy Bicha -Date: Sat, 20 Apr 2013 11:33:17 -0400 -Subject: [PATCH] build: Fix underlinking against glib - -https://bugs.freedesktop.org/show_bug.cgi?id=63755 ---- - libfprint/Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libfprint/Makefile.am b/libfprint/Makefile.am -index 7a16782..4dee301 100644 ---- a/libfprint/Makefile.am -+++ b/libfprint/Makefile.am -@@ -88,7 +88,7 @@ libfprint_la_LIBADD = -lm $(LIBUSB_LIBS) $(GLIB_LIBS) $(CRYPTO_LIBS) - - fprint_list_udev_rules_SOURCES = fprint-list-udev-rules.c - fprint_list_udev_rules_CFLAGS = -fvisibility=hidden -I$(srcdir)/nbis/include $(LIBUSB_CFLAGS) $(GLIB_CFLAGS) $(IMAGEMAGICK_CFLAGS) $(CRYPTO_CFLAGS) $(AM_CFLAGS) --fprint_list_udev_rules_LDADD = $(builddir)/libfprint.la -+fprint_list_udev_rules_LDADD = $(builddir)/libfprint.la $(GLIB_LIBS) - - udev_rules_DATA = 60-fprint-autosuspend.rules - --- -1.8.1.2 - diff --git a/debian/patches/series b/debian/patches/series index c2a6d3ae..15f33bb4 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,12 +1,6 @@ # Upstream backports -u7e1646c-uru4000-fix-race-condition-on-waiting-power-up-irq.patch -u8a87ba4-uru4000-fix-cancelling-of-imaging-from-error-callbac.patch -u0b2d33c-imgdev-fix-cancelling-of-enrollment-from-stage_completed-callback.patch -u3b3679c-upeke2-Add-support-for-147e-2020-ID.patch # Debian specifics kFreeBSD_FTBFS_add_ETIME_definition.patch udev-rules-creation-add-Debian-specifics.patch -Fix-blacklist-handling-in-udev-rules-creation.patch use-non-versionned-libusbh-path.patch -link-against-glib.patch diff --git a/debian/patches/u0b2d33c-imgdev-fix-cancelling-of-enrollment-from-stage_completed-callback.patch b/debian/patches/u0b2d33c-imgdev-fix-cancelling-of-enrollment-from-stage_completed-callback.patch deleted file mode 100644 index fe38a4c5..00000000 --- a/debian/patches/u0b2d33c-imgdev-fix-cancelling-of-enrollment-from-stage_completed-callback.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 0b2d33c712d6917ed71068188788a258a4dce61e Mon Sep 17 00:00:00 2001 -From: Timo Teräs -Date: Mon, 03 Dec 2012 07:57:25 +0000 -Subject: imgdev: fix cancelling of enrollment from stage_completed callback - -Re-check device state after fpi_drvcb_enroll_stage_completed(). -If enrollment was cancelled after non-completing stage, we must -not restart acquire as it would confuse the internal state machine. - -https://bugs.freedesktop.org/show_bug.cgi?id=57829 ---- -diff --git a/libfprint/imgdev.c b/libfprint/imgdev.c -index 14e41ae..1ed3f6d 100644 ---- a/libfprint/imgdev.c -+++ b/libfprint/imgdev.c -@@ -145,7 +145,10 @@ void fpi_imgdev_report_finger_status(struct fp_img_dev *imgdev, - case IMG_ACTION_ENROLL: - fp_dbg("reporting enroll result"); - fpi_drvcb_enroll_stage_completed(imgdev->dev, r, data, img); -- if (r > 0 && r != FP_ENROLL_COMPLETE && r != FP_ENROLL_FAIL) { -+ /* the callback can cancel enrollment, so recheck current -+ * action and the status to see if retry is needed */ -+ if (imgdev->action == IMG_ACTION_ENROLL && -+ r > 0 && r != FP_ENROLL_COMPLETE && r != FP_ENROLL_FAIL) { - imgdev->action_result = 0; - imgdev->action_state = IMG_ACQUIRE_STATE_AWAIT_FINGER_ON; - dev_change_state(imgdev, IMG_ACQUIRE_STATE_AWAIT_FINGER_ON); --- -cgit v0.9.0.2-2-gbebe diff --git a/debian/patches/u3b3679c-upeke2-Add-support-for-147e-2020-ID.patch b/debian/patches/u3b3679c-upeke2-Add-support-for-147e-2020-ID.patch deleted file mode 100644 index b11ec1c2..00000000 --- a/debian/patches/u3b3679c-upeke2-Add-support-for-147e-2020-ID.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 3b3679c900f6739f7067f8d720e15d548bb39be9 Mon Sep 17 00:00:00 2001 -From: Vasily Khoruzhick -Date: Sun, 13 Jan 2013 16:43:38 +0300 -Subject: [PATCH 5/6] upeke2: Add support for 147e:2020 ID - -https://bugs.freedesktop.org/show_bug.cgi?id=59320 ---- - libfprint/drivers/upeke2.c | 14 +++++++++++--- - 1 files changed, 11 insertions(+), 3 deletions(-) - -diff --git a/libfprint/drivers/upeke2.c b/libfprint/drivers/upeke2.c -index ed8f43d..a7db54d 100644 ---- a/libfprint/drivers/upeke2.c -+++ b/libfprint/drivers/upeke2.c -@@ -46,6 +46,11 @@ - #define MSG_READ_BUF_SIZE 0x40 - #define MAX_DATA_IN_READ_BUF (MSG_READ_BUF_SIZE - 9) - -+enum { -+ UPEKE2_2016, -+ UPEKE2_2020, -+}; -+ - struct upeke2_dev { - gboolean enroll_passed; - gboolean first_verify_iteration; -@@ -848,8 +853,10 @@ static struct fpi_ssm *deinitsm_new(struct fp_dev *dev) - - static int discover(struct libusb_device_descriptor *dsc, uint32_t *devtype) - { -- /* Revision 2 is what we're interested in */ -- if (dsc->bcdDevice == 2) -+ if (dsc->idProduct == 0x2016 && dsc->bcdDevice == 2) -+ return 1; -+ -+ if (dsc->idProduct == 0x2020 && dsc->bcdDevice == 1) - return 1; - - return 0; -@@ -1453,7 +1460,8 @@ static int verify_stop(struct fp_dev *dev, gboolean iterating) - } - - static const struct usb_id id_table[] = { -- { .vendor = 0x147e, .product = 0x2016 }, -+ { .vendor = 0x147e, .product = 0x2016, .driver_data = UPEKE2_2016 }, -+ { .vendor = 0x147e, .product = 0x2020, .driver_data = UPEKE2_2020 }, - { 0, 0, 0, }, /* terminating entry */ - }; - --- -1.7.2.5 - diff --git a/debian/patches/u7e1646c-uru4000-fix-race-condition-on-waiting-power-up-irq.patch b/debian/patches/u7e1646c-uru4000-fix-race-condition-on-waiting-power-up-irq.patch deleted file mode 100644 index 94e5b683..00000000 --- a/debian/patches/u7e1646c-uru4000-fix-race-condition-on-waiting-power-up-irq.patch +++ /dev/null @@ -1,87 +0,0 @@ -From 7e1646c382bbd6dc21a167bf7f0e45afa5ea217e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Timo=20Ter=C3=A4s?= -Date: Tue, 4 Dec 2012 10:50:30 +0200 -Subject: [PATCH] uru4000: fix race condition on waiting power up irq - -It can come before we finish reading the status register on some -cases. Arm the irq handler early, and fix the state machine to -handle early irq properly. - -https://bugs.freedesktop.org/show_bug.cgi?id=57834 ---- - libfprint/drivers/uru4000.c | 31 ++++++++++++++++++++----------- - 1 file changed, 20 insertions(+), 11 deletions(-) - -diff --git a/libfprint/drivers/uru4000.c b/libfprint/drivers/uru4000.c -index 541245a..07e26a4 100644 ---- a/libfprint/drivers/uru4000.c -+++ b/libfprint/drivers/uru4000.c -@@ -994,16 +994,19 @@ static void init_scanpwr_irq_cb(struct fp_img_dev *dev, int status, - uint16_t type, void *user_data) - { - struct fpi_ssm *ssm = user_data; -+ struct uru4k_dev *urudev = dev->priv; - - if (status) - fpi_ssm_mark_aborted(ssm, status); - else if (type != IRQDATA_SCANPWR_ON) - fp_dbg("ignoring interrupt"); -- else if (ssm->cur_state != INIT_AWAIT_SCAN_POWER) -- fp_err("ignoring scanpwr interrupt due to being in wrong state %d", -- ssm->cur_state); -- else -+ else if (ssm->cur_state != INIT_AWAIT_SCAN_POWER) { -+ fp_dbg("early scanpwr interrupt"); -+ urudev->scanpwr_irq_timeouts = -1; -+ } else { -+ fp_dbg("late scanpwr interrupt"); - fpi_ssm_next_state(ssm); -+ } - } - - static void init_scanpwr_timeout(void *user_data) -@@ -1053,14 +1056,21 @@ static void init_run_state(struct fpi_ssm *ssm) - fpi_ssm_next_state(ssm); - break; - case INIT_POWERUP: ; -+ if (!IRQ_HANDLER_IS_RUNNING(urudev)) { -+ fpi_ssm_mark_aborted(ssm, -EIO); -+ break; -+ } -+ urudev->irq_cb_data = ssm; -+ urudev->irq_cb = init_scanpwr_irq_cb; -+ - struct fpi_ssm *powerupsm = fpi_ssm_new(dev->dev, powerup_run_state, - POWERUP_NUM_STATES); - powerupsm->priv = dev; - fpi_ssm_start_subsm(ssm, powerupsm); - break; - case INIT_AWAIT_SCAN_POWER: -- if (!IRQ_HANDLER_IS_RUNNING(urudev)) { -- fpi_ssm_mark_aborted(ssm, -EIO); -+ if (urudev->scanpwr_irq_timeouts < 0) { -+ fpi_ssm_next_state(ssm); - break; - } - -@@ -1073,13 +1083,12 @@ static void init_run_state(struct fpi_ssm *ssm) - fpi_ssm_mark_aborted(ssm, -ETIME); - break; - } -- -- urudev->irq_cb_data = ssm; -- urudev->irq_cb = init_scanpwr_irq_cb; - break; - case INIT_DONE: -- fpi_timeout_cancel(urudev->scanpwr_irq_timeout); -- urudev->scanpwr_irq_timeout = NULL; -+ if (urudev->scanpwr_irq_timeout) { -+ fpi_timeout_cancel(urudev->scanpwr_irq_timeout); -+ urudev->scanpwr_irq_timeout = NULL; -+ } - urudev->irq_cb_data = NULL; - urudev->irq_cb = NULL; - fpi_ssm_next_state(ssm); --- -1.7.10.4 - diff --git a/debian/patches/u8a87ba4-uru4000-fix-cancelling-of-imaging-from-error-callbac.patch b/debian/patches/u8a87ba4-uru4000-fix-cancelling-of-imaging-from-error-callbac.patch deleted file mode 100644 index e57d394f..00000000 --- a/debian/patches/u8a87ba4-uru4000-fix-cancelling-of-imaging-from-error-callbac.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 8a87ba448c62eb14fa51d70ce870dd10b67ba76b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Timo=20Ter=C3=A4s?= -Date: Mon, 3 Dec 2012 09:51:27 +0200 -Subject: [PATCH] uru4000: fix cancelling of imaging from error callback - -Call error callback before resetting img_transfer to NULL. This -variable is internally used to detect if we are still in imaging -loop and the call to execute_state_change() needs to be postponed. -Since this is the final thing imaging_complete() we can't reset -img_transfer until just before this call. - -https://bugs.freedesktop.org/show_bug.cgi?id=57829 ---- - libfprint/drivers/uru4000.c | 9 ++++++--- - 1 file changed, 6 insertions(+), 3 deletions(-) - -diff --git a/libfprint/drivers/uru4000.c b/libfprint/drivers/uru4000.c -index 07e26a4..ccaa87f 100644 ---- a/libfprint/drivers/uru4000.c -+++ b/libfprint/drivers/uru4000.c -@@ -789,15 +789,18 @@ static void imaging_complete(struct fpi_ssm *ssm) - int r = ssm->error; - fpi_ssm_free(ssm); - -+ /* Report error before exiting imaging loop - the error handler -+ * can request state change, which needs to be postponed to end of -+ * this function. */ -+ if (r) -+ fpi_imgdev_session_error(dev, r); -+ - g_free(urudev->img_data); - urudev->img_data = NULL; - - libusb_free_transfer(urudev->img_transfer); - urudev->img_transfer = NULL; - -- if (r) -- fpi_imgdev_session_error(dev, r); -- - r = execute_state_change(dev); - if (r) - fpi_imgdev_session_error(dev, r); --- -1.7.10.4 - diff --git a/debian/patches/udev-rules-creation-add-Debian-specifics.patch b/debian/patches/udev-rules-creation-add-Debian-specifics.patch index eeea189c..f1150ac4 100644 --- a/debian/patches/udev-rules-creation-add-Debian-specifics.patch +++ b/debian/patches/udev-rules-creation-add-Debian-specifics.patch @@ -7,7 +7,7 @@ Last-Update: 2012-06-26 --- a/libfprint/fprint-list-udev-rules.c +++ b/libfprint/fprint-list-udev-rules.c -@@ -57,9 +57,6 @@ +@@ -59,9 +59,6 @@ break; } } @@ -17,7 +17,7 @@ Last-Update: 2012-06-26 key = g_strdup_printf ("%04x:%04x", driver->id_table[i].vendor, driver->id_table[i].product); if (g_hash_table_lookup (printed, key) != NULL) { -@@ -72,7 +69,10 @@ +@@ -74,7 +71,10 @@ if (num_printed == 0) printf ("# %s\n", driver->full_name);