-
×InformationNeed Windows 11 help?Check documents on compatibility, FAQs, upgrade information and available fixes.
Windows 11 Support Center. -
-
×InformationNeed Windows 11 help?Check documents on compatibility, FAQs, upgrade information and available fixes.
Windows 11 Support Center. -
- HP Community
- Notebooks
- Notebook Hardware and Upgrade Questions
- Re: Linux driver for fingerprint reader

Create an account on the HP Community to personalize your profile and ask a question
01-02-2018 07:03 PM
Hello, I'm using Ubuntu 17.10 on my Spectre x360, almost everything works with a fresh installation, but the fingerprint reader. I couldn't even find the device and tools like this won't recognize the hardware device.
Any suggestions?
At least, I'd like to know the fingerprint reader specifications (brand and model).
02-27-2018 04:59 PM
Hi @dariosm,
I am very interested to know about your expeience with spectre and Linux. I am considering getting a spectre sometime soon.
Did you figure out a way to get this information for the fingerprint reader?
Providing good hardware with Linux support is a good selling factor for many developers. I really hope HP puts more effort in providing better linux support, compatible hardware or just enough information so that others can make it work.
03-14-2018 08:04 AM
Yeap, already tried but I couldn't find anything related to fingerprint reader or sensor.
00:00.0 Host bridge: Intel Corporation Device 5914 (rev 08)
00:02.0 VGA compatible controller: Intel Corporation Device 5917 (rev 07)
00:04.0 Signal processing controller: Intel Corporation Skylake Processor Thermal Subsystem (rev 08)
00:13.0 Non-VGA unclassified device: Intel Corporation Device 9d35 (rev 21)
00:14.0 USB controller: Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller (rev 21)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-LP Thermal subsystem (rev 21)
00:15.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO I2C Controller #0 (rev 21)
00:16.0 Communication controller: Intel Corporation Sunrise Point-LP CSME HECI #1 (rev 21)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port (rev f1)
00:1c.1 PCI bridge: Intel Corporation Device 9d11 (rev f1)
00:1c.4 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #5 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Sunrise Point-LP PCI Express Root Port #9 (rev f1)
00:1e.0 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO UART Controller #0 (rev 21)
00:1e.2 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO SPI Controller #0 (rev 21)
00:1f.0 ISA bridge: Intel Corporation Device 9d4e (rev 21)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-LP PMC (rev 21)
00:1f.3 Audio device: Intel Corporation Device 9d71 (rev 21)
00:1f.4 SMBus: Intel Corporation Sunrise Point-LP SMBus (rev 21)
01:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)
02:00.0 Network controller: Intel Corporation Wireless 8265 / 8275 (rev 78)
6e:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM961/PM961
04-25-2018 12:40 AM - edited 04-25-2018 01:03 AM
Hi @dariosm, after I got my spectre x360 13, I have done some research on it.
Firstly, I logined in windows and find out the Fingerpring Sensor Device is an ACPI device whose BIOS device name is
\_SB_.PCI0.SPI0.FPNT
Then I went to Linux to check something, and wrote a little script:
#!/bin/bash # Print DMAR info from dmesg sudo dmesg | grep -i dmar
# lspci: show the device from dmesg echo -e "\n\n" lspci -vv -s "00:1e.2"
# Search the ACPI device with SPI in it's path echo -e "\n\n" for i in `ls /sys/bus/acpi/devices`; do cd /sys/bus/acpi/devices/$i; grep -q -i spi path 2> /dev/null; if [ $? -eq 0 ]; then echo ====================================; echo "/sys/bus/acpi/devices/$i"; cat path; fi; done
Finally, we got some output:
[ 0.000000] ACPI: DMAR 0x000000002F4017C0 000114 (v01 HPQOEM 83B9 00000001 HP 00000001) [ 0.004000] DMAR: Host address width 39 [ 0.004000] DMAR: DRHD base: 0x000000fed90000 flags: 0x0 [ 0.004000] DMAR: dmar0: reg_base_addr fed90000 ver 1:0 cap 1c0000c40660462 ecap 19e2ff0505e [ 0.004000] DMAR: DRHD base: 0x000000fed91000 flags: 0x1 [ 0.004000] DMAR: dmar1: reg_base_addr fed91000 ver 1:0 cap d2008c40660462 ecap f050da [ 0.004000] DMAR: RMRR base: 0x0000002eaf7000 end: 0x0000002eb16fff [ 0.004000] DMAR: RMRR base: 0x00000038800000 end: 0x0000003cffffff [ 0.004000] DMAR: ANDD device: 1 name: \_SB.PCI0.I2C0 [ 0.004000] DMAR: ANDD device: 7 name: \_SB.PCI0.SPI0 [ 0.004000] DMAR: ANDD device: 9 name: \_SB.PCI0.UA00 [ 0.004000] DMAR-IR: IOAPIC id 2 under DRHD base 0xfed91000 IOMMU 1 [ 0.004000] DMAR-IR: HPET id 0 under DRHD base 0xfed91000 [ 0.004000] DMAR-IR: x2apic is disabled because BIOS sets x2apic opt out bit. [ 0.004000] DMAR-IR: Use 'intremap=no_x2apic_optout' to override the BIOS setting. [ 0.004000] DMAR-IR: Enabled IRQ remapping in xapic mode [ 0.497544] DMAR: ACPI device "device:76" under DMAR at fed91000 as 00:15.0 [ 0.497546] DMAR: ACPI device "device:77" under DMAR at fed91000 as 00:1e.2 [ 0.497548] DMAR: ACPI device "device:78" under DMAR at fed91000 as 00:1e.0 00:1e.2 Signal processing controller: Intel Corporation Sunrise Point-LP Serial IO SPI Controller #0 (rev 21) Subsystem: Hewlett-Packard Company Sunrise Point-LP Serial IO SPI Controller Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin C routed to IRQ 22 Region 0: Memory at dcc31000 (64-bit, non-prefetchable) [size=4K] Capabilities: <access denied> Kernel driver in use: intel-lpss Kernel modules: intel_lpss_pci ==================================== /sys/bus/acpi/devices/device:77 \_SB_.PCI0.SPI0 ==================================== /sys/bus/acpi/devices/INT3441:00 \_SB_.PCI0.SPI1 ==================================== /sys/bus/acpi/devices/SYNA8003:00 \_SB_.PCI0.SPI0.FPNT
So, as we can see, Linux had successfully found the device(SYNA8003, the same device name like what in Windows), but got no driver to handle the device here. I searched this keyword with Google but hardly found anything useful.
Some Refer:
https://www.kernel.org/doc/Documentation/acpi/enumeration.txt
https://www.kernel.org/doc/Documentation/Intel-IOMMU.txt