From 5d0a3eab5c3defb4b8ff173085beea79c5e97800 Mon Sep 17 00:00:00 2001 From: hermanlin Date: Tue, 12 Oct 2021 14:02:48 +0800 Subject: [PATCH 1/8] elanmoc: add PID 0x0c7d Signed-off-by: hermanlin --- data/autosuspend.hwdb | 1 + libfprint/drivers/elanmoc/elanmoc.c | 1 + 2 files changed, 2 insertions(+) diff --git a/data/autosuspend.hwdb b/data/autosuspend.hwdb index f3ee8fc6..b7700a5e 100644 --- a/data/autosuspend.hwdb +++ b/data/autosuspend.hwdb @@ -142,6 +142,7 @@ usb:v04F3p0C58* ID_PERSIST=0 # Supported by libfprint driver elanmoc +usb:v04F3p0C7D* usb:v04F3p0C7E* ID_AUTOSUSPEND=1 ID_PERSIST=0 diff --git a/libfprint/drivers/elanmoc/elanmoc.c b/libfprint/drivers/elanmoc/elanmoc.c index aef386c1..69700a0c 100644 --- a/libfprint/drivers/elanmoc/elanmoc.c +++ b/libfprint/drivers/elanmoc/elanmoc.c @@ -25,6 +25,7 @@ G_DEFINE_TYPE (FpiDeviceElanmoc, fpi_device_elanmoc, FP_TYPE_DEVICE) static const FpIdEntry id_table[] = { + { .vid = 0x04f3, .pid = 0x0c7d, }, { .vid = 0x04f3, .pid = 0x0c7e, }, { .vid = 0, .pid = 0, .driver_data = 0 }, /* terminating entry */ }; From 5e934a4fa0c25be4572925f96af44f409697f1ae Mon Sep 17 00:00:00 2001 From: boger Date: Wed, 20 Oct 2021 20:11:05 +0800 Subject: [PATCH 2/8] goodixmoc: add PID 63CC 63CC: Dell Latitude series fingerprint sensor --- data/autosuspend.hwdb | 1 + libfprint/drivers/goodixmoc/goodix.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/data/autosuspend.hwdb b/data/autosuspend.hwdb index b7700a5e..42d22ca7 100644 --- a/data/autosuspend.hwdb +++ b/data/autosuspend.hwdb @@ -159,6 +159,7 @@ usb:v27C6p60A2* usb:v27C6p639C* usb:v27C6p63AC* usb:v27C6p63BC* +usb:v27C6p63CC* usb:v27C6p6496* usb:v27C6p6584* usb:v27C6p658C* diff --git a/libfprint/drivers/goodixmoc/goodix.c b/libfprint/drivers/goodixmoc/goodix.c index eb5e67a6..15a85323 100644 --- a/libfprint/drivers/goodixmoc/goodix.c +++ b/libfprint/drivers/goodixmoc/goodix.c @@ -1282,6 +1282,7 @@ gx_fp_probe (FpDevice *device) case 0x639C: case 0x63AC: case 0x63BC: + case 0x63CC: case 0x6A94: self->max_enroll_stage = 12; break; @@ -1505,6 +1506,7 @@ static const FpIdEntry id_table[] = { { .vid = 0x27c6, .pid = 0x639C, }, { .vid = 0x27c6, .pid = 0x63AC, }, { .vid = 0x27c6, .pid = 0x63BC, }, + { .vid = 0x27c6, .pid = 0x63CC, }, { .vid = 0x27c6, .pid = 0x6496, }, { .vid = 0x27c6, .pid = 0x6584, }, { .vid = 0x27c6, .pid = 0x658C, }, From de46e1e4b862ff266a68faca826116dab203f23d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= Date: Wed, 27 Oct 2021 01:59:14 +0200 Subject: [PATCH 3/8] tests: Add missing trailing new lines on devices attributes This as per the same reasons of commit 63bfaf4, and without trailing new lines such attributes aren't picked by umockdev in ubuntu and debian. --- tests/egis0570/device | 298 ++++++++++++++++++++--------------------- tests/elanmoc/device | 296 ++++++++++++++++++++-------------------- tests/goodixmoc/device | 278 +++++++++++++++++++------------------- 3 files changed, 436 insertions(+), 436 deletions(-) diff --git a/tests/egis0570/device b/tests/egis0570/device index e22dcf1e..5247b785 100644 --- a/tests/egis0570/device +++ b/tests/egis0570/device @@ -25,63 +25,63 @@ E: ID_VENDOR_FROM_DATABASE=LighTuning Technology Inc. E: ID_PATH=pci-0000:00:14.0-usb-0:9 E: ID_PATH_TAG=pci-0000_00_14_0-usb-0_9 E: LIBFPRINT_DRIVER=Hardcoded whitelist -A: authorized=1 -A: avoid_reset_quirk=0 -A: bConfigurationValue=1 -A: bDeviceClass=00 -A: bDeviceProtocol=00 -A: bDeviceSubClass=00 -A: bMaxPacketSize0=8 -A: bMaxPower=100mA -A: bNumConfigurations=1 -A: bNumInterfaces= 1 -A: bcdDevice=1041 -A: bmAttributes=a0 -A: busnum=1 -A: configuration= +A: authorized=1\n +A: avoid_reset_quirk=0\n +A: bConfigurationValue=1\n +A: bDeviceClass=00\n +A: bDeviceProtocol=00\n +A: bDeviceSubClass=00\n +A: bMaxPacketSize0=8\n +A: bMaxPower=100mA\n +A: bNumConfigurations=1\n +A: bNumInterfaces= 1\n +A: bcdDevice=1041\n +A: bmAttributes=a0\n +A: busnum=1\n +A: configuration=\n H: descriptors=12011001000000087A1C700541100102030109022000010100A0320904000002FF0000000705830240000007050402400003 -A: dev=189:4 -A: devnum=5 -A: devpath=9 +A: dev=189:4\n +A: devnum=5\n +A: devpath=9\n L: driver=../../../../../bus/usb/drivers/usb -A: idProduct=0570 -A: idVendor=1c7a -A: ltm_capable=no -A: manufacturer=EgisTec -A: maxchild=0 +A: idProduct=0570\n +A: idVendor=1c7a\n +A: ltm_capable=no\n +A: manufacturer=EgisTec\n +A: maxchild=0\n L: port=../1-0:1.0/usb1-port9 -A: power/active_duration=362352 -A: power/async=enabled -A: power/autosuspend=2 -A: power/autosuspend_delay_ms=2000 -A: power/connected_duration=5526124 -A: power/control=auto -A: power/level=auto -A: power/persist=1 -A: power/runtime_active_kids=0 -A: power/runtime_active_time=365097 -A: power/runtime_enabled=enabled -A: power/runtime_status=active -A: power/runtime_suspended_time=5160752 -A: power/runtime_usage=0 -A: power/wakeup=disabled -A: power/wakeup_abort_count= -A: power/wakeup_active= -A: power/wakeup_active_count= -A: power/wakeup_count= -A: power/wakeup_expire_count= -A: power/wakeup_last_time_ms= -A: power/wakeup_max_time_ms= -A: power/wakeup_total_time_ms= -A: product=EgisTec Touch Fingerprint Sensor -A: quirks=0x0 -A: removable=fixed -A: rx_lanes=1 -A: serial=W700B41B -A: speed=12 -A: tx_lanes=1 -A: urbnum=8040 -A: version= 1.10 +A: power/active_duration=362352\n +A: power/async=enabled\n +A: power/autosuspend=2\n +A: power/autosuspend_delay_ms=2000\n +A: power/connected_duration=5526124\n +A: power/control=auto\n +A: power/level=auto\n +A: power/persist=1\n +A: power/runtime_active_kids=0\n +A: power/runtime_active_time=365097\n +A: power/runtime_enabled=enabled\n +A: power/runtime_status=active\n +A: power/runtime_suspended_time=5160752\n +A: power/runtime_usage=0\n +A: power/wakeup=disabled\n +A: power/wakeup_abort_count=\n +A: power/wakeup_active=\n +A: power/wakeup_active_count=\n +A: power/wakeup_count=\n +A: power/wakeup_expire_count=\n +A: power/wakeup_last_time_ms=\n +A: power/wakeup_max_time_ms=\n +A: power/wakeup_total_time_ms=\n +A: product=EgisTec Touch Fingerprint Sensor\n +A: quirks=0x0\n +A: removable=fixed\n +A: rx_lanes=1\n +A: serial=W700B41B\n +A: speed=12\n +A: tx_lanes=1\n +A: urbnum=8040\n +A: version= 1.10\n P: /devices/pci0000:00/0000:00:14.0/usb1 N: bus/usb/001/001=12010002090001406B1D020008050302010109021900010100E0000904000001090000000705810304000C @@ -112,63 +112,63 @@ E: ID_PATH=pci-0000:00:14.0 E: ID_PATH_TAG=pci-0000_00_14_0 E: ID_FOR_SEAT=usb-pci-0000_00_14_0 E: TAGS=:seat: -A: authorized=1 -A: authorized_default=1 -A: avoid_reset_quirk=0 -A: bConfigurationValue=1 -A: bDeviceClass=09 -A: bDeviceProtocol=01 -A: bDeviceSubClass=00 -A: bMaxPacketSize0=64 -A: bMaxPower=0mA -A: bNumConfigurations=1 -A: bNumInterfaces= 1 -A: bcdDevice=0508 -A: bmAttributes=e0 -A: busnum=1 -A: configuration= +A: authorized=1\n +A: authorized_default=1\n +A: avoid_reset_quirk=0\n +A: bConfigurationValue=1\n +A: bDeviceClass=09\n +A: bDeviceProtocol=01\n +A: bDeviceSubClass=00\n +A: bMaxPacketSize0=64\n +A: bMaxPower=0mA\n +A: bNumConfigurations=1\n +A: bNumInterfaces= 1\n +A: bcdDevice=0508\n +A: bmAttributes=e0\n +A: busnum=1\n +A: configuration=\n H: descriptors=12010002090001406B1D020008050302010109021900010100E0000904000001090000000705810304000C -A: dev=189:0 -A: devnum=1 -A: devpath=0 +A: dev=189:0\n +A: devnum=1\n +A: devpath=0\n L: driver=../../../../bus/usb/drivers/usb -A: idProduct=0002 -A: idVendor=1d6b -A: interface_authorized_default=1 -A: ltm_capable=no -A: manufacturer=Linux 5.8.0-59-generic xhci-hcd -A: maxchild=12 -A: power/active_duration=378024 -A: power/async=enabled -A: power/autosuspend=0 -A: power/autosuspend_delay_ms=0 -A: power/connected_duration=5527220 -A: power/control=auto -A: power/level=auto -A: power/runtime_active_kids=1 -A: power/runtime_active_time=377962 -A: power/runtime_enabled=enabled -A: power/runtime_status=active -A: power/runtime_suspended_time=5149253 -A: power/runtime_usage=0 -A: power/wakeup=disabled -A: power/wakeup_abort_count= -A: power/wakeup_active= -A: power/wakeup_active_count= -A: power/wakeup_count= -A: power/wakeup_expire_count= -A: power/wakeup_last_time_ms= -A: power/wakeup_max_time_ms= -A: power/wakeup_total_time_ms= -A: product=xHCI Host Controller -A: quirks=0x0 -A: removable=unknown -A: rx_lanes=1 -A: serial=0000:00:14.0 -A: speed=480 -A: tx_lanes=1 -A: urbnum=956 -A: version= 2.00 +A: idProduct=0002\n +A: idVendor=1d6b\n +A: interface_authorized_default=1\n +A: ltm_capable=no\n +A: manufacturer=Linux 5.8.0-59-generic xhci-hcd\n +A: maxchild=12\n +A: power/active_duration=378024\n +A: power/async=enabled\n +A: power/autosuspend=0\n +A: power/autosuspend_delay_ms=0\n +A: power/connected_duration=5527220\n +A: power/control=auto\n +A: power/level=auto\n +A: power/runtime_active_kids=1\n +A: power/runtime_active_time=377962\n +A: power/runtime_enabled=enabled\n +A: power/runtime_status=active\n +A: power/runtime_suspended_time=5149253\n +A: power/runtime_usage=0\n +A: power/wakeup=disabled\n +A: power/wakeup_abort_count=\n +A: power/wakeup_active=\n +A: power/wakeup_active_count=\n +A: power/wakeup_count=\n +A: power/wakeup_expire_count=\n +A: power/wakeup_last_time_ms=\n +A: power/wakeup_max_time_ms=\n +A: power/wakeup_total_time_ms=\n +A: product=xHCI Host Controller\n +A: quirks=0x0\n +A: removable=unknown\n +A: rx_lanes=1\n +A: serial=0000:00:14.0\n +A: speed=480\n +A: tx_lanes=1\n +A: urbnum=956\n +A: version= 2.00\n P: /devices/pci0000:00/0000:00:14.0 E: DRIVER=xhci_hcd @@ -183,46 +183,46 @@ E: ID_PCI_SUBCLASS_FROM_DATABASE=USB controller E: ID_PCI_INTERFACE_FROM_DATABASE=XHCI E: ID_VENDOR_FROM_DATABASE=Intel Corporation E: ID_MODEL_FROM_DATABASE=Sunrise Point-LP USB 3.0 xHCI Controller -A: ari_enabled=0 -A: broken_parity_status=0 -A: class=0x0c0330 +A: ari_enabled=0\n +A: broken_parity_status=0\n +A: class=0x0c0330\n H: config=86802F9D060490022130030C00008000040021A400000000000000000000000000000000000000000000000025108E11000000007000000000000000FF010000 -A: consistent_dma_mask_bits=64 -A: d3cold_allowed=1 -A: dbc=disabled -A: device=0x9d2f -A: dma_mask_bits=64 +A: consistent_dma_mask_bits=64\n +A: d3cold_allowed=1\n +A: dbc=disabled\n +A: device=0x9d2f\n +A: dma_mask_bits=64\n L: driver=../../../bus/pci/drivers/xhci_hcd -A: driver_override=(null) -A: enable=1 -A: irq=127 -A: local_cpulist=0-7 -A: local_cpus=ff -A: modalias=pci:v00008086d00009D2Fsv00001025sd0000118Ebc0Csc03i30 -A: msi_bus=1 -A: msi_irqs/127=msi -A: numa_node=-1 -A: pools=poolinfo - 0.1\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 0 0 128 0\nbuffer-32 0 0 32 0\nxHCI 1KB stream ctx arrays 0 0 1024 0\nxHCI 256 byte stream ctx arrays 0 0 256 0\nxHCI input/output contexts 9 10 2112 10\nxHCI ring segments 32 36 4096 36\nbuffer-2048 1 2 2048 1\nbuffer-512 0 0 512 0\nbuffer-128 0 0 128 0\nbuffer-32 0 0 32 0 -A: power/async=enabled -A: power/control=on -A: power/runtime_active_kids=1 -A: power/runtime_active_time=5524703 -A: power/runtime_enabled=forbidden -A: power/runtime_status=active -A: power/runtime_suspended_time=3373 -A: power/runtime_usage=1 -A: power/wakeup=enabled -A: power/wakeup_abort_count=0 -A: power/wakeup_active=0 -A: power/wakeup_active_count=0 -A: power/wakeup_count=0 -A: power/wakeup_expire_count=0 -A: power/wakeup_last_time_ms=0 -A: power/wakeup_max_time_ms=0 -A: power/wakeup_total_time_ms=0 -A: resource=0x00000000a4210000 0x00000000a421ffff 0x0000000000140204\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000 -A: revision=0x21 -A: subsystem_device=0x118e -A: subsystem_vendor=0x1025 -A: vendor=0x8086 +A: driver_override=(null)\n +A: enable=1\n +A: irq=127\n +A: local_cpulist=0-7\n +A: local_cpus=ff\n +A: modalias=pci:v00008086d00009D2Fsv00001025sd0000118Ebc0Csc03i30\n +A: msi_bus=1\n +A: msi_irqs/127=msi\n +A: numa_node=-1\n +A: pools=poolinfo - 0.1\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 0 0 128 0\nbuffer-32 0 0 32 0\nxHCI 1KB stream ctx arrays 0 0 1024 0\nxHCI 256 byte stream ctx arrays 0 0 256 0\nxHCI input/output contexts 9 10 2112 10\nxHCI ring segments 32 36 4096 36\nbuffer-2048 1 2 2048 1\nbuffer-512 0 0 512 0\nbuffer-128 0 0 128 0\nbuffer-32 0 0 32 0\n +A: power/async=enabled\n +A: power/control=on\n +A: power/runtime_active_kids=1\n +A: power/runtime_active_time=5524703\n +A: power/runtime_enabled=forbidden\n +A: power/runtime_status=active\n +A: power/runtime_suspended_time=3373\n +A: power/runtime_usage=1\n +A: power/wakeup=enabled\n +A: power/wakeup_abort_count=0\n +A: power/wakeup_active=0\n +A: power/wakeup_active_count=0\n +A: power/wakeup_count=0\n +A: power/wakeup_expire_count=0\n +A: power/wakeup_last_time_ms=0\n +A: power/wakeup_max_time_ms=0\n +A: power/wakeup_total_time_ms=0\n +A: resource=0x00000000a4210000 0x00000000a421ffff 0x0000000000140204\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n +A: revision=0x21\n +A: subsystem_device=0x118e\n +A: subsystem_vendor=0x1025\n +A: vendor=0x8086\n diff --git a/tests/elanmoc/device b/tests/elanmoc/device index 8d47c2da..ef3400dd 100644 --- a/tests/elanmoc/device +++ b/tests/elanmoc/device @@ -23,62 +23,62 @@ E: ID_USB_INTERFACES=:ff0000: E: ID_VENDOR_FROM_DATABASE=Elan Microelectronics Corp. E: ID_PATH=pci-0000:00:14.0-usb-0:1 E: ID_PATH_TAG=pci-0000_00_14_0-usb-0_1 -A: authorized=1 -A: avoid_reset_quirk=0 -A: bConfigurationValue=1 -A: bDeviceClass=00 -A: bDeviceProtocol=00 -A: bDeviceSubClass=00 -A: bMaxPacketSize0=64 -A: bMaxPower=100mA -A: bNumConfigurations=1 -A: bNumInterfaces= 1 -A: bcdDevice=0305 -A: bmAttributes=a0 -A: busnum=1 -A: configuration=add909c9-e67e-4126-a6f7-1e31179e27d9 +A: authorized=1\n +A: avoid_reset_quirk=0\n +A: bConfigurationValue=1\n +A: bDeviceClass=00\n +A: bDeviceProtocol=00\n +A: bDeviceSubClass=00\n +A: bMaxPacketSize0=64\n +A: bMaxPower=100mA\n +A: bNumConfigurations=1\n +A: bNumInterfaces= 1\n +A: bcdDevice=0305\n +A: bmAttributes=a0\n +A: busnum=1\n +A: configuration=add909c9-e67e-4126-a6f7-1e31179e27d9\n H: descriptors=1201000200000040F3047E0C05030102000109025300010103A0320904000008FF0000000921100100012215000705810240000107050102400001070582024000010705020240000107058302400001070503024000010705840240000107050402400001 -A: dev=189:9 -A: devnum=10 -A: devpath=1 +A: dev=189:9\n +A: devnum=10\n +A: devpath=1\n L: driver=../../../../../bus/usb/drivers/usb -A: idProduct=0c7e -A: idVendor=04f3 -A: ltm_capable=no -A: manufacturer=ELAN -A: maxchild=0 +A: idProduct=0c7e\n +A: idVendor=04f3\n +A: ltm_capable=no\n +A: manufacturer=ELAN\n +A: maxchild=0\n L: port=../1-0:1.0/usb1-port1 -A: power/active_duration=94712 -A: power/async=enabled -A: power/autosuspend=2 -A: power/autosuspend_delay_ms=2000 -A: power/connected_duration=94712 -A: power/control=on -A: power/level=on -A: power/persist=1 -A: power/runtime_active_kids=0 -A: power/runtime_active_time=94436 -A: power/runtime_enabled=forbidden -A: power/runtime_status=active -A: power/runtime_suspended_time=0 -A: power/runtime_usage=1 -A: power/wakeup=disabled -A: power/wakeup_abort_count= -A: power/wakeup_active= -A: power/wakeup_active_count= -A: power/wakeup_count= -A: power/wakeup_expire_count= -A: power/wakeup_last_time_ms= -A: power/wakeup_max_time_ms= -A: power/wakeup_total_time_ms= -A: product=ELAN:ARM-M4 -A: quirks=0x0 -A: removable=removable -A: rx_lanes=1 -A: speed=12 -A: tx_lanes=1 -A: urbnum=12 -A: version= 2.00 +A: power/active_duration=94712\n +A: power/async=enabled\n +A: power/autosuspend=2\n +A: power/autosuspend_delay_ms=2000\n +A: power/connected_duration=94712\n +A: power/control=on\n +A: power/level=on\n +A: power/persist=1\n +A: power/runtime_active_kids=0\n +A: power/runtime_active_time=94436\n +A: power/runtime_enabled=forbidden\n +A: power/runtime_status=active\n +A: power/runtime_suspended_time=0\n +A: power/runtime_usage=1\n +A: power/wakeup=disabled\n +A: power/wakeup_abort_count=\n +A: power/wakeup_active=\n +A: power/wakeup_active_count=\n +A: power/wakeup_count=\n +A: power/wakeup_expire_count=\n +A: power/wakeup_last_time_ms=\n +A: power/wakeup_max_time_ms=\n +A: power/wakeup_total_time_ms=\n +A: product=ELAN:ARM-M4\n +A: quirks=0x0\n +A: removable=removable\n +A: rx_lanes=1\n +A: speed=12\n +A: tx_lanes=1\n +A: urbnum=12\n +A: version= 2.00\n P: /devices/pci0000:00/0000:00:14.0/usb1 N: bus/usb/001/001=12010002090001406B1D020004050302010109021900010100E0000904000001090000000705810304000C @@ -109,63 +109,63 @@ E: ID_PATH=pci-0000:00:14.0 E: ID_PATH_TAG=pci-0000_00_14_0 E: ID_FOR_SEAT=usb-pci-0000_00_14_0 E: TAGS=:seat: -A: authorized=1 -A: authorized_default=1 -A: avoid_reset_quirk=0 -A: bConfigurationValue=1 -A: bDeviceClass=09 -A: bDeviceProtocol=01 -A: bDeviceSubClass=00 -A: bMaxPacketSize0=64 -A: bMaxPower=0mA -A: bNumConfigurations=1 -A: bNumInterfaces= 1 -A: bcdDevice=0504 -A: bmAttributes=e0 -A: busnum=1 -A: configuration= +A: authorized=1\n +A: authorized_default=1\n +A: avoid_reset_quirk=0\n +A: bConfigurationValue=1\n +A: bDeviceClass=09\n +A: bDeviceProtocol=01\n +A: bDeviceSubClass=00\n +A: bMaxPacketSize0=64\n +A: bMaxPower=0mA\n +A: bNumConfigurations=1\n +A: bNumInterfaces= 1\n +A: bcdDevice=0504\n +A: bmAttributes=e0\n +A: busnum=1\n +A: configuration=\n H: descriptors=12010002090001406B1D020004050302010109021900010100E0000904000001090000000705810304000C -A: dev=189:0 -A: devnum=1 -A: devpath=0 +A: dev=189:0\n +A: devnum=1\n +A: devpath=0\n L: driver=../../../../bus/usb/drivers/usb -A: idProduct=0002 -A: idVendor=1d6b -A: interface_authorized_default=1 -A: ltm_capable=no -A: manufacturer=Linux 5.4.0-42-generic xhci-hcd -A: maxchild=12 -A: power/active_duration=74604360 -A: power/async=enabled -A: power/autosuspend=0 -A: power/autosuspend_delay_ms=0 -A: power/connected_duration=74606456 -A: power/control=auto -A: power/level=auto -A: power/runtime_active_kids=4 -A: power/runtime_active_time=74605838 -A: power/runtime_enabled=enabled -A: power/runtime_status=active -A: power/runtime_suspended_time=0 -A: power/runtime_usage=0 -A: power/wakeup=disabled -A: power/wakeup_abort_count= -A: power/wakeup_active= -A: power/wakeup_active_count= -A: power/wakeup_count= -A: power/wakeup_expire_count= -A: power/wakeup_last_time_ms= -A: power/wakeup_max_time_ms= -A: power/wakeup_total_time_ms= -A: product=xHCI Host Controller -A: quirks=0x0 -A: removable=unknown -A: rx_lanes=1 -A: serial=0000:00:14.0 -A: speed=480 -A: tx_lanes=1 -A: urbnum=490 -A: version= 2.00 +A: idProduct=0002\n +A: idVendor=1d6b\n +A: interface_authorized_default=1\n +A: ltm_capable=no\n +A: manufacturer=Linux 5.4.0-42-generic xhci-hcd\n +A: maxchild=12\n +A: power/active_duration=74604360\n +A: power/async=enabled\n +A: power/autosuspend=0\n +A: power/autosuspend_delay_ms=0\n +A: power/connected_duration=74606456\n +A: power/control=auto\n +A: power/level=auto\n +A: power/runtime_active_kids=4\n +A: power/runtime_active_time=74605838\n +A: power/runtime_enabled=enabled\n +A: power/runtime_status=active\n +A: power/runtime_suspended_time=0\n +A: power/runtime_usage=0\n +A: power/wakeup=disabled\n +A: power/wakeup_abort_count=\n +A: power/wakeup_active=\n +A: power/wakeup_active_count=\n +A: power/wakeup_count=\n +A: power/wakeup_expire_count=\n +A: power/wakeup_last_time_ms=\n +A: power/wakeup_max_time_ms=\n +A: power/wakeup_total_time_ms=\n +A: product=xHCI Host Controller\n +A: quirks=0x0\n +A: removable=unknown\n +A: rx_lanes=1\n +A: serial=0000:00:14.0\n +A: speed=480\n +A: tx_lanes=1\n +A: urbnum=490\n +A: version= 2.00\n P: /devices/pci0000:00/0000:00:14.0 E: DRIVER=xhci_hcd @@ -180,46 +180,46 @@ E: ID_PCI_SUBCLASS_FROM_DATABASE=USB controller E: ID_PCI_INTERFACE_FROM_DATABASE=XHCI E: ID_VENDOR_FROM_DATABASE=Intel Corporation E: ID_MODEL_FROM_DATABASE=Cannon Point-LP USB 3.1 xHCI Controller -A: ari_enabled=0 -A: broken_parity_status=0 -A: class=0x0c0330 +A: ari_enabled=0\n +A: broken_parity_status=0\n +A: class=0x0c0330\n H: config=8680ED9D060490023030030C00008000040030A10000000000000000000000000000000000000000000000003C10EF85000000007000000000000000FF010000FD0134808FC6FF8300000000000000007F6DDC0F00000000181C030400000000316000000000000000000000000000000180C2C1080000000000000000000000059087007802E0FE0000000000000000090014F01000400100000000C10A080000080E00001800008F40020000010000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000B50F300112000000 -A: consistent_dma_mask_bits=64 -A: d3cold_allowed=1 -A: dbc=disabled -A: device=0x9ded -A: dma_mask_bits=64 +A: consistent_dma_mask_bits=64\n +A: d3cold_allowed=1\n +A: dbc=disabled\n +A: device=0x9ded\n +A: dma_mask_bits=64\n L: driver=../../../bus/pci/drivers/xhci_hcd -A: driver_override=(null) -A: enable=1 -A: irq=124 -A: local_cpulist=0-3 -A: local_cpus=f -A: modalias=pci:v00008086d00009DEDsv0000103Csd000085EFbc0Csc03i30 -A: msi_bus=1 -A: msi_irqs/124=msi -A: numa_node=-1 -A: pools=poolinfo - 0.1\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 0 32 128 1\nbuffer-32 0 0 32 0\nxHCI 1KB stream ctx arrays 0 0 1024 0\nxHCI 256 byte stream ctx arrays 0 0 256 0\nxHCI input/output contexts 11 12 2112 12\nxHCI ring segments 54 54 4096 54\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 9 32 128 1\nbuffer-32 0 0 32 0 -A: power/async=enabled -A: power/control=auto -A: power/runtime_active_kids=1 -A: power/runtime_active_time=74606194 -A: power/runtime_enabled=enabled -A: power/runtime_status=active -A: power/runtime_suspended_time=0 -A: power/runtime_usage=0 -A: power/wakeup=enabled -A: power/wakeup_abort_count=0 -A: power/wakeup_active=0 -A: power/wakeup_active_count=0 -A: power/wakeup_count=0 -A: power/wakeup_expire_count=0 -A: power/wakeup_last_time_ms=0 -A: power/wakeup_max_time_ms=0 -A: power/wakeup_total_time_ms=0 -A: resource=0x00000000a1300000 0x00000000a130ffff 0x0000000000140204\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000 -A: revision=0x30 -A: subsystem_device=0x85ef -A: subsystem_vendor=0x103c -A: vendor=0x8086 +A: driver_override=(null)\n +A: enable=1\n +A: irq=124\n +A: local_cpulist=0-3\n +A: local_cpus=f\n +A: modalias=pci:v00008086d00009DEDsv0000103Csd000085EFbc0Csc03i30\n +A: msi_bus=1\n +A: msi_irqs/124=msi\n +A: numa_node=-1\n +A: pools=poolinfo - 0.1\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 0 32 128 1\nbuffer-32 0 0 32 0\nxHCI 1KB stream ctx arrays 0 0 1024 0\nxHCI 256 byte stream ctx arrays 0 0 256 0\nxHCI input/output contexts 11 12 2112 12\nxHCI ring segments 54 54 4096 54\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 9 32 128 1\nbuffer-32 0 0 32 0\n +A: power/async=enabled\n +A: power/control=auto\n +A: power/runtime_active_kids=1\n +A: power/runtime_active_time=74606194\n +A: power/runtime_enabled=enabled\n +A: power/runtime_status=active\n +A: power/runtime_suspended_time=0\n +A: power/runtime_usage=0\n +A: power/wakeup=enabled\n +A: power/wakeup_abort_count=0\n +A: power/wakeup_active=0\n +A: power/wakeup_active_count=0\n +A: power/wakeup_count=0\n +A: power/wakeup_expire_count=0\n +A: power/wakeup_last_time_ms=0\n +A: power/wakeup_max_time_ms=0\n +A: power/wakeup_total_time_ms=0\n +A: resource=0x00000000a1300000 0x00000000a130ffff 0x0000000000140204\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n +A: revision=0x30\n +A: subsystem_device=0x85ef\n +A: subsystem_vendor=0x103c\n +A: vendor=0x8086\n diff --git a/tests/goodixmoc/device b/tests/goodixmoc/device index e92ffbb4..9fb39e59 100644 --- a/tests/goodixmoc/device +++ b/tests/goodixmoc/device @@ -25,60 +25,60 @@ E: ID_VENDOR_FROM_DATABASE=Shenzhen Goodix Technology Co.,Ltd. E: ID_AUTOSUSPEND=1 E: ID_PATH=pci-0000:00:14.0-usb-0:3 E: ID_PATH_TAG=pci-0000_00_14_0-usb-0_3 -A: authorized=1 -A: avoid_reset_quirk=0 -A: bConfigurationValue=1 -A: bDeviceClass=ef -A: bDeviceProtocol=00 -A: bDeviceSubClass=00 -A: bMaxPacketSize0=64 -A: bMaxPower=100mA -A: bNumConfigurations=1 -A: bNumInterfaces= 1 -A: bcdDevice=0100 -A: bmAttributes=a0 -A: busnum=1 -A: configuration=XXXX_MOC_B0 +A: authorized=1\n +A: avoid_reset_quirk=0\n +A: bConfigurationValue=1\n +A: bDeviceClass=ef\n +A: bDeviceProtocol=00\n +A: bDeviceSubClass=00\n +A: bMaxPacketSize0=64\n +A: bMaxPower=100mA\n +A: bNumConfigurations=1\n +A: bNumInterfaces= 1\n +A: bcdDevice=0100\n +A: bmAttributes=a0\n +A: busnum=1\n +A: configuration=XXXX_MOC_B0\n H: descriptors=12010002EF000040C627966400010102030109022000010103A0320904000002FF0000040705830240000007050102400000 -A: dev=189:52 -A: devnum=53 -A: devpath=3 +A: dev=189:52\n +A: devnum=53\n +A: devpath=3\n L: driver=../../../../../bus/usb/drivers/usb L: firmware_node=../../../../LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:1c/device:1d/device:20 -A: idProduct=6496 -A: idVendor=27c6 -A: ltm_capable=no -A: manufacturer=Goodix Technology Co., Ltd. -A: maxchild=0 +A: idProduct=6496\n +A: idVendor=27c6\n +A: ltm_capable=no\n +A: manufacturer=Goodix Technology Co., Ltd.\n +A: maxchild=0\n L: port=../1-0:1.0/usb1-port3 -A: power/active_duration=29262 -A: power/autosuspend=2 -A: power/autosuspend_delay_ms=2000 -A: power/connected_duration=57399 -A: power/control=auto -A: power/level=auto -A: power/persist=1 -A: power/runtime_active_time=29308 -A: power/runtime_status=active -A: power/runtime_suspended_time=27850 -A: power/wakeup=disabled -A: power/wakeup_abort_count= -A: power/wakeup_active= -A: power/wakeup_active_count= -A: power/wakeup_count= -A: power/wakeup_expire_count= -A: power/wakeup_last_time_ms= -A: power/wakeup_max_time_ms= -A: power/wakeup_total_time_ms= -A: product=Goodix USB2.0 MISC -A: quirks=0x0 -A: removable=removable -A: rx_lanes=1 -A: serial=XXXX_MOC_B0 -A: speed=12 -A: tx_lanes=1 -A: urbnum=394 -A: version= 2.00 +A: power/active_duration=29262\n +A: power/autosuspend=2\n +A: power/autosuspend_delay_ms=2000\n +A: power/connected_duration=57399\n +A: power/control=auto\n +A: power/level=auto\n +A: power/persist=1\n +A: power/runtime_active_time=29308\n +A: power/runtime_status=active\n +A: power/runtime_suspended_time=27850\n +A: power/wakeup=disabled\n +A: power/wakeup_abort_count=\n +A: power/wakeup_active=\n +A: power/wakeup_active_count=\n +A: power/wakeup_count=\n +A: power/wakeup_expire_count=\n +A: power/wakeup_last_time_ms=\n +A: power/wakeup_max_time_ms=\n +A: power/wakeup_total_time_ms=\n +A: product=Goodix USB2.0 MISC\n +A: quirks=0x0\n +A: removable=removable\n +A: rx_lanes=1\n +A: serial=XXXX_MOC_B0\n +A: speed=12\n +A: tx_lanes=1\n +A: urbnum=394\n +A: version= 2.00\n P: /devices/pci0000:00/0000:00:14.0/usb1 N: bus/usb/001/001=12010002090001406B1D020013050302010109021900010100E0000904000001090000000705810304000C @@ -111,66 +111,66 @@ E: ID_PATH_TAG=pci-0000_00_14_0 E: ID_FOR_SEAT=usb-pci-0000_00_14_0 E: TAGS=:seat: E: CURRENT_TAGS=:seat: -A: authorized=1 -A: authorized_default=1 -A: avoid_reset_quirk=0 -A: bConfigurationValue=1 -A: bDeviceClass=09 -A: bDeviceProtocol=01 -A: bDeviceSubClass=00 -A: bMaxPacketSize0=64 -A: bMaxPower=0mA -A: bNumConfigurations=1 -A: bNumInterfaces= 1 -A: bcdDevice=0513 -A: bmAttributes=e0 -A: busnum=1 -A: configuration= +A: authorized=1\n +A: authorized_default=1\n +A: avoid_reset_quirk=0\n +A: bConfigurationValue=1\n +A: bDeviceClass=09\n +A: bDeviceProtocol=01\n +A: bDeviceSubClass=00\n +A: bMaxPacketSize0=64\n +A: bMaxPower=0mA\n +A: bNumConfigurations=1\n +A: bNumInterfaces= 1\n +A: bcdDevice=0513\n +A: bmAttributes=e0\n +A: busnum=1\n +A: configuration=\n H: descriptors=12010002090001406B1D020013050302010109021900010100E0000904000001090000000705810304000C -A: dev=189:0 -A: devnum=1 -A: devpath=0 +A: dev=189:0\n +A: devnum=1\n +A: devpath=0\n L: driver=../../../../bus/usb/drivers/usb L: firmware_node=../../../LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:1c/device:1d -A: idProduct=0002 -A: idVendor=1d6b -A: interface_authorized_default=1 -A: ltm_capable=no -A: manufacturer=Linux 5.13.15-200.fc34.x86_64 xhci-hcd -A: maxchild=12 -A: power/active_duration=219578717 -A: power/autosuspend=0 -A: power/autosuspend_delay_ms=0 -A: power/connected_duration=219649620 -A: power/control=auto -A: power/level=auto -A: power/runtime_active_time=219589127 -A: power/runtime_status=active -A: power/runtime_suspended_time=0 -A: power/wakeup=disabled -A: power/wakeup_abort_count= -A: power/wakeup_active= -A: power/wakeup_active_count= -A: power/wakeup_count= -A: power/wakeup_expire_count= -A: power/wakeup_last_time_ms= -A: power/wakeup_max_time_ms= -A: power/wakeup_total_time_ms= -A: product=xHCI Host Controller -A: quirks=0x0 -A: removable=unknown -A: rx_lanes=1 -A: serial=0000:00:14.0 -A: speed=480 -A: tx_lanes=1 -A: urbnum=4325 -A: version= 2.00 +A: idProduct=0002\n +A: idVendor=1d6b\n +A: interface_authorized_default=1\n +A: ltm_capable=no\n +A: manufacturer=Linux 5.13.15-200.fc34.x86_64 xhci-hcd\n +A: maxchild=12\n +A: power/active_duration=219578717\n +A: power/autosuspend=0\n +A: power/autosuspend_delay_ms=0\n +A: power/connected_duration=219649620\n +A: power/control=auto\n +A: power/level=auto\n +A: power/runtime_active_time=219589127\n +A: power/runtime_status=active\n +A: power/runtime_suspended_time=0\n +A: power/wakeup=disabled\n +A: power/wakeup_abort_count=\n +A: power/wakeup_active=\n +A: power/wakeup_active_count=\n +A: power/wakeup_count=\n +A: power/wakeup_expire_count=\n +A: power/wakeup_last_time_ms=\n +A: power/wakeup_max_time_ms=\n +A: power/wakeup_total_time_ms=\n +A: product=xHCI Host Controller\n +A: quirks=0x0\n +A: removable=unknown\n +A: rx_lanes=1\n +A: serial=0000:00:14.0\n +A: speed=480\n +A: tx_lanes=1\n +A: urbnum=4325\n +A: version= 2.00\n P: /devices/pci0000:00/0000:00:14.0 E: DRIVER=xhci_hcd E: PCI_CLASS=C0330 E: PCI_ID=8086:9DED -E: PCI_SUBSYS_ID=17AA:2292 +E: PCI_SUBSYS_ID=17AA:2292\n E: PCI_SLOT_NAME=0000:00:14.0 E: MODALIAS=pci:v00008086d00009DEDsv000017AAsd00002292bc0Csc03i30 E: SUBSYSTEM=pci @@ -180,44 +180,44 @@ E: ID_PCI_INTERFACE_FROM_DATABASE=XHCI E: ID_VENDOR_FROM_DATABASE=Intel Corporation E: ID_AUTOSUSPEND=1 E: ID_MODEL_FROM_DATABASE=Cannon Point-LP USB 3.1 xHCI Controller -A: ari_enabled=0 -A: broken_parity_status=0 -A: class=0x0c0330 +A: ari_enabled=0\n +A: broken_parity_status=0\n +A: class=0x0c0330\n H: config=8680ED9D060490021130030C00008000040022EA000000000000000000000000000000000000000000000000AA179222000000007000000000000000FF010000FD0134808FC6FF8300000000000000007F6DDC0F000000004C084B0100000000316000000000000000000000000000000180C2C1080000000000000000000000059087001803E0FE0000000000000000090014F01000400100000000C10A080000080E00001800008F40020000010000000000000000000008000000040000000000000000000000000000000000000000000000000000000800000004000000000000000000000000000000000000000000000000000000B50F320112000000 -A: consistent_dma_mask_bits=64 -A: d3cold_allowed=1 -A: dbc=disabled -A: device=0x9ded -A: dma_mask_bits=64 +A: consistent_dma_mask_bits=64\n +A: d3cold_allowed=1\n +A: dbc=disabled\n +A: device=0x9ded\n +A: dma_mask_bits=64\n L: driver=../../../bus/pci/drivers/xhci_hcd -A: driver_override=(null) -A: enable=1 +A: driver_override=(null)\n +A: enable=1\n L: firmware_node=../../LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:1c -A: irq=128 -A: local_cpulist=0-7 -A: local_cpus=ff -A: modalias=pci:v00008086d00009DEDsv000017AAsd00002292bc0Csc03i30 -A: msi_bus=1 -A: msi_irqs/128=msi -A: numa_node=-1 -A: pools=poolinfo - 0.1\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 0 0 128 0\nbuffer-32 0 0 32 0\nxHCI 1KB stream ctx arrays 0 0 1024 0\nxHCI 256 byte stream ctx arrays 0 0 256 0\nxHCI input/output contexts 11 12 2112 12\nxHCI ring segments 46 50 4096 50\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 6 32 128 1\nbuffer-32 0 0 32 0 -A: power/control=on -A: power/runtime_active_time=219589302 -A: power/runtime_status=active -A: power/runtime_suspended_time=0 -A: power/wakeup=enabled -A: power/wakeup_abort_count=0 -A: power/wakeup_active=0 -A: power/wakeup_active_count=0 -A: power/wakeup_count=0 -A: power/wakeup_expire_count=0 -A: power/wakeup_last_time_ms=0 -A: power/wakeup_max_time_ms=0 -A: power/wakeup_total_time_ms=0 -A: power_state=D0 -A: resource=0x00000000ea220000 0x00000000ea22ffff 0x0000000000140204\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000 -A: revision=0x11 -A: subsystem_device=0x2292 -A: subsystem_vendor=0x17aa -A: vendor=0x8086 +A: irq=128\n +A: local_cpulist=0-7\n +A: local_cpus=ff\n +A: modalias=pci:v00008086d00009DEDsv000017AAsd00002292bc0Csc03i30\n +A: msi_bus=1\n +A: msi_irqs/128=msi\n +A: numa_node=-1\n +A: pools=poolinfo - 0.1\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 0 0 128 0\nbuffer-32 0 0 32 0\nxHCI 1KB stream ctx arrays 0 0 1024 0\nxHCI 256 byte stream ctx arrays 0 0 256 0\nxHCI input/output contexts 11 12 2112 12\nxHCI ring segments 46 50 4096 50\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 6 32 128 1\nbuffer-32 0 0 32 0\n +A: power/control=on\n +A: power/runtime_active_time=219589302\n +A: power/runtime_status=active\n +A: power/runtime_suspended_time=0\n +A: power/wakeup=enabled\n +A: power/wakeup_abort_count=0\n +A: power/wakeup_active=0\n +A: power/wakeup_active_count=0\n +A: power/wakeup_count=0\n +A: power/wakeup_expire_count=0\n +A: power/wakeup_last_time_ms=0\n +A: power/wakeup_max_time_ms=0\n +A: power/wakeup_total_time_ms=0\n +A: power_state=D0\n +A: resource=0x00000000ea220000 0x00000000ea22ffff 0x0000000000140204\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n0x0000000000000000 0x0000000000000000 0x0000000000000000\n +A: revision=0x11\n +A: subsystem_device=0x2292\n +A: subsystem_vendor=0x17aa\n +A: vendor=0x8086\n From 17ff49f85cb29b2545c5cc193f84a2931dc203d4 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Mon, 25 Oct 2021 18:38:38 +0200 Subject: [PATCH 4/8] goodixmoc: Fix template struct for required length calculation The length is only a single byte in the transfer. However, the struct had a uint32_t in that place, breaking the sizeof() calculation and seemingly creating issues for certain lengths of user id strings (which depend on the username). Fix this by changing the type to uint8_t. Also add the initial 0x43 prefix byte and a byte of apparent padding that the struct contains. Leave the two reserved bytes at the end, as they seem to actually have a meaning (i.e. they are seemingly send in listings). This effectively makes the struct one byte smaller, bringing it down to 127 bytes from 128 bytes. Closes: #428, #404 --- libfprint/drivers/goodixmoc/goodix_proto.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/libfprint/drivers/goodixmoc/goodix_proto.h b/libfprint/drivers/goodixmoc/goodix_proto.h index bcd1cdd0..000be2fe 100644 --- a/libfprint/drivers/goodixmoc/goodix_proto.h +++ b/libfprint/drivers/goodixmoc/goodix_proto.h @@ -113,14 +113,16 @@ typedef struct _gxfp_enroll_init #pragma pack(push, 1) typedef struct _template_format { + uint8_t _0x43_byte; uint8_t type; uint8_t finger_index; + uint8_t pad0; uint8_t accountid[32]; uint8_t tid[32]; struct { - uint32_t size; - uint8_t data[56]; + uint8_t size; + uint8_t data[56]; } payload; uint8_t reserve[2]; } template_format_t, *ptemplate_format_t; From 01b0f7aba0f9389b3bedadd0fe463971b7ad6b4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= Date: Thu, 28 Oct 2021 16:39:35 +0200 Subject: [PATCH 5/8] doc: Include missing types (SPI) and functions to the Drivers API --- doc/libfprint-2-sections.txt | 18 ++++++++++++++++++ doc/libfprint-docs.xml | 3 ++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/doc/libfprint-2-sections.txt b/doc/libfprint-2-sections.txt index 33189854..d355ba88 100644 --- a/doc/libfprint-2-sections.txt +++ b/doc/libfprint-2-sections.txt @@ -179,6 +179,7 @@ fpi_device_enroll_complete fpi_device_verify_complete fpi_device_identify_complete fpi_device_capture_complete +fpi_device_clear_storage_complete fpi_device_delete_complete fpi_device_list_complete fpi_device_suspend_complete @@ -286,3 +287,20 @@ FPI_TYPE_USB_TRANSFER fpi_usb_transfer_get_type +
+fpi-spi-transfer +FpiSpiTransferCallback +FpiSpiTransfer +fpi_spi_transfer_new +fpi_spi_transfer_ref +fpi_spi_transfer_unref +fpi_spi_transfer_write +fpi_spi_transfer_write_full +fpi_spi_transfer_read +fpi_spi_transfer_read_full +fpi_spi_transfer_submit +fpi_spi_transfer_submit_sync + +FPI_TYPE_SPI_TRANSFER +fpi_spi_transfer_get_type +
diff --git a/doc/libfprint-docs.xml b/doc/libfprint-docs.xml index b866aab0..0a57efb4 100644 --- a/doc/libfprint-docs.xml +++ b/doc/libfprint-docs.xml @@ -41,7 +41,8 @@ - USB and State Machine helpers + USB, SPI and State Machine helpers + From 378fae0ea2105058a78bb0960549ef301a8690ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= Date: Thu, 28 Oct 2021 16:56:11 +0200 Subject: [PATCH 6/8] doc: Add missing Drivers API SSM functions --- doc/libfprint-2-sections.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/doc/libfprint-2-sections.txt b/doc/libfprint-2-sections.txt index d355ba88..91258b62 100644 --- a/doc/libfprint-2-sections.txt +++ b/doc/libfprint-2-sections.txt @@ -260,7 +260,10 @@ fpi_ssm_get_device fpi_ssm_get_error fpi_ssm_dup_error fpi_ssm_get_cur_state +fpi_ssm_spi_transfer_cb +fpi_ssm_spi_transfer_with_weak_pointer_cb fpi_ssm_usb_transfer_cb +fpi_ssm_usb_transfer_with_weak_pointer_cb FpiSsm From 2cfff27729e9faa12e1e5de3788b431adeb3e7c3 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Tue, 2 Nov 2021 16:27:33 +0100 Subject: [PATCH 7/8] udev-hwdb: Update unsupported device list --- data/autosuspend.hwdb | 1 + libfprint/fprint-list-udev-hwdb.c | 1 + 2 files changed, 2 insertions(+) diff --git a/data/autosuspend.hwdb b/data/autosuspend.hwdb index 42d22ca7..cbc6109f 100644 --- a/data/autosuspend.hwdb +++ b/data/autosuspend.hwdb @@ -286,6 +286,7 @@ usb:v0A5Cp5842* usb:v0A5Cp5843* usb:v0A5Cp5844* usb:v0A5Cp5845* +usb:v0BDAp5812* usb:v10A5p0007* usb:v1188p9545* usb:v138Ap0007* diff --git a/libfprint/fprint-list-udev-hwdb.c b/libfprint/fprint-list-udev-hwdb.c index d271752a..f5674574 100644 --- a/libfprint/fprint-list-udev-hwdb.c +++ b/libfprint/fprint-list-udev-hwdb.c @@ -60,6 +60,7 @@ static const FpIdEntry whitelist_id_table[] = { { .vid = 0x0a5c, .pid = 0x5843 }, { .vid = 0x0a5c, .pid = 0x5844 }, { .vid = 0x0a5c, .pid = 0x5845 }, + { .vid = 0x0bda, .pid = 0x5812 }, { .vid = 0x10a5, .pid = 0x0007 }, { .vid = 0x1188, .pid = 0x9545 }, { .vid = 0x138a, .pid = 0x0007 }, From 5e4bb268012f4051fc72578e6a1866c729cd8a2f Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Tue, 2 Nov 2021 16:20:32 +0100 Subject: [PATCH 8/8] Release 1.94.2 --- NEWS | 7 +++++++ meson.build | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index cf96ff33..eacd99c9 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,13 @@ This file lists notable changes in each release. For the full history of all changes, see ChangeLog. +2021-11-02: v1.94.2 release + +Highlights: + * goodixmoc: Fix protocol error with certain username lengths + * elanmoc: New PID 0x0c7d + * goodixmoc: New PID 0x63cc + 2021-09-24: v1.94.1 release Highlights: diff --git a/meson.build b/meson.build index 795f313c..f2750519 100644 --- a/meson.build +++ b/meson.build @@ -1,5 +1,5 @@ project('libfprint', [ 'c', 'cpp' ], - version: '1.94.1', + version: '1.94.2', license: 'LGPLv2.1+', default_options: [ 'buildtype=debugoptimized',