Support FPC MOC fingerprint [10a5:d805]

Bug #2054538 reported by Bin Li
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OEM Priority Project
In Progress
High
Bin Li
libfprint (Ubuntu)
New
Undecided
Unassigned

Bug Description

The finger print device cannot work.

$ lsusb -s 003 -vv
Bus 003 Device 003: ID 10a5:d805 FPC FPC L:0002 FW:2127051
Couldn't open device, some information will be missing
Device Descriptor:
  bLength 18
  bDescriptorType 1
  bcdUSB 2.00
  bDeviceClass 0
  bDeviceSubClass 0
  bDeviceProtocol 0
  bMaxPacketSize0 64
  idVendor 0x10a5
  idProduct 0xd805
  bcdDevice 0.51
  iManufacturer 1 FPC
  iProduct 2 FPC L:0002 FW:2127051
  iSerial 0
  bNumConfigurations 1
  Configuration Descriptor:
    bLength 9
    bDescriptorType 2
    wTotalLength 0x0019
    bNumInterfaces 1
    bConfigurationValue 1
    iConfiguration 4
    bmAttributes 0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower 100mA
    Interface Descriptor:
      bLength 9
      bDescriptorType 4
      bInterfaceNumber 0
      bAlternateSetting 0
      bNumEndpoints 1
      bInterfaceClass 255 Vendor Specific Class
      bInterfaceSubClass 255 Vendor Specific Subclass
      bInterfaceProtocol 255 Vendor Specific Protocol
      iInterface 5
      Endpoint Descriptor:
        bLength 7
        bDescriptorType 5
        bEndpointAddress 0x81 EP 1 IN
        bmAttributes 2
          Transfer Type Bulk
          Synch Type None
          Usage Type Data
        wMaxPacketSize 0x0040 1x 64 bytes
        bInterval 0

[Steps to reproduce]
Boot up the system, try to use the finger print related function.

[Expected result]
The FPR should work

[Actual result]
The FPR doesn't work

[Failure rate]
100%

[Additional information]
Ubuntu: 22.04
kernel-version: 6.5.0-1014-oem

Bin Li (binli)
tags: added: oem-priority originate-from-2054422 sutton
Revision history for this message
Bin Li (binli) wrote :

commit cca2b6a624a738e0334dfafee9426a594532c91c
Author: Haowei Lo <email address hidden>
Date: Mon Jul 25 15:12:11 2022 +0800

    fpcmoc: Support FPC moc devices

    Supported PID: 0xFFE0/A305/D805/DA04/D205

data/autosuspend.hwdb
libfprint/drivers/fpcmoc/fpc.c
libfprint/drivers/fpcmoc/fpc.h
libfprint/meson.build
meson.build
tests/fpcmoc/custom.pcapng
tests/fpcmoc/custom.py
tests/fpcmoc/device
tests/meson.build

Revision history for this message
Bin Li (binli) wrote (last edit ):

I found the commt/patch has binary pcapng file, the patch couldn't be applied and compiled deb package.

Applying patch patches/fpcmoc-Support-FPC-moc-devices.patch
patching file data/autosuspend.hwdb
patching file libfprint/drivers/fpcmoc/fpc.c
patching file libfprint/drivers/fpcmoc/fpc.h
patching file libfprint/meson.build
patching file meson.build
File tests/fpcmoc/custom.pcapng: git binary diffs are not supported.
patching file tests/fpcmoc/custom.py
patching file tests/fpcmoc/device
patching file tests/meson.build
Patch patches/fpcmoc-Support-FPC-moc-devices.patch does not apply (enforce with -f)

Revision history for this message
Bin Li (binli) wrote :

@3v1n0,

 Hi Marco, do you have any ideas to add the patch in libfprint? Thanks!

Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote :

You mean change merged in https://gitlab.freedesktop.org/libfprint/libfprint/-/merge_requests/375?

It's in Ubuntu already, but you want to backport it?

Revision history for this message
Bin Li (binli) wrote :

@3v1n0,

 Yes, I want to backport it, tests/fpcmoc/custom.pcapng is bianry file, and git binary diffs are not supported.

Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote :

That's a test file so in theory can be avoided. But that's weird, they should work thought gpb?

If it doesn't, you can just apply the patch and then disable the test and remove the file for Ubuntu side.

Bin Li (binli)
Changed in oem-priority:
importance: Undecided → High
assignee: nobody → Bin Li (binli)
status: New → In Progress
Revision history for this message
Bin Li (binli) wrote :

@3v1n0,

 Yes, gpb works fine in my side. Another question, currently we have 4 bugs needed SRU, do you prefer one debdiff file or 4 separated debdiff files? Thanks!

https://code.launchpad.net/~binli/libfprint/+git/libfprint/+ref/ubuntu/jammy-devel-d805

d/p/fpcmoc-Support-FPC-moc-devices.patch (LP: #2054538)
https://bugs.launchpad.net/ubuntu/+source/libfprint/+bug/2054538

d/p/elanmoc-add-PID-0x0c8c-0x0c8d.patch (LP: #2058013)
https://bugs.launchpad.net/ubuntu/+source/libfprint/+bug/2058013

d/p/goodixmoc-add-PID-0x659A.patch (LP: #2058202)
https://bugs.launchpad.net/ubuntu/+source/libfprint/+bug/2058202

d/p/goodixmoc-Add-PID-0x6582.patch (LP: #2042394)
https://bugs.launchpad.net/ubuntu/+source/libfprint/+bug/2042394

Revision history for this message
Bin Li (binli) wrote :

For D805, another patch is needed.

From c782298ae49be33bc271476c4136cf8732b44436 Mon Sep 17 00:00:00 2001
From: haoweilo <email address hidden>
Date: Fri, 28 Oct 2022 15:47:43 +0800
Subject: [PATCH] fpcmoc: Ensure the current SSM is never overwritten

Revision history for this message
Bin Li (binli) wrote :
Revision history for this message
Bin Li (binli) wrote (last edit ):

D805 works fine with these two patches.

https://launchpad.net/~binli/+archive/ubuntu/ppa/+files/libfprint-2-2_1.94.3+tod1-0ubuntu2~22.04.07binli1_amd64.deb

  * d/p/fpcmoc-Support-FPC-moc-devices.patch (LP: #2054538)
    d/p/fpcmoc-Ensure-the-current-SSM-is-never-overwritten.patch

Revision history for this message
Bin Li (binli) wrote :

Our customer met an crash issue, we need another patch for this issue.

traps: fprintd[1445] general protection fault ip:7dd9fde85d26 sp:7ffc98ac2ec0 error:0 in libglib-2.0.so.0.7200.4[7dd 9fde2d000+8f000]

https://gitlab.freedesktop.org/libfprint/libfprint/-/issues/526
https://gitlab.freedesktop.org/libfprint/libfprint/-/merge_requests/421

Revision history for this message
Bin Li (binli) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.