From 401b259aa66736189d878ab231b50bdb0a16c5b3 Mon Sep 17 00:00:00 2001 From: Sebastian van de Meer Date: Fri, 27 Feb 2026 13:24:09 +0100 Subject: [PATCH] nb1010: Add support for NB-2020-U fingerprint reader Add USB PID 0x2020 (NB-2020-U) to the nb1010 driver's id_table. The NB-2020-U is an embedded variant of the NB-1010-U using an identical sensor die (confirmed by independent teardown reports from System Plus Consulting/Yole Group). USB endpoint layout, command protocol and image format are identical between both devices. Tested on a Fujitsu notebook with integrated NB-2020-U reader (USB ID 298d:2020): device enumeration, finger detection polling and image capture all work correctly with the existing nb1010 driver code. Signed-off-by: Sebastian van de Meer --- data/autosuspend.hwdb | 2 +- libfprint/drivers/nb1010.c | 3 ++- libfprint/fprint-list-udev-hwdb.c | 1 - 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/data/autosuspend.hwdb b/data/autosuspend.hwdb index 9d1fd351..7dc4d927 100644 --- a/data/autosuspend.hwdb +++ b/data/autosuspend.hwdb @@ -242,6 +242,7 @@ usb:v27C6p66A9* # Supported by libfprint driver nb1010 usb:v298Dp1010* +usb:v298Dp2020* ID_AUTOSUSPEND=1 ID_PERSIST=0 @@ -486,7 +487,6 @@ usb:v2808p93A9* usb:v2808pA658* usb:v2808pC652* usb:v2808pA553* -usb:v298Dp2020* usb:v298Dp2033* usb:v2DF0p0003* usb:v3274p8012* diff --git a/libfprint/drivers/nb1010.c b/libfprint/drivers/nb1010.c index f6920673..6b7755fa 100644 --- a/libfprint/drivers/nb1010.c +++ b/libfprint/drivers/nb1010.c @@ -412,6 +412,7 @@ nb1010_dev_change_state (FpImageDevice *dev, FpiImageDeviceState state) static const FpIdEntry id_table[] = { { .vid = 0x298d, .pid = 0x1010, }, + { .vid = 0x298d, .pid = 0x2020, }, { .vid = 0, .pid = 0, .driver_data = 0 }, }; @@ -427,7 +428,7 @@ fpi_device_nb1010_class_init (FpiDeviceNb1010Class *klass) FpImageDeviceClass *img_class = FP_IMAGE_DEVICE_CLASS (klass); dev_class->id = FP_COMPONENT; - dev_class->full_name = "NextBiometrics NB-1010-U"; + dev_class->full_name = "NextBiometrics NB-1010-U/NB-2020-U"; dev_class->type = FP_DEVICE_TYPE_USB; dev_class->id_table = id_table; dev_class->scan_type = FP_SCAN_TYPE_PRESS; diff --git a/libfprint/fprint-list-udev-hwdb.c b/libfprint/fprint-list-udev-hwdb.c index 6e2adb04..c1d9595a 100644 --- a/libfprint/fprint-list-udev-hwdb.c +++ b/libfprint/fprint-list-udev-hwdb.c @@ -164,7 +164,6 @@ static const FpIdEntry allowlist_id_table[] = { { .vid = 0x2808, .pid = 0xa658 }, { .vid = 0x2808, .pid = 0xc652 }, { .vid = 0x2808, .pid = 0xa553 }, - { .vid = 0x298d, .pid = 0x2020 }, { .vid = 0x298d, .pid = 0x2033 }, { .vid = 0x2df0, .pid = 0x0003 }, { .vid = 0x3274, .pid = 0x8012 },