Project

General

Profile

Actions

Bug #2688

open

67613368bdda7 Fix wrong checks for U4B presence Asrock Z77M difficulty detecting USB keyboard

Added by davshao over 9 years ago. Updated over 9 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
Start date:
06/28/2014
Due date:
% Done:

0%

Estimated time:

Description

For an Asrock Z77M motherboard, Intel Core i3-3225 CPU PC, detection of a USB keyboard was already somewhat erratic, but following 67613368bdda7 Fix wrong checks for U4B presence it has become almost impossible. The motherboard is UEFI, but I am using legacy support modes for hard drives and USB to emulate older booting using BIOS. The following summarizes the differences I can see between two verbose dmesg's, one asrock_z77m_verbose_good.txt with 67613368bdda7 reverted, the other asrock_z77m_verbose_bad.txt with current master. The USB keyboard and USB mouse are attached using a USB hub but similar behavior has been observed not using a hub. Nothing similar has been noticed with the same system using other OSes such as FreeBSD i386 current, FreeBSD 10 stable, FreeBSD 10 releng, NetBSD 6.99.x, OpenBSD 5.5-current, etc.

Both have

kbd: new array size 4
kbd1 at kbdmux0

Both have

pci0: <serial bus, USB> (vendor 0x8086, dev 0x1e31) at device 20.0 irq 16
pci0: <simple comms> (vendor 0x8086, dev 0x1e3a) at device 22.0 irq 16
ehci0.pci0.pcib0.acpi0.nexus0.root0
ehci0: <Intel Panther Point USB 2.0 controller> [tentative] mem 0xf7f18000-0xf7f183ff irq 16 at device 26.0 on pci0

Only the reverted good boot has:

ehci0: <Intel Panther Point USB 2.0 controller> [tentative] mem 0xf7f18000-0xf7f183ff irq 16 at device 26.0 on pci0
ehci0: Reserved 0x400 bytes for rid 0x10 type 3 at 0xf7f18000
usbus0: waiting for BIOS to give up control

Then both have:

usbus0: EHCI version 1.0
usbus0.ehci0.pci0.pcib0.acpi0.nexus0.root0
usbus0: <Intel Panther Point USB 2.0 controller> [tentative] on ehci0
usbus0: <Intel Panther Point USB 2.0 controller> [attached!] on ehci0
ehci0: <Intel Panther Point USB 2.0 controller> [attached!] mem 0xf7f18000-0xf7f183ff irq 16 at device 26.0 on pci0

Later both dmesgs have:

ehci1.pci0.pcib0.acpi0.nexus0.root0
ehci1: <Intel Panther Point USB 2.0 controller> [tentative] mem 0xf7f17000-0xf7f173ff irq 23 at device 29.0 on pci0

Only the reverted good dmesg has:

ehci1: Reserved 0x400 bytes for rid 0x10 type 3 at 0xf7f17000

Both have:

ugen0.1: <Intel> at usbus0
uhub0: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus

Only the reverted good dmesg has:

usbus1: waiting for BIOS to give up control

Then both have:

usbus1: EHCI version 1.0
usbus1.ehci1.pci0.pcib0.acpi0.nexus0.root0
usbus1: <Intel Panther Point USB 2.0 controller> [tentative] on ehci1
usbus1: <Intel Panther Point USB 2.0 controller> [attached!] on ehci1
ehci1: <Intel Panther Point USB 2.0 controller> [attached!] mem 0xf7f17000-0xf7f173ff irq 23 at device 29.0 on pci0

Later both have:

usbus1: 480Mbps High Speed USB v2.0
ugen1.1: <Intel> at usbus1
uhub1: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus1
uhub0: 2 ports with 2 removable, self powered
uhub1: 2 ports with 2 removable, self powered
ugen0.2: <vendor 0x8087> at usbus0
uhub2: <vendor 0x8087 product 0x0024, class 9/0, rev 2.00/0.00, addr 2> on usbus0
...
ugen1.2: <vendor 0x8087> at usbus1
uhub3: <vendor 0x8087 product 0x0024, class 9/0, rev 2.00/0.00, addr 2> on usbus1
uhub2: 6 ports with 6 removable, self powered

But then only the reverted good dmesg has:

uhub3: 8 ports with 8 removable, self powered
ugen1.3: <vendor 0x1a40> at usbus1
uhub4: <vendor 0x1a40 USB 2.0 Hub MTT, class 9/0, rev 2.00/1.00, addr 3> on usbus1
uhub4: MTT enabled
uhub4: 7 ports with 7 removable, self powered
...
ugen1.4: <vendor 0x04d9> at usbus1
ukbd0: <vendor 0x04d9 USB Keyboard, class 0/0, rev 1.10/1.01, addr 4> on usbus1
kbd2 at ukbd0
kbd2: ukbd0, generic (0), config:0x0, flags:0x3d0000
uhid0: <vendor 0x04d9 USB Keyboard, class 0/0, rev 1.10/1.01, addr 4> on usbus1
...
ugen1.5: <Logitech> at usbus1
...
ums0: <Logitech USB Laser Mouse, class 0/0, rev 2.00/31.00, addr 5> on usbus1
ums0: 8 buttons and [XYZT] coordinates ID=0


Files

Actions #1

Updated by davshao over 9 years ago

Here is the reverted good boot verbose dmesg.

Actions

Also available in: Atom PDF