I have a Dell XPS 13 9365, running upstream 4.10-rc4 on Fedora, and the fingerprint reader is not recognized. I expect this is the same dire situation as bugid:94536, but I figure it's useful to record the issue nonetheless. lsusb -d 138a:0091 -v Bus 001 Device 003: ID 138a:0091 Validity Sensors, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 255 Vendor Specific Class bDeviceSubClass 16 bDeviceProtocol 255 bMaxPacketSize0 8 idVendor 0x138a Validity Sensors, Inc. idProduct 0x0091 bcdDevice 1.64 iManufacturer 0 iProduct 0 iSerial 1 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 53 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 5 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x01 EP 1 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 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 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 4 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0010 1x 16 bytes bInterval 10
I have the same issue - Dell XPS 13 with the device 138a:0091.
I have this sensor and issue also on a Dell XPS 13
Confirmed 138a:0091 for Dell XPS 15 9560 as well.
Confirmed for Dell XPS 13 Nikita Mikhailov creates a driver for 90,94,97 sensors (https ://gitter.im/Validity90/Lobby). He said the following about the 91 sensor based upon a windows wireshark dump: 1. Device sends fingerprint image scans. 2. It send them unencrypted, probably in several parts roughly 106x106 pixel size 3. So there is no need for reverse engineering and implementing cryptography for that device. Which is a 99% of time spent in this project. Creating a driver would be much easier without it. Maybe there is a generic driver with no encryption someone can build upon?
Confirmed for Dell XPS15 9560 (model 2017). Not recognized either. Bus 001 Device 003: ID 138a:0091 Validity Sensors, Inc. Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 255 Vendor Specific Class bDeviceSubClass 16 bDeviceProtocol 255 bMaxPacketSize0 8 idVendor 0x138a Validity Sensors, Inc. idProduct 0x0091 bcdDevice 1.64 iManufacturer 0 iProduct 0 iSerial 1 c81aa800a52d bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 53 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 100mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 5 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 0 bInterfaceProtocol 0 iInterface 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x01 EP 1 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 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 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0008 1x 8 bytes bInterval 4 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0010 1x 16 bytes bInterval 10 Device Status: 0x0000 (Bus Powered)
Confirmed for Dell XPS15 9560 (model 2017). Not recognized either on OpenSuse.
Hey guys, I'm working on reverse engineering the driver for the fingerprint sensor on the XPS 9560. Work in progress found here: https://github.com/hmaarrfk/Validity91
I actually know nothing about how to integrate my findings with the linux fingerprint reader stack. Some pointers on which stub functions to rewrite would be nice.
Created attachment 137960 [details] [review] vfs7552 (0091) patch Here is a patch for a working driver. Now the driver works. That doesn't mean that it can actually detect your fingerprint. A 112x112 image gets sent to the computer. But libfprint is used to much larger images. So it actually just takes the liberty to prune it down to 96x96 (don't know why yet), and that doesn't give it a large enough image to detect anything. I think as far as this driver goes, basic functionality is there. But to get it to work, I think it needs more TLC from the rest of the library. It isn't something I want to work on now, but I figured maybe by integrating my contributions upstream, somebody else can take the lead, goodluck. This patch includes what I submitted in #105427 https://bugs.freedesktop.org/show_bug.cgi?id=105427
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/libfprint/libfprint/issues/52.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.