From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f51.google.com ([209.85.128.51]) by ewsd; Sun Apr 12 01:02:30 EDT 2020 Received: by mail-wm1-f51.google.com with SMTP id z6so6845484wml.2 for <9front@9front.org>; Sat, 11 Apr 2020 22:02:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=message-id:to:subject:date:from:mime-version; bh=LFBlAZ9QUHNufa18noau8CsquPaSa8YtIYjwRg55qJ4=; b=UDcKyX7ahSVGhiH6GOE26RSa1DCVzq2QrXO7QxnNBCPre23Xkc5c4HQwx62aRZKK52 OEJ4CtfKoZd3LetVkwd37GXn/vPw5zNQVh8hEs87WLVFHK6c4dsztb+SJVZNMBhe+x7f WcI56fey4aOq3b9GJ7GQlgvg0WnFhhIghwaxX5nvaaezI1YO5c38DVVYWQPnDFQ29DtX 5vvz6rmNozv2hvcTPnMd+oCA+o/hICtHAzye84ZsDgLc3CjZqZdaErF34ZFBe8w6Phno iDWnV9ODmzsvbyDLKAjKjUlhtntJUo1PO3K963ivNEGks6vXeDqpVl5njT5OSaefSBYd MUsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:to:subject:date:from:mime-version; bh=LFBlAZ9QUHNufa18noau8CsquPaSa8YtIYjwRg55qJ4=; b=joGkMhMUmOY65vANAcP0SEEv8cr3RFgfiG3htNQ7CFGpiG5fSWz/VdMP7MfjE5pF8P acw/54knCZBhbCCuOu+NXM5YJHqoWY3NAVa4GXMDf7Zf3bjPsxl6JCOexxCjUZ5SfQFd Ixn8Uhc3/FJh6ceXYvFHrIZSUor9lSdetJfeSJ0eA/qGkT+FBEjWAjTFdDGq3X72ntGo Tm40p0pajrNg+YPVtkenKCuUNZipcPcfy8L/3jzewYV2KsLyvFUKfsszJlJoYvvjYJsw 7NkwUYsX0XpfCyXZpIhQ9H2NM1lcT5V+WCfoc8L8BVrMja5CIyl22rMIzq0VA8h7YZ7c S43g== X-Gm-Message-State: AGi0PuZPXX24JzothfjkiHDkW6kTlTJIWLr6DYIcJceYq+6WJycE+4cK gPVIS2Hr0kNf/Ouf79C3IS5vMWS0vt0= X-Google-Smtp-Source: APiQypIfxIQPDLRgx/9uL7KnePEqw0+ZqUlCOkOrLeOOLCeSSAXWCvFlhIcIUW1TH4j3L6eloT4rDQ== X-Received: by 2002:a7b:cb86:: with SMTP id m6mr11928852wmi.64.1586667744308; Sat, 11 Apr 2020 22:02:24 -0700 (PDT) Return-Path: Received: from plan9 ([85.203.199.234]) by smtp.gmail.com with ESMTPSA id d7sm9421721wrr.77.2020.04.11.22.02.23 for <9front@9front.org> (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Sat, 11 Apr 2020 22:02:23 -0700 (PDT) Message-ID: <5D36DC851D0AB007C82A64085021EB1E@gmail.com> To: 9front@9front.org Subject: [9front] nusb/kb: add support for my mouse Date: Sun, 12 Apr 2020 07:02:03 +0200 From: petermikkelsen10@gmail.com MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="upas-mtzfspocpmyrzahfrwqcxkmfwf" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: lifecycle-scale API scripting framework hypervisor This is a multi-part message in MIME format. --upas-mtzfspocpmyrzahfrwqcxkmfwf Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Hello, I have recently installed 9front on my laptop and only some USB mice seems to work. After a bit of investigation it turned out that my issues were with the kind of mice that presented part of them as a pointing device, and part of them as a keyboard. I had a look at the USB Hid spec, and it seems like some of the things that nusb/kb does (like setting the idle time) is not always supported by all types of devices, so this patch changes those things. It fixes the problems for me so now I can use my mouse. A sysinfo is attached. (Sorry if I am spamming the list, it doesn't seem like my mails are getting through..) --upas-mtzfspocpmyrzahfrwqcxkmfwf Content-Disposition: attachment; filename=sysinfo Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit % cd '#ec'; for(i in *){echo $i '=' `{cat $i}} *acpi = 0xbddfd014 *bootscreen = 1920x1080x32 x8r8g8b8 0xc0000000 *e820 = 1 0000000000000000 0000000000008000 1 0000000000008000 000000000000c000 1 000000000000c000 000000000009f000 2 000000000009f000 00000000000a0000 2 00000000000e0000 0000000000100000 1 0000000000100000 0000000009c00000 1 0000000009d81000 0000000009f00000 4 0000000009f00000 0000000009f0b000 1 0000000009f0b000 00000000b26c7000 1 00000000b26c7000 00000000b2747000 1 00000000b2747000 00000000b6d1a000 1 00000000b6d1a000 00000000b6dab000 1 00000000b6dab000 00000000b6e6c000 1 00000000b6e6c000 00000000b7045000 1 00000000b7045000 00000000b7080000 1 00000000b7080000 00000000b80a6000 1 00000000b80a6000 00000000b80ad000 1 00000000b80ad000 00000000b814b000 1 00000000b814b000 00000000b816b000 1 00000000b816b000 00000000b9d25000 1 00000000b9d25000 00000000ba29f000 1 00000000ba29f000 00000000ba3ac000 1 00000000ba3ac000 00000000ba3c3000 1 00000000ba3c3000 00000000ba463000 1 00000000ba463000 00000000ba464000 1 00000000ba464000 00000000ba827000 1 00000000ba827000 00000000ba904000 1 00000000ba904000 00000000bc71f000 2 00000000bc71f000 00000000bdc63000 4 00000000bdc63000 00000000bddfa000 3 00000000bddfa000 00000000bddfe000 1 00000000bddfe000 00000000be400000 1 00000000be400000 00000000be562000 1 00000000be562000 00000000be582000 1 00000000be582000 00000000be5db000 1 00000000be5db000 00000000beff3000 1 00000000beff3000 00000000bf000000 1 0000000100000000 00000003ff000000 2 0000000009c00000 0000000009d81000 2 00000000bf000000 00000000c0000000 2 00000000fd200000 00000000fd300000 2 00000000fed80000 00000000fed81000 bootargs = local!/dev/sdN0/fscache bootfile = 9pc64 mouseport = ps2intellimouse nobootprompt = local!/dev/sdN0/fscache nora6 = user = glenda % cat '#'P/archctl cpu unknown 2297 pge pge on coherence mfence cmpswap cmpswap486 arch ACPI cache default uc cache 0x0 2147483648 wb cache 0x80000000 1073741824 wb cache 0xff000000 16777216 wp cache 0xc0000000 67108864 wc % cat '#'P/irqalloc 1 0 debugexc 3 0 debugpt 7 0 mathemu 8 0 doublefault 9 0 mathover 14 0 faultamd64 15 0 unexpected 16 0 matherror 19 0 simderror 50 18 clock 51 19 lapicerror 63 31 lapicspurious 65 -1 ether0 73 1 kbd 81 -1 hda 89 -1 xhci 97 -1 xhci 105 -1 sdE (ahci) 113 -1 sdN (nvme) 121 12 kbdaux % cat '#'P/ioalloc 20 21 i8259.0 40 43 i8253 60 60 i8042.data 61 61 i8253.cntr2c 62 62 ec.data 64 64 i8042.cs 66 66 ec.sc 70 71 rtc/nvr a0 a1 i8259.1 2b0 2df vga 3c0 3da vga fff fff dummy 3000 30ff rtl8169 % cat '#'c/config # pc64 - amd64 pc terminal with local disk dev root cons swap arch pnp pci env pipe proc mnt srv shr dup rtc ssl tls cap kprof fs ether netif bridge netif log ip arp chandial ip ipv6 ipaux iproute netlog ethermedium nullmedium pktmedium inferno draw screen vga vgax vgasoft mouse mouse kbd vga sd # floppy dma aoe # lpt audio dma # pccard # i82365 cis uart usb segment vmx dtracy link # devpccard # devi82365 cputemp # ether2000 ether8390 # ether2114x pci # ether589 etherelnk3 ether79c970 pci # ether8003 ether8390 ether8139 pci ether8169 pci ethermii # should be obsoleted by igbe # ether82543gc pci # ether82557 pci ether82563 pci ether82598 pci etherx550 pci # ether83815 pci etherbcm pci # etherdp83820 pci ethermii # etherec2t ether8390 # etherelnk3 pci # etherga620 pci etherigbe pci ethermii # ethervgbe pci ethermii # ethervt6102 pci ethermii # ethervt6105m pci ethermii ethersink # ethersmc devi82365 cis etheryuk pci # etherwavelan wavelan devi82365 cis pci etheriwl pci wifi etherwpi pci wifi etherrt2860 pci wifi ethervirtio pci ethermedium # pcmciamodem netdevmedium loopbackmedium usbuhci usbohci usbehci usbehcipc usbxhci pci # audiosb16 dma # audioac97 audioac97mix audiohda misc archacpi mp apic squidboy ec archmp mp apic squidboy mtrr sdaoe sdide pci sdscsi sd53c8xx pci sdscsi # sdmylex pci sdscsi sdiahci pci sdscsi led # sdodin pci sdscsi led sdvirtio pci sdscsi sdmmc pci pmmc sdnvme pci sdloop sdram uarti8250 uartisa uartpci pci vgasoft =cur swcursor # vga3dfx +cur # vgaark2000pv +cur # vgabt485 =cur # vgaclgd542x +cur # vgaclgd546x +cur # vgact65545 +cur # vgacyber938x +cur # vgaet4000 +cur # vgageode +cur # vgahiqvideo +cur # vgai81x +cur vgaigfx +cur # vgamach64xx +cur # vgamga2164w +cur # vgamga4xx +cur # vganeomagic +cur # vganvidia +cur vgaradeon +cur # vgargb524 =cur # vgas3 +cur vgasavage # vgat2r4 +cur # vgatvp3020 =cur # vgatvp3026 =cur vgavesa # vgavmware +cur dtracysys dtracytimer ip tcp udp rudp ipifc icmp icmp6 gre ipmux esp il port int cpuserver = 0; bootdir /$objtype/bin/paqfs /$objtype/bin/auth/factotum bootfs.paq boot % cat '#'c/sysstat 0 70778 331337 83126 13914 0 0 17 100 0 1 87250 231691 86034 16441 0 0 0 100 0 2 241201 259804 334629 12558 0 0 0 99 0 3 176973 350639 205734 14285 0 0 0 99 0 4 175115 291931 173059 16596 0 0 0 99 0 5 179056 296742 167995 15342 0 0 0 100 0 6 141181 261097 152399 16459 0 0 0 99 0 7 148902 262831 153966 28443 0 0 0 100 0 % cat '#'¶/swap 16042115072 memory 4096 pagesize 524288 kernel 14594/3280640 user 0/160000 swap 2362/3280640 reclaim 4962408/5244160/2139377280 kernel malloc 28693688/32798464/1925439552 kernel draw 768/65568/16777216 kernel secret % awk /^Plan 9/{p=1} /^init: starting/{exit} {if(p)print} '#'c/kmesg Plan 9 123 holes free 0x0002a000 0x0009f000 479232 0x00100000 0x00110000 65536 0x00505000 0x09c00000 158314496 0x09d81000 0x09f00000 1568768 0x09f0b000 0x7ffff000 1980710912 2141138944 bytes free cpu0: 2297MHz AuthenticAMD unknown (AX 00810F81 CX 76D8320B DX 178BFBFF) amlmapio: [0xffffff18-0x100000018) overlaps usable memory amlmapio: mapping \_SB.FRTP failed LAPIC: fee00000 0xffffff00fee00000 ec: cmd 66, data 62 ELCR: 0000 cpu0: lapic clock at 25MHz cpu1: 2297MHz AuthenticAMD unknown (AX 00810F81 CX 76D8320B DX 178BFBFF) cpu2: 2297MHz AuthenticAMD unknown (AX 00810F81 CX 76D8320B DX 178BFBFF) cpu3: 2297MHz AuthenticAMD unknown (AX 00810F81 CX 76D8320B DX 178BFBFF) cpu4: 2297MHz AuthenticAMD unknown (AX 00810F81 CX 76D8320B DX 178BFBFF) cpu5: 2297MHz AuthenticAMD unknown (AX 00810F81 CX 76D8320B DX 178BFBFF) cpu6: 2297MHz AuthenticAMD unknown (AX 00810F81 CX 76D8320B DX 178BFBFF) cpu7: 2297MHz AuthenticAMD unknown (AX 00810F81 CX 76D8320B DX 178BFBFF) pcienable PCI.0.1.2: pcr 3->7 rtl8169: oui 0x732 phyno 1, macv = 0x50800000 phyv = 0x0000 #l0: rtl8169: 100Mbps port 0x3000 irq 255 ea 98fa9b69b552 #S/sdE: ahci: sata-II with 1 ports pcienable PCI.5.0.6: pcr 0->2 #A0: hda mem ffffff00d06c0000 irq 255 #A0: codec #0, vendor 14f11f86, rev 00100100 usbxhci: 0x1022 0x15e0: port 0xd0300000 size 0x100000 irq 255 usbxhci: 0x1022 0x15e1: port 0xd0400000 size 0x100000 irq 255 15303M memory: 2488M kernel data, 12815M user, 13440M swap pcienable PCI.5.0.4: pcr 0->2 sdE0: LLBA 488,397,168 sectors Samsung SSD 840 EVO 250GB EXT0BB6Q S1DBNSBF928022M [newdrive] current fs is "main" 10 uids read, 3 groups used 63-bit cwfs as of Mon Apr 6 03:51:46 2020 last boot Sun Apr 12 07:51:43 2020 % pci -v 0.0.0: brg 06.00.00 1022/15d0 0 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Root Complex 0.0.2: base 08.06.00 1022/15d1 255 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 IOMMU 0.1.0: brg 06.00.00 1022/1452 0 Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge 0.1.1: brg 06.04.00 1022/15d3 255 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 PCIe GPP Bridge [6:0] 0.1.2: brg 06.04.00 1022/15d3 255 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 PCIe GPP Bridge [6:0] 0.1.3: brg 06.04.00 1022/15d3 255 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 PCIe GPP Bridge [6:0] 0.1.6: brg 06.04.00 1022/15d3 255 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 PCIe GPP Bridge [6:0] 0.8.0: brg 06.00.00 1022/1452 0 Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge 0.8.1: brg 06.04.00 1022/15db 255 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Internal PCIe GPP Bridge 0 to Bus A 0.8.2: brg 06.04.00 1022/15dc 255 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Internal PCIe GPP Bridge 0 to Bus B 0.20.0: smb 0c.05.00 1022/790b 0 Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller 0.20.3: brg 06.01.00 1022/790e 0 Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge 0.24.0: brg 06.00.00 1022/15e8 0 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 0 0.24.1: brg 06.00.00 1022/15e9 0 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 1 0.24.2: brg 06.00.00 1022/15ea 0 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 2 0.24.3: brg 06.00.00 1022/15eb 0 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 3 0.24.4: brg 06.00.00 1022/15ec 0 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 4 0.24.5: brg 06.00.00 1022/15ed 0 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 5 0.24.6: brg 06.00.00 1022/15ee 0 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 6 0.24.7: brg 06.00.00 1022/15ef 0 Advanced Micro Devices, Inc. [AMD] Raven/Raven2 Device 24: Function 7 1.0.0: disk 01.08.02 1c5c/1327 255 0:d0a00004 16384 SK hynix 2.0.0: net 02.00.00 10ec/8168 255 0:00003001 256 2:d0904004 4096 4:d0900004 16384 Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller 3.0.0: --- ff.00.00 10ec/522a 255 Realtek Semiconductor Co., Ltd. RTS522A PCI Express Card Reader 4.0.0: --- ff.00.00 10ec/b822 255 Realtek Semiconductor Co., Ltd. RTL8822BE 802.11a/b/g/n/ac WiFi adapter 5.0.0: vid 03.00.00 1002/15d8 255 0:c000000c 268435456 2:d000000c 2097152 4:00001001 256 5:d0600000 524288 Advanced Micro Devices, Inc. [AMD/ATI] Picasso 5.0.1: aud 04.03.00 1002/15de 255 0:d06c8000 16384 Advanced Micro Devices, Inc. [AMD/ATI] Raven/Raven2/Fenghuang HDMI/DP Audio Controller 5.0.2: cryp 10.80.00 1022/15df 255 2:d0500000 1048576 5:d06cc000 8192 Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor 5.0.3: usb 0c.03.30 1022/15e0 255 0:d0300004 1048576 Advanced Micro Devices, Inc. [AMD] Raven USB 3.1 5.0.4: usb 0c.03.30 1022/15e1 255 0:d0400004 1048576 Advanced Micro Devices, Inc. [AMD] Raven USB 3.1 5.0.5: aud 04.80.00 1022/15e2 255 0:d0680000 262144 Advanced Micro Devices, Inc. [AMD] Raven/Raven2/FireFlight/Renoir Audio Processor 5.0.6: aud 04.03.00 1022/15e3 255 0:d06c0000 32768 Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller 6.0.0: disk 01.06.01 1022/7901 255 5:d0200000 2048 Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] % aux/cpuid vendor AuthenticAMD procmodel 00810f81 / 05080800 typefammod 0 17 00f 1 features fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat features pse36 clflush mmx fxsr sse sse2 ht features pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrnd features xsaveopt extmodel 00810f81 / 00000000 extfeatures fpu vme de pse tsc msr pae mce cx8 apic syscall mtrr pge mca cmov pat extfeatures pse36 nx mmx+ mmx fxsr ffxsr pg1g tscp lm extfeatures ahf64 cmp svm eas cr8d lzcnt sse4a msse 3dnow!p osvw skinit wdt tce topx pcx_core pcx_nb procname AMD Ryzen 7 3700U with Radeon Vega Mobile Gfx physbits 48 virtbits 48 % aux/icanhasmsi 0.0.2 0.1.1 0.1.2 0.1.3 0.1.6 0.8.1 0.8.2 1.0.0 2.0.0 3.0.0 4.0.0 5.0.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 6.0.0 % aux/icanhasvmx -v % aux/pcmcia % cat '#'u/usb/ctl ep1.0 enabled control rw speed high maxpkt 64 ntds 1 pollival 0 samplesz 0 hz 0 uframes 0 hub 0 port 0 rootport 0 addr 0 busy roothub csp 0x000009 ports 4 xhci ep2.0 enabled control rw speed super maxpkt 512 ntds 1 pollival 0 samplesz 0 hz 0 uframes 0 hub 0 port 0 rootport 0 addr 0 busy roothub csp 0x000009 ports 4 xhci ep3.0 enabled control rw speed high maxpkt 64 ntds 1 pollival 0 samplesz 0 hz 0 uframes 0 hub 0 port 0 rootport 0 addr 0 busy roothub csp 0x000009 ports 2 xhci ep4.0 enabled control rw speed super maxpkt 512 ntds 1 pollival 0 samplesz 0 hz 0 uframes 0 hub 0 port 0 rootport 0 addr 0 busy roothub csp 0x000009 ports 1 xhci ep5.0 enabled control rw speed high maxpkt 64 ntds 1 pollival 0 samplesz 0 hz 0 uframes 0 hub 0 port 2 rootport 2 addr 1 idle 239 csp 0x0102ef vid 0x5986 did 0x2113 'SunplusIT Inc' 'Integrated Camera' 36e4c xhci ep5.1 enabled iso r speed high maxpkt 1020 ntds 3 pollival 10 samplesz 4 hz 44100 uframes 0 hub 0 port 2 rootport 2 addr 1 idle ep5.7 enabled interrupt r speed high maxpkt 16 ntds 1 pollival 128 samplesz 0 hz 0 uframes 0 hub 0 port 2 rootport 2 addr 1 idle ep6.0 enabled control rw speed full maxpkt 8 ntds 1 pollival 0 samplesz 0 hz 0 uframes 0 hub 0 port 4 rootport 4 addr 1 busy hid csp 0x010103 vid 0x046d did 0xc52b Logitech 'USB Receiver' 3d436 xhci ep6.1 enabled interrupt r speed full maxpkt 8 ntds 1 pollival 8 samplesz 0 hz 0 uframes 0 hub 0 port 4 rootport 4 addr 1 busy ep6.2 enabled interrupt r speed full maxpkt 8 ntds 1 pollival 2 samplesz 0 hz 0 uframes 0 hub 0 port 4 rootport 4 addr 1 busy ep6.3 enabled interrupt r speed full maxpkt 32 ntds 1 pollival 2 samplesz 0 hz 0 uframes 0 hub 0 port 4 rootport 4 addr 1 busy % cat '#'S/sdctl sdE ahci ahci port 0xffffff00d0200000: 64a ncq ntf mps alp led clo am pm fbs pmb slum pslum iss 3 ncs 31 np 1 ghc 80000002 isr 0 pi 1 0 ver 10301 sdN nvme 1024 units sdZ ram 4 units % cat '#'S/sdE0/ctl inquiry Samsung SSD 840 EVO 250GB model Samsung SSD 840 EVO 250GB serial S1DBNSBF928022M firm EXT0BB6Q wwn 50025388a070be63 flag lba llba smart nop ata8 sct udma 6 reg task 50 cmd 404017 serr 0 ci 0 is 0 sig 101 sstatus 133 cmd fbsc fr pod sud st mode auto sataiii geometry 488397168 512 alignment 512 0 missirq 0 part data 0 488397168 part esp 64 1024 part openbsd 1024 488397105 % cat '#'S/sdN0/ctl inquiry HFM512GDHTNG-8710B model HFM512GDHTNG-8710B serial NI93T01301 firm 80010C geometry 1000215216 512 part data 0 1000215216 part esp 2048 534528 part msr 534528 567296 part dos 567296 214454272 part linuxdata 214454272 218648576 part plan9 218648576 419254272 part linuxdata1 419254272 421351424 part linuxswap 421351424 435822592 part linuxdata2 435822592 998166528 part recovery 998166528 1000214528 part 9fat 218648576 218853376 part nvram 218853376 218853377 part other 218853377 247482076 part fscache 247482076 276110775 part fsworm 276110775 419254272 % cat '#'l0/ether0/addr 98fa9b69b552 % cat '#'l0/ether0/stats in: 3535 link: 1 out: 896 crc errs: 0 overflows: 0 soft overflows: 0 framing errs: 0 buffer errs: 0 output errs: 0 prom: 0 mbps: 100 addr: 98fa9b69b552 % cat '#'l0/ether0/ifstats TxOk: 896 RxOk: 3535 TxEr: 0 RxEr: 0 MissPkt: 0 FAE: 0 Tx1Col: 0 TxMCol: 0 RxOkPh: 3215 RxOkBrd: 312 RxOkMu: 8 TxAbt: 0 TxUndrn: 0 serr: 0 fovw: 0 txdu: 0 tcpf: 1176 udpf: 2074 ipf: 0 fovf: 0 rer: 0 rdu: 0 punlc: 1 tcr: 0x53900f00 rcr: 0x0000870e multicast: 8 phy: 1040 79ed 001c c800 01e1 45e1 0065 2801 0000 0200 0000 0000 0000 0000 0000 2000 0000 0000 0000 0000 0000 0000 0000 0000 319a 0043 301c 80d9 7078 0000 0000 0000 % cat '#'v/vgactl type cga size 1920x1080x32 x8r8g8b8 hwgc soft hwaccel off hwblank off panning off addr p 0xc0000000 v 0xffffff00c0000000 size 0x4000000 softscreen on @{rfork n; aux/realemu; aux/vga -p} % xd -x1 '#'r/nvram 0000000 07 56 24 26 06 10 01 12 04 20 26 02 50 80 00 00 0000010 00 00 00 00 0a 80 02 00 3c 00 00 00 00 00 00 00 0000020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c8 0000030 00 3c 20 00 00 9b 00 00 00 00 00 00 00 00 00 00 0000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000070 00 00 30 00 00 00 00 00 00 5a 00 00 49 53 b2 00 0000080 07 56 24 26 06 10 01 12 04 20 26 02 40 80 00 00 0000090 00 00 00 00 0a 80 02 00 3c 00 00 00 00 00 00 00 00000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c8 00000b0 00 3c 20 00 00 9b 00 00 00 00 00 00 00 00 00 00 00000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00000f0 00 00 30 00 00 00 00 00 00 5a 00 00 49 53 b2 00 0000100 0000100 % cat '#'A/audiostat bufsize 1024 buffered 0 codec 0 pin 23 inpin 26 aout 16 c1d aout 17 c1d beep 18 70000c ain 19 100d1b ← pin 24, pin 25, pin 26, beep 21 ain 20 100d1b ← pin 26, beep 21 beep 21 f0050b ← aout 16, aout 17 pin 22 out jack ext left hpout black eapd ← aout 16, aout 17 pin 23 out fix int rear speaker ? eapd ← aout 16, aout 17 pin 24 in nothing ext N/A other ? pin 25 in jack ext left micin black pin 26 in fix int top micin ? beep 27 f00000 beep 28 f00000 beep 29 f0058b beep 30 f0058b beep 31 f0058b aout 32 611 pin 33 out nothing ext N/A other ? ← aout 32 outpath aout 16 → pin 23 outamp aout 16 inpath pin 26 → ain 19 inamp ain 19 % cat '#'A/volume master 100 100 recgain 0 0 speed 44100 delay 1764 % cat /mnt/apm/ctl --upas-mtzfspocpmyrzahfrwqcxkmfwf Content-Type: multipart/mixed; boundary="upas-hugerwdgfqfyxwigavycsvmoes" Content-Disposition: inline This is a multi-part message in MIME format. --upas-hugerwdgfqfyxwigavycsvmoes Content-Disposition: inline Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit from postmaster@plan9: The following attachment had content that we can't prove to be harmless. To avoid possible automatic execution, we changed the content headers. The original header was: Content-Disposition: attachment; filename=usb.patch Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit --upas-hugerwdgfqfyxwigavycsvmoes Content-Type: application/octet-stream Content-Disposition: attachment; filename="usb.patch.suspect" diff -r 22dd54063d2c sys/src/cmd/nusb/kb/kb.c --- a/sys/src/cmd/nusb/kb/kb.c Sat Apr 11 18:09:48 2020 +0200 +++ b/sys/src/cmd/nusb/kb/kb.c Sun Apr 12 04:35:20 2020 +0200 @@ -330,12 +330,21 @@ iface = f->dev->usb->ep[eid]->iface; - /* - * DWC OTG controller misses some split transaction inputs. - * Set nonzero idle time to return more frequent reports - * of keyboard state, to avoid losing key up/down events. + /* Appendix G of the USB Hid spec says that only boot mouse and boot keyboards + * are required to support setting the protocol, so only try it for those. */ - usbcmd(f->dev, Rh2d|Rclass|Riface, Setidle, 8<<8, iface->id, nil, 0); + if (iface->csp != KbdCSP && iface->csp != PtrCSP) + return 0; + + /* Only set the idle time keyboards since only those are required to support it */ + if (iface->csp == KbdCSP) { + /* + * DWC OTG controller misses some split transaction inputs. + * Set nonzero idle time to return more frequent reports + * of keyboard state, to avoid losing key up/down events. + */ + usbcmd(f->dev, Rh2d|Rclass|Riface, Setidle, 8<<8, iface->id, nil, 0); + } f->nrep = usbcmd(f->dev, Rd2h|Rstd|Riface, Rgetdesc, Dreport<<8, iface->id, f->rep, sizeof(f->rep)); --upas-hugerwdgfqfyxwigavycsvmoes--