Public bug reported:

== Device ==
Bus 003 Device 002: ID 27c6:6382 Shenzhen Goodix Technology Co.,Ltd. Goodix 
USB2.0 MISC
Machine: Dell XPS 13 9315
OS: Linux Mint 22 (Ubuntu Noble 24.04 base)
Kernel: 6.17.0
libfprint-2-2 version: 1:1.94.7+tod1-0ubuntu5~24.04.6

== Problem ==
The Goodix fingerprint sensor 27c6:6382 is not recognized by libfprint.
The goodixmoc driver supports this device's protocol (same family as
27c6:6384 which IS supported) but 0x6382 is absent from the device ID
table in libfprint-2.so.2.0.0.

Running fprintd-list returns "No devices available" without the fix.

== Root Cause ==
The goodixmoc driver device table in libfprint-2.so.2.0.0 contains
27c6:6384 (added in a recent update per changelog) but is missing
27c6:6382. These are the same hardware family and use identical protocol.

The upstream libfprint goodixmoc driver at:
libfprint/drivers/goodixmoc/goodix.c
needs 0x6382 added to its device ID table, identical to how 0x6384
was added.

== Workaround ==
Binary patch libfprint-2.so.2.0.0 to add 0x6382 at the next aligned
slot (0x90 bytes after the last entry at 0x858e0 = offset 0x85970):

  struct.pack_into('<H', data, 0x85970, 0x6382)  # PID
  struct.pack_into('<H', data, 0x85974, 0x27c6)  # VID

Also disable the TOD driver which intercepts all Goodix devices:
  sudo mv 
/usr/lib/x86_64-linux-gnu/libfprint-2/tod-1/libfprint-tod-goodix-53xc-0.0.6.so \
          
/usr/lib/x86_64-linux-gnu/libfprint-2/tod-1/libfprint-tod-goodix-53xc-0.0.6.so.disabled

After these changes fprintd correctly identifies the device as
"Goodix MOC Fingerprint Sensor" and fingerprint enrollment works.

== Fix Required ==
Add 0x6382 to the goodixmoc device ID table in:
libfprint/drivers/goodixmoc/goodix.c

This is the same 2-line change used for other recently added Goodix IDs.
See LP bugs: #2042394 (6582), #2034121 (633C), #1989313 (634C) for
examples of identical fixes.

== udev hwdb ==
The hwdb already contains usb:v27C6p6382* (added correctly) so only
the driver ID table addition is needed.

** Affects: libfprint (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: dell fingerprint goodix regression xps

-- 
You received this bug notification because you are a member of Ubuntu
Desktop Bugs, which is subscribed to libfprint in Ubuntu.
https://bugs.launchpad.net/bugs/2150602

Title:
  Support Goodix fingerprint [27c6:6382] - Dell XPS 13 9315

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libfprint/+bug/2150602/+subscriptions


-- 
desktop-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/desktop-bugs

Reply via email to