Hi.
I applied ukbd.c patch, then rebuild world and kernel.
The result is "Every symbols on keyboard can input as I expected".
In attached file, check result with the same procedure below are described.
See attachment file for detail.
It seems that my problem is fixed.
Thanks.
2020?2?25?(?) 21:06 Hans Petter Selasky <hps at selasky.org>:
> On 2020-02-25 12:37, Minoru TANABE wrote:
> > Hi, all.
> >
> > I rebuild my system, using current ukbd.c.
> > The results are same as Subject. No '\', no '|', no
'_'.
> >
> > See attachment for detail.
> > Line240 shows "ugen0.3: <Cypress USB Keyboard> at usbus0
(disconnected)"
> >
> > I press keys '\', '|',(right of '^'
'~')
> > '\', '_' (right of '/' ''?')
order.
> >
> > I can't input underscore on console keyboard.
> > So, "usbconfig -d X.Y dump_device_desc" command was executed
via ssh.
> >
> > Thank you.
> >
>
> Hi,
>
> It looks like the scancodes are bigger than 128, so this might be
> treated like a negative value. Solution: Use hid_get_data_unsigned().
>
> Can you try the attached patch?
>
> --HPS
>
--
mtan (Minoru TANABE)
EMail kotanabe3 at gmail.com
-------------- next part --------------
FreeBSD pico.mtan.com 12.1-STABLE FreeBSD 12.1-STABLE #0 r358300M: Wed Feb 26
03:06:26 JST 2020 root at
pico.mtan.com:/usr/obj/usr/src/amd64.amd64/sys/PICO amd64
Path: /usr/src
Working Copy Root Path: /usr/src
URL: https://svn.freebsd.org/base/stable/12
Relative URL: ^/stable/12
Repository Root: https://svn.freebsd.org/base
Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Revision: 358300
Node Kind: directory
Schedule: normal
Last Changed Author: kib
Last Changed Rev: 358288
Last Changed Date: 2020-02-24 21:35:58 +0900 (?, 24 2? 2020)
---<<BOOT>>---
Copyright (c) 1992-2020 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 12.1-STABLE #0 r358300M: Wed Feb 26 03:06:26 JST 2020
root at pico.mtan.com:/usr/obj/usr/src/amd64.amd64/sys/PICO amd64
FreeBSD clang version 9.0.1 (git at github.com:llvm/llvm-project.git
c1a0a213378a458fbea1a5c77b315c7dce08fd05) (based on LLVM 9.0.1)
VT(efifb): resolution 1920x1200
CPU: Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz (3696.15-MHz K8-class CPU)
Origin="GenuineIntel" Id=0x906ea Family=0x6 Model=0x9e
Stepping=10
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
Features2=0x7ffafbff<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,SDBG,FMA,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,AVX,F16C,RDRAND>
AMD Features=0x2c100800<SYSCALL,NX,Page1GB,RDTSCP,LM>
AMD Features2=0x121<LAHF,ABM,Prefetch>
Structured Extended
Features=0x29c6fbf<FSGSBASE,TSCADJ,SGX,BMI1,HLE,AVX2,SMEP,BMI2,ERMS,INVPCID,RTM,NFPUSG,MPX,RDSEED,ADX,SMAP,CLFLUSHOPT,PROCTRACE>
Structured Extended Features2=0x40000000<SGXLC>
Structured Extended
Features3=0x9c002400<MD_CLEAR,TSXFA,IBPB,STIBP,L1DFL,SSBD>
XSAVE Features=0xf<XSAVEOPT,XSAVEC,XINUSE,XSAVES>
VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID
TSC: P-state invariant, performance statistics
real memory = 68719476736 (65536 MB)
avail memory = 66778271744 (63684 MB)
CPU microcode: updated from 0xb4 to 0xca
Event timer "LAPIC" quality 600
ACPI APIC Table: <ALASKA A M I >
FreeBSD/SMP: Multiprocessor System Detected: 12 CPUs
FreeBSD/SMP: 1 package(s) x 6 core(s) x 2 hardware threads
random: unblocking device.
ioapic0 <Version 2.0> irqs 0-119 on motherboard
Launching APs: 1 7 6 10 11 8 9 2 3 4 5
Timecounter "TSC-low" frequency 1848072926 Hz quality 1000
random: entropy device external interface
000.000024 [4336] netmap_init netmap: loaded module
[ath_hal] loaded
module_register_init: MOD_LOAD (vesa, 0xffffffff8111b170, 0) error 19
random: registering fast source Intel Secure Key RNG
random: fast provider: "Intel Secure Key RNG"
kbd1 at kbdmux0
nexus0
efirtc0: <EFI Realtime Clock> on motherboard
efirtc0: registered as a time-of-day clock, resolution 1.000000s
cryptosoft0: <software crypto> on motherboard
aesni0: <AES-CBC,AES-CCM,AES-GCM,AES-ICM,AES-XTS> on motherboard
acpi0: <ALASKA A M I > on motherboard
acpi0: Power Button (fixed)
cpu0: <ACPI CPU> on acpi0
hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0
Timecounter "HPET" frequency 24000000 Hz quality 950
Event timer "HPET" frequency 24000000 Hz quality 350
Event timer "HPET1" frequency 24000000 Hz quality 340
Event timer "HPET2" frequency 24000000 Hz quality 340
Event timer "HPET3" frequency 24000000 Hz quality 340
Event timer "HPET4" frequency 24000000 Hz quality 340
Event timer "HPET5" frequency 24000000 Hz quality 340
Event timer "HPET6" frequency 24000000 Hz quality 340
Event timer "HPET7" frequency 24000000 Hz quality 340
atrtc0: <AT realtime clock> port 0x70-0x77 irq 8 on acpi0
atrtc0: Warning: Couldn't map I/O.
atrtc0: registered as a time-of-day clock, resolution 1.000000s
Event timer "RTC" frequency 32768 Hz quality 0
attimer0: <AT timer> port 0x40-0x43,0x50-0x53 irq 0 on acpi0
Timecounter "i8254" frequency 1193182 Hz quality 0
Event timer "i8254" frequency 1193182 Hz quality 100
Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1808-0x180b on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pcib1: <ACPI PCI-PCI bridge> irq 16 at device 1.0 on pci0
pci1: <ACPI PCI bus> on pcib1
vgapci0: <VGA-compatible display> port 0xe000-0xe07f mem
0xde000000-0xdeffffff,0xc0000000-0xcfffffff,0xd0000000-0xd1ffffff irq 16 at
device 0.0 on pci1
vgapci0: Boot video device
hdac0: <NVIDIA (0x0fb9) HDA Controller> mem 0xdf080000-0xdf083fff irq 17
at device 0.1 on pci1
xhci0: <Intel Union Point USB 3.0 controller> mem 0xdf130000-0xdf13ffff
irq 16 at device 20.0 on pci0
xhci0: 32 bytes context size, 64-bit DMA
usbus0: waiting for BIOS to give up control
xhci_interrupt: host controller halted
usbus0 on xhci0
usbus0: 5.0Gbps Super Speed USB v3.0
pci0: <simple comms> at device 22.0 (no driver attached)
ahci0: <Intel Union Point AHCI SATA controller> port
0xf050-0xf057,0xf040-0xf043,0xf020-0xf03f mem
0xdf148000-0xdf149fff,0xdf14c000-0xdf14c0ff,0xdf14b000-0xdf14b7ff irq 16 at
device 23.0 on pci0
ahci0: AHCI v1.31 with 6 6Gbps ports, Port Multiplier not supported
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich1: <AHCI channel> at channel 1 on ahci0
ahcich2: <AHCI channel> at channel 2 on ahci0
ahcich3: <AHCI channel> at channel 3 on ahci0
ahcich4: <AHCI channel> at channel 4 on ahci0
ahcich5: <AHCI channel> at channel 5 on ahci0
ahciem0: <AHCI enclosure management bridge> on ahci0
pcib2: <ACPI PCI-PCI bridge> irq 16 at device 27.0 on pci0
pci2: <ACPI PCI bus> on pcib2
pcib3: <ACPI PCI-PCI bridge> irq 16 at device 28.0 on pci0
pci3: <ACPI PCI bus> on pcib3
pcib4: <ACPI PCI-PCI bridge> irq 16 at device 29.0 on pci0
pci4: <ACPI PCI bus> on pcib4
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
pci0: <memory> at device 31.2 (no driver attached)
hdac1: <Intel Kaby Lake-H HDA Controller> mem
0xdf140000-0xdf143fff,0xdf120000-0xdf12ffff irq 16 at device 31.3 on pci0
em0: <Intel(R) PRO/1000 Network Connection> mem 0xdf100000-0xdf11ffff irq
16 at device 31.6 on pci0
em0: Using 1024 TX descriptors and 1024 RX descriptors
em0: Using an MSI interrupt
em0: Ethernet address: 70:85:c2:5f:d4:58
em0: netmap queues/slots: TX 1/1024, RX 1/1024
acpi_button0: <Sleep Button> on acpi0
acpi_button1: <Power Button> on acpi0
uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
coretemp0: <CPU On-Die Thermal Sensors> on cpu0
est0: <Enhanced SpeedStep Frequency Control> on cpu0
pefs: AESNI hardware acceleration enabled
ZFS filesystem version: 5
ZFS storage pool version: features support (5000)
Timecounters tick every 1.000 msec
hdacc0: <NVIDIA (0x0080) HDA CODEC> at cad 0 on hdac0
hdaa0: <NVIDIA (0x0080) Audio Function Group> at nid 1 on hdacc0
pcm0: <NVIDIA (0x0080) (HDMI/DP 8ch)> at nid 4 on hdaa0
pcm1: <NVIDIA (0x0080) (HDMI/DP 8ch)> at nid 5 on hdaa0
pcm2: <NVIDIA (0x0080) (HDMI/DP 8ch)> at nid 6 on hdaa0
hdacc1: <Realtek ALC892 HDA CODEC> at cad 0 on hdac1
hdaa1: <Realtek ALC892 Audio Function Group> at nid 1 on hdacc1
pcm3: <Realtek ALC892 (Rear Analog)> at nid 20 and 24,26 on hdaa1
pcm4: <Realtek ALC892 (Front Analog)> at nid 27 and 25 on hdaa1
Trying to mount root from zfs:rpool/ROOT/test []...
Root mount waiting for: usbus0 CAM
ugen0.1: <0x8086 XHCI root HUB> at usbus0
uhub0: <0x8086 XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0
cd0 at ahcich5 bus 0 scbus5 target 0 lun 0
cd0: <ASUS DRW-24D5MT 1.00> Removable CD-ROM SCSI device
cd0: Serial Number K2HHAOB5143
cd0: 150.000MB/s transfers (SATA 1.x, UDMA6, ATAPI 12bytes, PIO 8192bytes)
cd0: 0MB (1 0 byte sectors)
ses0 at ahciem0 bus 0 scbus6 target 0 lun 0
ses0: <AHCI SGPIO Enclosure 2.00 0001> SEMB S-E-S 2.00 device
ses0: SEMB SES Device
ada0 at ahcich0 bus 0 scbus0 target 0 lun 0
ada0: <WDC WD30EFRX-68EUZN0 82.00A82> ACS-2 ATA SATA 3.x device
ada0: Serial Number WD-WCC4N4TKY1Z2
ada0: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes)
ada0: Command Queueing enabled
ada0: 2861588MB (5860533168 512 byte sectors)
ada0: quirks=0x1<4K>
ada1 at ahcich1 bus 0 scbus1 target 0 lun 0
ada1: <WDC WD30EFRX-68EUZN0 82.00A82> ACS-2 ATA SATA 3.x device
ada1: Serial Number WD-WCC4N7FLLJN1
ada1: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes)
ada1: Command Queueing enabled
ada1: 2861588MB (5860533168 512 byte sectors)
ada1: quirks=0x1<4K>
ses0: pass0,ada0 in 'Slot 00', SATA Slot: scbus0 target 0
ada2 at ahcich2 bus 0 scbus2 target 0 lun 0
ada2: <WDC WD30EFRX-68EUZN0 82.00A82> ACS-2 ATA SATA 3.x device
ada2: Serial Number WD-WCC4N2TYFE7V
ada2: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes)
ada2: Command Queueing enabled
ada2: 2861588MB (5860533168 512 byte sectors)
ada2: quirks=0x1<4K>
ses0: pass1,ada1 in 'Slot 01', SATA Slot: scbus1 target 0
ada3 at ahcich4 bus 0 scbus4 target 0 lun 0
ada3: <WDC WD10EZRZ-00HTKB0 01.01A01> ACS-2 ATA SATA 3.x device
ada3: Serial Number WD-WCC4J0NLUV08
ada3: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 8192bytes)
ada3: Command Queueing enabled
ada3: 953869MB (1953525168 512 byte sectors)
ses0: pass2,ada2 in 'Slot 02', SATA Slot: scbus2 target 0
ses0: pass3,ada3 in 'Slot 04', SATA Slot: scbus4 target 0
ses0: pass4,cd0 in 'Slot 05', SATA Slot: scbus5 target 0
uhub0: 26 ports with 26 removable, self powered
Root mount waiting for: usbus0
ugen0.2: <vendor 0x05e3 product 0x0610> at usbus0
uhub1 on uhub0
uhub1: <vendor 0x05e3 product 0x0610, class 9/0, rev 2.10/41.15, addr 1>
on usbus0
uhub1: MTT enabled
uhub1: 4 ports with 4 removable, self powered
Root mount waiting for: usbus0
ugen0.3: <Cypress USB Keyboard> at usbus0
ukbd0 on uhub0
ukbd0: <EP1 Interrupt> on usbus0
kbd2 at ukbd0
ukbd1 on uhub0
ukbd1: <EP2 Interrupt> on usbus0
kbd3 at ukbd1
Root mount waiting for: usbus0
ugen0.4: <vendor 0x05e3 product 0x0617> at usbus0
uhub2 on uhub0
uhub2: <> on usbus0
uhub2: 4 ports with 4 removable, self powered
Accounting enabled
nvidia0: <Unknown> on vgapci0
vgapci0: child nvidia0 requested pci_enable_io
vgapci0: child nvidia0 requested pci_enable_io
nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms
440.59 Thu Jan 30 00:54:28 UTC 2020
lo0: link state changed to UP
em0: link state changed to UP
tap0: Ethernet address: 58:9c:fc:10:ff:f5
CPU: Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz (3696.15-MHz K8-class CPU)
Origin="GenuineIntel" Id=0x906ea Family=0x6 Model=0x9e
Stepping=10
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
Features2=0x7ffafbff<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,SMX,EST,TM2,SSSE3,SDBG,FMA,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,AVX,F16C,RDRAND>
AMD Features=0x2c100800<SYSCALL,NX,Page1GB,RDTSCP,LM>
AMD Features2=0x121<LAHF,ABM,Prefetch>
Structured Extended
Features=0x29c6fbf<FSGSBASE,TSCADJ,SGX,BMI1,HLE,AVX2,SMEP,BMI2,ERMS,INVPCID,RTM,NFPUSG,MPX,RDSEED,ADX,SMAP,CLFLUSHOPT,PROCTRACE>
Structured Extended Features2=0x40000000<SGXLC>
Structured Extended
Features3=0x9c002400<MD_CLEAR,TSXFA,IBPB,STIBP,L1DFL,SSBD>
XSAVE Features=0xf<XSAVEOPT,XSAVEC,XINUSE,XSAVES>
VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID
TSC: P-state invariant, performance statistics
Security policy loaded: MAC/ntpd (mac_ntpd)
nfsrv_cache_session: no session
nfsrv_cache_session: no session
Consider increasing kern.ipc.maxsockbuf
Consider increasing kern.ipc.maxsockbuf
Consider increasing kern.ipc.maxsockbuf
Consider increasing kern.ipc.maxsockbuf
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_put_key: 0x428 (1064) released
ukbd_intr_callback: error=USB_ERR_IOERROR
ukbd_intr_callback: error=USB_ERR_IOERROR
ugen0.3: <Cypress USB Keyboard> at usbus0 (disconnected)
ukbd0: at uhub0, port 9, addr 2 (disconnected)
ukbd_detach:
ukbd_intr_callback: error=USB_ERR_CANCELLED
ukbd_intr_callback: error=USB_ERR_CANCELLED
ukbd_detach: ukbd0: disconnected
ukbd0: detached
ukbd1: at uhub0, port 9, addr 2 (disconnected)
ukbd_detach:
ukbd_intr_callback: error=USB_ERR_CANCELLED
ukbd_intr_callback: error=USB_ERR_CANCELLED
ukbd_detach: ukbd1: disconnected
ukbd1: detached
ugen0.3: <Cypress USB Keyboard> at usbus0
ukbd_probe:
ukbd_probe:
ukbd0 on uhub0
ukbd0: <EP1 Interrupt> on usbus0
ukbd_attach: Parsing HID descriptor of 63 bytes
ukbd_parse_hid: Found keyboard event array
ukbd_parse_hid: Found key 0xe0
ukbd_parse_hid: Found key 0xe1
ukbd_parse_hid: Found key 0xe2
ukbd_parse_hid: Found key 0xe3
ukbd_parse_hid: Found key 0xe4
ukbd_parse_hid: Found key 0xe5
ukbd_parse_hid: Found key 0xe6
ukbd_parse_hid: Found key 0xe7
ukbd_parse_hid: Found keyboard numlock
ukbd_parse_hid: Found keyboard capslock
ukbd_parse_hid: Found keyboard scrolllock
ukbd_set_leds: leds=0x00
ukbd_set_leds: leds=0x00
kbd2 at ukbd0
ukbd_probe:
ukbd_set_leds_callback: len=1, id=0
ukbd_probe:
ukbd1 on uhub0
ukbd1: <EP2 Interrupt> on usbus0
ukbd_attach: Parsing HID descriptor of 185 bytes
ukbd_parse_hid: Found keyboard event array
ukbd_set_leds: leds=0x00
ukbd_set_leds: leds=0x00
kbd3 at ukbd1
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_intr_callback: Key 0x89 pressed
ukbd_put_key: 0x89 (137) pressed
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_put_key: 0x489 (1161) released
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_intr_callback: Key 0xe1 pressed
ukbd_put_key: 0xe1 (225) pressed
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_intr_callback: Key 0x89 pressed
ukbd_intr_callback: Key 0xe1 pressed
ukbd_put_key: 0x89 (137) pressed
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_intr_callback: Key 0xe1 pressed
ukbd_put_key: 0x489 (1161) released
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_put_key: 0x4e1 (1249) released
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_intr_callback: Key 0x87 pressed
ukbd_put_key: 0x87 (135) pressed
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_put_key: 0x487 (1159) released
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_intr_callback: Key 0xe1 pressed
ukbd_put_key: 0xe1 (225) pressed
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_intr_callback: Key 0x87 pressed
ukbd_intr_callback: Key 0xe1 pressed
ukbd_put_key: 0x87 (135) pressed
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_intr_callback: Key 0xe1 pressed
ukbd_put_key: 0x487 (1159) released
ukbd_intr_callback: actlen=8 bytes
ukbd_intr_callback: modifiers = 0x0000
ukbd_put_key: 0x4e1 (1249) released
ugen0.3: <Cypress USB Keyboard> at usbus0, cfg=0 md=HOST spd=LOW (1.5Mbps)
pwr=ON (100mA)
bLength = 0x0012
bDescriptorType = 0x0001
bcdUSB = 0x0200
bDeviceClass = 0x0000 <Probed by interface class>
bDeviceSubClass = 0x0000
bDeviceProtocol = 0x0000
bMaxPacketSize0 = 0x0008
idVendor = 0x04b4
idProduct = 0x0101
bcdDevice = 0x0001
iManufacturer = 0x0001 <Cypress>
iProduct = 0x0002 <USB Keyboard>
iSerialNumber = 0x0000 <no string>
bNumConfigurations = 0x0001