From: hermanlin Date: Thu, 30 Jun 2022 15:52:46 +0800 Subject: elanmoc: Make sure sensor in the right mode at identity Signed-off-by: hermanlin --- libfprint/drivers/elanmoc/elanmoc.c | 8 +++ tests/elanmoc/custom.pcapng | Bin 19368 -> 17540 bytes tests/elanmoc/device | 136 +++++++++++++++++++----------------- 3 files changed, 80 insertions(+), 64 deletions(-) diff --git a/libfprint/drivers/elanmoc/elanmoc.c b/libfprint/drivers/elanmoc/elanmoc.c index ad23e93..5bcfce2 100644 --- a/libfprint/drivers/elanmoc/elanmoc.c +++ b/libfprint/drivers/elanmoc/elanmoc.c @@ -759,6 +759,7 @@ identify_status_report (FpiDeviceElanmoc *self, int verify_status_id, } enum identify_states { + IDENTIFY_SET_MODE, IDENTIFY_WAIT_FINGER, IDENTIFY_NUM_STATES, }; @@ -794,6 +795,13 @@ elan_identify_run_state (FpiSsm *ssm, FpDevice *dev) fp_info ("elanmoc %s ", __func__); switch (fpi_ssm_get_cur_state (ssm)) { + case IDENTIFY_SET_MODE: + fp_info ("elanmoc %s IDENTIFY_SET_MODE", __func__); + cmd_buf = elanmoc_compose_cmd (&elanmoc_set_mod_cmd); + cmd_buf[3] = 0x03; + elanmoc_get_cmd (dev, cmd_buf, elanmoc_set_mod_cmd.cmd_len, elanmoc_set_mod_cmd.resp_len, 0, elanmoc_cmd_ack_cb); + break; + case IDENTIFY_WAIT_FINGER: fp_info ("elanmoc %s VERIFY_WAIT_FINGER", __func__); cmd_buf = elanmoc_compose_cmd (&elanmoc_verify_cmd); diff --git a/tests/elanmoc/custom.pcapng b/tests/elanmoc/custom.pcapng index a41ac16..c839c37 100644 --- a/tests/elanmoc/custom.pcapng +++ b/tests/elanmoc/custom.pcapng @@ -1,145 +1,4 @@ -M<+6Intel(R) Core(TM) i3-8145U CPU @ 2.10GHz (with SSE4.2)Linux 5.4.0-42-generic:Dumpcap (Wireshark) 3.2.3 (Git v3.2.3 packaged as 3.2.3-1)H@usbmon1  Linux 5.4.0-42-genericH`%s@@-+S -<a< `t%sRR-+C --a @~ t`%=s@@-+S<a `t%sRR-+C-a, @*MPt`%s@@-+S<aF `t%{sRR-+C-a  t`%s@@-+S<a `d%sDD-+C-a! d`%s@@-+Sa& #``%|s@@-+C->a `d%sBB,C-a4  d`%s@@,S-<a9 ``%cs@@-+S<a~^`d%dsDD-+C-a^d`%벨s@@s+Sak#``%s@@s+C->a``%s@@s+S<a`d%3sBBs+C-ad`%Vs@@s+S<a֭`d%csDDs+C-ad`%s@@s+S<a`t%usRRs+C-a@eSt`%s@@s+S<a`t%sRRs+C-a @kt`%s@@p+Saw #``%%s@@p+C->aY``%#<t@@~+Sa##``%5<t@@~+C->a5``%H:t@@~+S<ae`d%i:tDD~+C-a)ed`%u:t@@~+Sa5e#``%:t@@~+C->a?e``%%t@@~+S<a`P@@`t%)&tRR~+C-aP@~ t`%I&t@@~+Sa Q#``%c&t@@~+C->a#Q``%.t@@q+S<a\Y`d%.tDDq+C-aYd`%.t@@,SaY#``%,/t@@,C->aY``%gt@@s+S -<aܑ`t%gtRRs+C --a@~ t`%gt@@s+S -<aSS`%hts+C --aSS S2  !"@@@@@@@@`%[kt@@s+S -a ``%kt@@s+C -->ad`d%ltCCs+S --a@d`%lt@@s+C -->a``%dnt@@z+S --<a$`d%ntBBz+C --aq@dd%otDD@r+S --a@d`%ot@@@r+C -->a``%pt@@y+S --<a`d%NqtBBy+C --a@dd%8rtBB|+S --a@d`%crt@@|+C -->a#``%\st@@@u+S --<a`d%stBB@u+C --abdd%ttBB@~+S --aX d`%tt@@@~+C -->a``%ut@@@~+S --<a?`d%utDD@~+C --aOOdd%5vtCC@u+S --a@d`%Uvt@@@u+C -->a``%vt@@|+S --<ak`d%vtBB|+C --a@dd%tCCy+S --a@d`%,t@@y+C -->a``%t@@@r+S --<ah`d%tBB@r+C --a@d%Rtz+S --abb@"FP1-00000000-0-00000000-nobody`%'t@@z+C -->ab``%ԅt@@@,S --<a`d%tBB@,C --aְ@dh%~tGG@,S --a>@ h`%t@@@,C -->af``%t@@@,S --<a`d%)tBB@,C --a<@dh%M)tGG@,S --a?@ h`%)t@@@,C -->a?``%)t@@@~+S --<a2A`d%Cb5tBB@~+C --aC@dh%e5tGG@~+S --a@ h`%Ie5t@@@~+C -->aI``%0f5t@@~+S --<a0`d%BtBB~+C --aw@dh%nBtGG~+S --a.@ h`%Bt@@~+C -->an``%Bt@@~+S --<a`d%5;NtBB~+C --a\ @dh%=NtGG~+S --a_ @ h`%&>Nt@@~+C -->a_ ``%?Nt@@~+S --<a` `d% YtBB~+C --au@dh%YtGG~+S --a#@ h`%Yt@@~+C -->aa``%Yt@@~+S --<aF`d% ctBB~+C --a@dh%ctGG~+S --aح@ h`%ct@@~+C -->a)``%ct@@~+S --<a`d%ltBB~+C --aO @dh%ltGG@~+S --aVR @ h`%Ult@@@~+C -->aR ``%lt@@~+S --<a]S `d%^:wtBB~+C --a^@dh%a#``%>wt@@~+S --<a`d%dւtBB~+C --a$@d%قt~+S --a@FP1-00000000-0-00000000-nobody`%Ct@@~+C -->a|\``%Dt@@@-+S --<a]`d%DtBB@-+C --a\@dd%SGtCC-+S --a`@d`%Gt@@-+C -->a[```%Ht@@-+S --<ala`d%HtBB-+C --aa@dd%ItCC@-+S --abC!d`%Jt@@@-+C -->ab``%Jt@@-+S --<aca`%Kt-+C --axdGGCFP1-00000000-0-00000000-nobodyd%;MtCC@-+S --aeC!d`%}Mt@@@-+C -->a=f``%LNt@@-+S --<a ga`%Ot-+C --agGGCd%OtCC-+S --ahC!d`%.Pt@@-+C -->ah``%Pt@@-+S --<aia`%Qt-+C --ajGGCd%RtCC-+S --aikC!d`%Rt@@-+C -->ak``%St@@-+S --<ala`%`Tt-+C --a mGGCd%!UtCC-+S --amC!d`%MUt@@-+C -->a n``%Ut@@@-+S --<ana`%Vt@-+C --aRoGGCd%]WtCC-+S --apC!d`%Wt@@-+C -->aKp``%GXt@@@-+S --<aqa`%Yt@-+C --aqGGCd%YtCC-+S --arC!d`%)Zt@@-+C -->ar``%Zt@@-+S --<asa`%[t-+C --atGGCd%\tCC@-+S --aLuC!d`%\t@@@-+C -->au``%]t@@-+S --<aWva`%N^t-+C --awGGCd%'_tCC@-+S --awC!d`%T_t@@@-+C -->ax``%`t@@-+S --<axa`%`t-+C --avyGGCd%atCC-+S --aDzC! d`%at@@-+C -->asz``%ibt@@-+S --<a){a`% ct-+C --a{GGCh%wgtEE-+S --a7@sh`%gt@@-+C -->af``%Rht@@-+S --<a`d%ѩtBB-+C --aQ@dd%AtCC@-+S --aC!d`%t@@@-+C -->a``%t@@-+S --<aa`%+t-+C --aGGCFP1-00000000-0-00000000-nobodyh%!tEE@-+S --a@sh`%K!t@@@-+C -->a``%5"t@@-+S --<a`d%+xtBB-+C --ak @dd%ytCC-+S --a C!d`%yt@@-+C -->a``%zt@@@-+S --<a=a`%{t@-+C --aGGCFP1-00000000-0-00000000-nobody%5t-+S --au@FP1-00000000-0-00000000-nobody`%Ft@@-+C -->a``%=t@@@-+S --<a}`d%tBB@-+C --aK @dd%}tCC-+S --a}N @d`%t@@-+C -->aN `l%YuCounters provided by dumpcap%Ls%Uul \ No newline at end of file +M<+6Intel(R) Core(TM) i5-4210M CPU @ 2.60GHz (with SSE4.2)Linux 5.15.0-39-generic:Dumpcap (Wireshark) 3.6.2 (Git v3.6.2 packaged as 3.6.2-2)H@usbmon1  Linux 5.15.0-39-genericH`_!@@@~S<,Ob`t_!RR@~C-,Ob t`_!@@@~S<,Ob  `lp_!II@~C-,Obp  S2l`_!@@@~S<,ObSS`_!@~C-,ObSS S2  !"@@@@@@@@`ؓp!@@@”>S<.ObX`tp!RR@”>C-.Ob t`p!@@@”>S<.ObbSS`Jp!@”>C-.ObSS S2  !"@@@@@@@@`p!@@@”>S.Obd ``:p!@@@”>C->.Ob`dp!CC@”>S-.Ob,@d`p!@@@”>C->.Obo``-p!@@a>S-<.Ob`dp!BBa>C-.Ob@dd:p!DDa>S-.Ob@d`ip!@@a>C->.Ob``p!@@a>S-<.Obi`dRp!BBa>C-.Ob@dd̠p!BBa>S-.ObL@d`p!@@a>C->.Obw``hp!@@a>S-<.Ob`dp!BBa>C-.Ob.dd'p!BBa>S-.Ob d`Qp!@@a>C->.Ob``p!@@a>S-<.Ob7`dp!DDa>C-.ObWkddzp!CCa>S-.Ob@d`p!@@a>C->.Ob$``p!@@a>S-<.Obx`d:p!BBa>C-.Ob@dd.p!CCa>S-.Ob@d`fp!@@a>C->.Ob``֬p!@@a>S-<.ObV`dp!BBa>C-.Ob@dhp!a>S-.Obbb@"FP1-00000000-0-00000000-nobody`p!@@a>C->.Obb``gp!@@a>S-<.Ob`dp!BBa>C-.Ob%@dhp!GGa>S-.Ob@ h`.p!@@a>C->.Ob``p!@@a>S-<.Ob`d!BBa>C-/Obע@dhȎ!GG@?S-/Ob@ h` !@@@?C->/ObL``ԏ!@@@?S-/Ob``W!@@@S-0Ob] ``%ߗ!@@@SS-<0Ob% `dܡ!BB@SC-1Obn@dhޡ!GGSS-1Obp@ h`Iߡ!@@SC->1Ob q``!@@SS-<1Obq`dbV!BBSC-1Ob" @dhX!GGSS-1ObC @ h`X!@@SC->1Ob ``Y!@@SS-<1Ob `d_!BBSC-2Ob{@dha!GG@SS-2ObV@ h`b!@@@SC->2Ob``b!@@@SS-<2Obn`d. +!BB@SC-3Obn@dhQ !GGSS-3Ob@ h` !@@SC->3Ob``V !@@ϳS-<3Ob`dY\!BBϳC-3Obi @Cdh^!GG@ųS-3Ob'l @ h`2_!@@@ųC->3Obrl ``_!@@̳S-<3Ob m `d!BB̳C-4ObJ@dh!GG@γS-4ObK@ h`3!@@@γC->4Ob3L``ށ!@@@˳S-<4ObL`dmQ!BB@˳C-4Obm@DdhS!GG@³S-4Ob@ h` T!@@@³C->4Ob `` U!@@ͳS-<4Ob `dl!BBͳC-5Ob, @dn!@SS-5Ob. @FP1-00000000-0-00000000-nobody`_!@@@SC->5Ob3 ``!@@@SS-<5ObU4 `ds!BB@SC-6Ob @ddu!CCSS-6Ob~ @d`Av!@@SC->6Ob ``v!@@ͳS-<6ObW `d!BBͳC-6Ob#c @dd!CCS-6Ob d C!d`!@@C->6Ob;d ``2!@@ijS-<6Obd a`!ijC-6Oble GGCFP1-00000000-0-00000000-nobodyd!CCijS-6Obgf C!d` !@@ijC->6Obf `` !@@S-<6Obg a`Q!!C-6Obg GGCd"!CCͳS-6Obh C!d`*"!@@ͳC->6Obh ``"!@@@³S-<6Obi a`7#!@³C-6Obi GGCd#!CC@˳S-6Ob1j C!d`#!@@@˳C->6Ob[j ``B$!@@@γS-<6Obj a`$!@γC-6Ob\k GGCdI%!CC̳S-6Obk C!d`q%!@@̳C->6Obk ``%!@@@ųS-<6Ob\l a`v&!@ųC-6Obl GGCd&!CCϳS-6Obgm C!d`'!@@ϳC->6Obm ``'!@@óS-<6Obn a`R(!óC-6Obn GGCd(!CC@ȳS-6ObBo C!d`(!@@@ȳC->6Obko ``W)!@@@ȳS-<6Obo a`)!@ȳC-6Obrp GGCdc*!CCóS-6Obp C!d`*!@@óC->6Obq ``*!@@ϳS-<6Ob|q a`,!ϳC-6Ob!s GGCd-!CC@ųS-6Obs C!d`:-!@@@ųC->6Obs ``-!@@̳S-<6Ob-t a`0!̳C-6Obv GGCd0!CC@γS-6Ob/w C! d`0!@@@γC->6Ob\w ``V1!@@@˳S-<6Obw a`2!@˳C-6Ob/y GGCd7!DD@³S-6Ob} @d`D7!@@@³C->6Ob} ``7!@@ͳS-<6ObH~ `d+8!BBͳC-6Ob~ @dh8!EES-6Ob, @sh`8!@@C->6ObX ``<9!@@ijS-<6Ob `d8?!BBijC-7ObxC@ddP@!CCijS-7ObDC!d`@!@@ijC->7ObD``A!@@S-<7ObNEa`A!C-7ObFGGCFP1-00000000-0-00000000-nobodydfI!DDͳS-7ObM@d`I!@@ͳC->7ObM``VJ!@@@³S-<7ObN`dJ!BB@³C-7ObN@dh7ObO`` L!@@@γS-<7ObMP`d!"BB@γC-9Obe @dd !"CC̳S-9Ob C!d`!!"@@̳C->9Ob ``!!"@@@ųS-<9ObL a`H"!"@ųC-9Ob GGCFP1-00000000-0-00000000-nobody*!"ϳS-9ObC @FP1-00000000-0-00000000-nobody`+!"@@ϳC->9ObF ``-,!"@@óS-<9Ob `d'"BBóC-:Ob<@dd!'"CC@ȳS-:Ob@d`i'"@@@ȳC->:Ob` \ No newline at end of file diff --git a/tests/elanmoc/device b/tests/elanmoc/device index ef3400d..34751f2 100644 --- a/tests/elanmoc/device +++ b/tests/elanmoc/device @@ -1,63 +1,67 @@ -P: /devices/pci0000:00/0000:00:14.0/usb1/1-1 -N: bus/usb/001/010=1201000200000040F3047E0C05030102000109025300010103A0320904000008FF0000000921100100012215000705810240000107050102400001070582024000010705020240000107058302400001070503024000010705840240000107050402400001 -E: DEVNAME=/dev/bus/usb/001/010 +P: /devices/pci0000:00/0000:00:14.0/usb1/1-9 +N: bus/usb/001/003=1201000200000008F304880C04800102000109025300010100A0320904000008FF0000000921100100012215000705810240000107050102400001070582024000010705020240000107058302400001070503024000010705840240000107050402400001 +E: DEVNAME=/dev/bus/usb/001/003 E: DEVTYPE=usb_device E: DRIVER=usb -E: PRODUCT=4f3/c7e/305 +E: PRODUCT=4f3/c88/8004 E: TYPE=0/0/0 E: BUSNUM=001 -E: DEVNUM=010 +E: DEVNUM=003 E: MAJOR=189 -E: MINOR=9 +E: MINOR=2 E: SUBSYSTEM=usb E: ID_VENDOR=ELAN E: ID_VENDOR_ENC=ELAN E: ID_VENDOR_ID=04f3 E: ID_MODEL=ELAN:ARM-M4 E: ID_MODEL_ENC=ELAN:ARM-M4 -E: ID_MODEL_ID=0c7e -E: ID_REVISION=0305 +E: ID_MODEL_ID=0c88 +E: ID_REVISION=8004 E: ID_SERIAL=ELAN_ELAN:ARM-M4 E: ID_BUS=usb 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 +E: ID_PATH=pci-0000:00:14.0-usb-0:9 +E: ID_PATH_TAG=pci-0000_00_14_0-usb-0_9 +E: ID_FOR_SEAT=usb-pci-0000_00_14_0-usb-0_9 +E: TAGS=:seat: +E: CURRENT_TAGS=:seat: 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: bMaxPacketSize0=8\n A: bMaxPower=100mA\n A: bNumConfigurations=1\n A: bNumInterfaces= 1\n -A: bcdDevice=0305\n +A: bcdDevice=8004\n A: bmAttributes=a0\n A: busnum=1\n -A: configuration=add909c9-e67e-4126-a6f7-1e31179e27d9\n -H: descriptors=1201000200000040F3047E0C05030102000109025300010103A0320904000008FF0000000921100100012215000705810240000107050102400001070582024000010705020240000107058302400001070503024000010705840240000107050402400001 -A: dev=189:9\n -A: devnum=10\n -A: devpath=1\n +A: configuration= +H: descriptors=1201000200000008F304880C04800102000109025300010100A0320904000008FF0000000921100100012215000705810240000107050102400001070582024000010705020240000107058302400001070503024000010705840240000107050402400001 +A: dev=189:2\n +A: devnum=3\n +A: devpath=9\n L: driver=../../../../../bus/usb/drivers/usb -A: idProduct=0c7e\n +L: firmware_node=../../../../LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:3d/device:3e/device:47 +A: idProduct=0c88\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\n +L: port=../1-0:1.0/usb1-port9 +A: power/active_duration=35269124\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/connected_duration=35283788\n A: power/control=on\n A: power/level=on\n -A: power/persist=1\n +A: power/persist=0\n A: power/runtime_active_kids=0\n -A: power/runtime_active_time=94436\n +A: power/runtime_active_time=35276624\n A: power/runtime_enabled=forbidden\n A: power/runtime_status=active\n A: power/runtime_suspended_time=0\n @@ -77,38 +81,40 @@ A: removable=removable\n A: rx_lanes=1\n A: speed=12\n A: tx_lanes=1\n -A: urbnum=12\n +A: urbnum=2773\n A: version= 2.00\n P: /devices/pci0000:00/0000:00:14.0/usb1 -N: bus/usb/001/001=12010002090001406B1D020004050302010109021900010100E0000904000001090000000705810304000C +N: bus/usb/001/001=12010002090001406B1D020015050302010109021900010100E0000904000001090000000705810304000C E: DEVNAME=/dev/bus/usb/001/001 E: DEVTYPE=usb_device E: DRIVER=usb -E: PRODUCT=1d6b/2/504 +E: PRODUCT=1d6b/2/515 E: TYPE=9/0/1 E: BUSNUM=001 E: DEVNUM=001 E: MAJOR=189 E: MINOR=0 E: SUBSYSTEM=usb -E: ID_VENDOR=Linux_5.4.0-42-generic_xhci-hcd -E: ID_VENDOR_ENC=Linux\x205.4.0-42-generic\x20xhci-hcd +E: ID_VENDOR=Linux_5.15.0-39-generic_xhci-hcd +E: ID_VENDOR_ENC=Linux\x205.15.0-39-generic\x20xhci-hcd E: ID_VENDOR_ID=1d6b E: ID_MODEL=xHCI_Host_Controller E: ID_MODEL_ENC=xHCI\x20Host\x20Controller E: ID_MODEL_ID=0002 -E: ID_REVISION=0504 -E: ID_SERIAL=Linux_5.4.0-42-generic_xhci-hcd_xHCI_Host_Controller_0000:00:14.0 +E: ID_REVISION=0515 +E: ID_SERIAL=Linux_5.15.0-39-generic_xhci-hcd_xHCI_Host_Controller_0000:00:14.0 E: ID_SERIAL_SHORT=0000:00:14.0 E: ID_BUS=usb E: ID_USB_INTERFACES=:090000: E: ID_VENDOR_FROM_DATABASE=Linux Foundation +E: ID_AUTOSUSPEND=1 E: ID_MODEL_FROM_DATABASE=2.0 root hub 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: +E: CURRENT_TAGS=:seat: A: authorized=1\n A: authorized_default=1\n A: avoid_reset_quirk=0\n @@ -120,30 +126,31 @@ A: bMaxPacketSize0=64\n A: bMaxPower=0mA\n A: bNumConfigurations=1\n A: bNumInterfaces= 1\n -A: bcdDevice=0504\n +A: bcdDevice=0515\n A: bmAttributes=e0\n A: busnum=1\n -A: configuration=\n -H: descriptors=12010002090001406B1D020004050302010109021900010100E0000904000001090000000705810304000C +A: configuration= +H: descriptors=12010002090001406B1D020015050302010109021900010100E0000904000001090000000705810304000C 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:3d/device:3e 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: manufacturer=Linux 5.15.0-39-generic xhci-hcd\n +A: maxchild=14\n +A: power/active_duration=35270364\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/connected_duration=35284300\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_active_kids=2\n +A: power/runtime_active_time=35277420\n A: power/runtime_enabled=enabled\n A: power/runtime_status=active\n A: power/runtime_suspended_time=0\n @@ -164,62 +171,63 @@ 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: urbnum=549\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=103C:85EF +E: PCI_ID=8086:8C31 +E: PCI_SUBSYS_ID=1043:201F E: PCI_SLOT_NAME=0000:00:14.0 -E: MODALIAS=pci:v00008086d00009DEDsv0000103Csd000085EFbc0Csc03i30 +E: MODALIAS=pci:v00008086d00008C31sv00001043sd0000201Fbc0Csc03i30 E: SUBSYSTEM=pci E: ID_PCI_CLASS_FROM_DATABASE=Serial bus controller 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 +E: ID_MODEL_FROM_DATABASE=8 Series/C220 Series Chipset Family USB xHCI A: ari_enabled=0\n A: broken_parity_status=0\n A: class=0x0c0330\n -H: config=8680ED9D060490023030030C00008000040030A10000000000000000000000000000000000000000000000003C10EF85000000007000000000000000FF010000FD0134808FC6FF8300000000000000007F6DDC0F00000000181C030400000000316000000000000000000000000000000180C2C1080000000000000000000000059087007802E0FE0000000000000000090014F01000400100000000C10A080000080E00001800008F40020000010000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000B50F300112000000 +H: config=8680318C060490020530030C000000000400A0F700000000000000000000000000000000000000000000000043101F200000000070000000000000000B010000FD01368089C60F8000000000000000009F6E8807000000000000000000000000302000000000000000000000000000000180C2C1080000000000000000000000050087000410E0FE000000002F00000000000000000000000000000000000000400100000000000000000000000000000F000100000000000000000000000000030420C0030C3000030C300000000000FF1A0000FF1A00003F0000003F000000A00000000000000000000000D8D8D8080000000000000000B10F060800000000 A: consistent_dma_mask_bits=64\n A: d3cold_allowed=1\n -A: dbc=disabled\n -A: device=0x9ded\n +A: device=0x8c31\n A: dma_mask_bits=64\n L: driver=../../../bus/pci/drivers/xhci_hcd A: driver_override=(null)\n A: enable=1\n -A: irq=124\n +L: firmware_node=../../LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:3d +A: irq=31\n A: local_cpulist=0-3\n A: local_cpus=f\n -A: modalias=pci:v00008086d00009DEDsv0000103Csd000085EFbc0Csc03i30\n +A: modalias=pci:v00008086d00008C31sv00001043sd0000201Fbc0Csc03i30\n A: msi_bus=1\n -A: msi_irqs/124=msi\n +A: msi_irqs/31=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: 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 5 6 2112 6\nxHCI ring segments 24 24 4096 24\nbuffer-2048 0 0 2048 0\nbuffer-512 0 0 512 0\nbuffer-128 3 32 128 1\nbuffer-32 0 0 32 0\n A: power/async=enabled\n -A: power/control=auto\n +A: power/control=on\n A: power/runtime_active_kids=1\n -A: power/runtime_active_time=74606194\n -A: power/runtime_enabled=enabled\n +A: power/runtime_active_time=35278060\n +A: power/runtime_enabled=forbidden\n A: power/runtime_status=active\n A: power/runtime_suspended_time=0\n -A: power/runtime_usage=0\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_active_count=5\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: power/wakeup_expire_count=5\n +A: power/wakeup_last_time_ms=12694896\n +A: power/wakeup_max_time_ms=103\n +A: power/wakeup_total_time_ms=518\n +A: power_state=D0\n +A: resource=0x00000000f7a00000 0x00000000f7a0ffff 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=0x05\n +A: subsystem_device=0x201f\n +A: subsystem_vendor=0x1043\n A: vendor=0x8086\n