From owner-freebsd-stable@FreeBSD.ORG Thu Apr 23 07:11:03 2015 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BB767611; Thu, 23 Apr 2015 07:11:03 +0000 (UTC) Received: from tensor.andric.com (tensor.andric.com [IPv6:2001:7b8:3a7:1:2d0:b7ff:fea0:8c26]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48D04136E; Thu, 23 Apr 2015 07:11:03 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7::4d01:e30f:c49:2d42] (unknown [IPv6:2001:7b8:3a7:0:4d01:e30f:c49:2d42]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 7207A5C37; Thu, 23 Apr 2015 09:10:57 +0200 (CEST) Subject: Re: Strange USB behavior Mime-Version: 1.0 (Mac OS X Mail 8.2 \(2098\)) Content-Type: multipart/signed; boundary="Apple-Mail=_032339E9-F7D1-43AC-AE92-8D985FA9CD8B"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5b6 From: Dimitry Andric In-Reply-To: Date: Thu, 23 Apr 2015 09:10:51 +0200 Cc: FreeBSD stable , Hans Petter Selasky Message-Id: <2FA5D6D3-E115-4BF2-9552-D1552522DECB@FreeBSD.org> References: To: fate X-Mailer: Apple Mail (2.2098) X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Apr 2015 07:11:03 -0000 --Apple-Mail=_032339E9-F7D1-43AC-AE92-8D985FA9CD8B Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 23 Apr 2015, at 01:54, fate wrote: > Strange USB behavior on Gigabyte BRIX GB-BXA8-5545. > Need number of connect - disconnect cycles before usb subsystem > recognize devices. >=20 > Apr 19 02:09:01 brix kernel: ugen0.2: at usbus0 = (disconnected) > Apr 19 02:09:05 brix kernel: usb_alloc_device: Failure selecting > configuration index 0:USB_ERR_TIMEOUT, port 4, addr 1 (ignored) > Apr 19 02:09:05 brix kernel: ugen0.2: at usbus0 > Apr 19 02:09:07 brix kernel: ugen0.2: at usbus0 = (disconnected) > Apr 19 02:18:15 brix kernel: usb_alloc_device: Failure selecting > configuration index 0:USB_ERR_TIMEOUT, port 4, addr 1 (ignored) > Apr 19 02:18:15 brix kernel: ugen0.2: at usbus0 > Apr 19 02:18:17 brix kernel: ugen0.2: at usbus0 = (disconnected) > Apr 19 02:18:21 brix kernel: usb_alloc_device: Failure selecting > configuration index 0:USB_ERR_TIMEOUT, port 4, addr 1 (ignored) > Apr 19 02:18:21 brix kernel: ugen0.2: at usbus0 > Apr 19 02:18:23 brix kernel: ugen0.2: at usbus0 = (disconnected) > Apr 19 02:18:27 brix kernel: usb_alloc_device: Failure selecting > configuration index 0:USB_ERR_TIMEOUT, port 4, addr 1 (ignored) > Apr 19 02:18:27 brix kernel: ugen0.2: at usbus0 > Apr 19 02:18:29 brix kernel: ugen0.2: at usbus0 = (disconnected) > Apr 19 02:18:36 brix kernel: usb_alloc_device: Failure selecting > configuration index 0:USB_ERR_TIMEOUT, port 4, addr 1 (ignored) > Apr 19 02:18:36 brix kernel: ugen0.2: at usbus0 > Apr 19 02:18:40 brix kernel: ugen0.2: at usbus0 = (disconnected) > Apr 19 03:17:14 brix kernel: ugen0.2: at usbus0 > Apr 19 03:17:15 brix kernel: uhub7: class 9/0, rev 2.00/1.00, addr 1> on usbus0 > Apr 19 03:17:15 brix kernel: uhub7: 4 ports with 4 removable, self = powered > Apr 19 03:17:17 brix kernel: ugen0.3: at usbus0 > Apr 19 03:17:18 brix kernel: ugen0.4: at usbus0 > Apr 19 03:17:18 brix kernel: uhid0: rev 2.00/5.00, addr 3> on usbus0 > Apr 19 03:17:19 brix kernel: ugen0.5: at usbus0 > Apr 19 03:17:19 brix kernel: ukbd0: Keyboard, class 0/0, rev 2.00/55.01, addr 4> on usbus0 > Apr 19 03:17:19 brix kernel: kbd1 at ukbd0 > Apr 19 03:17:19 brix kernel: uhid1: Keyboard, class 0/0, rev 2.00/55.01, addr 4> on usbus0 > Apr 19 03:17:20 brix kernel: ugen0.6: at = usbus0 > Apr 19 03:17:20 brix root: Unknown USB device: vendor 0x06f8 product > 0x2101 bus uhub7 > Apr 19 03:17:20 brix kernel: uhid2: SOUND BAR USB, class 0/0, rev 1.10/1.00, addr 5> on usbus0 > Apr 19 03:17:20 brix kernel: uhid3: 1.10/0.01, addr 2> on usbus0 > Apr 19 03:17:20 brix kernel: ums0: rev 2.00/5.00, addr 3> on usbus0 > Apr 19 03:17:20 brix kernel: ums0: 16 buttons and [XYZT] coordinates = ID=3D0 > Apr 19 03:17:20 brix kernel: uaudio0: SOUND BAR USB, class 0/0, rev 1.10/1.00, addr 5> on usbus0 > Apr 19 03:17:20 brix kernel: uaudio0: Play: 48000 Hz, 2 ch, 16-bit > S-LE PCM format, 2x8ms buffer. > Apr 19 03:17:20 brix kernel: uaudio0: Play: 44100 Hz, 2 ch, 16-bit > S-LE PCM format, 2x8ms buffer. > Apr 19 03:17:20 brix kernel: uaudio0: No recording. > Apr 19 03:17:20 brix kernel: uaudio0: No MIDI sequencer. > Apr 19 03:17:20 brix kernel: pcm1: on uaudio0 > Apr 19 03:17:20 brix kernel: uaudio0: HID volume keys found. > Apr 19 03:18:32 brix kernel: ugen0.2: at usbus0 = (disconnected) > Apr 19 03:18:32 brix kernel: uhub7: at uhub0, port 4, addr 1 = (disconnected) Is this a Haswell Brix? I have something similar on my Haswell box, at = boot time it goes: Timecounter "TSC-low" frequency 1247142608 Hz quality 1000 Root mount waiting for: usbus1 usbus0 uhub0: 13 ports with 13 removable, self powered Root mount waiting for: usbus1 usbus0 uhub1: 3 ports with 3 removable, self powered Root mount waiting for: usbus1 usbus0 ugen1.2: at usbus1 uhub2: = on usbus1 uhub2: 8 ports with 8 removable, self powered usb_alloc_device: set address 2 failed (USB_ERR_TIMEOUT, ignored) usbd_setup_device_desc: getting device descriptor at addr 2 failed, = USB_ERR_TIMEOUT Root mount waiting for: usbus0 usbd_req_re_enumerate: addr=3D2, set address failed! (USB_ERR_TIMEOUT, = ignored) Root mount waiting for: usbus0 usbd_setup_device_desc: getting device descriptor at addr 2 failed, = USB_ERR_TIMEOUT Root mount waiting for: usbus0 Root mount waiting for: usbus0 usbd_req_re_enumerate: addr=3D2, set address failed! (USB_ERR_TIMEOUT, = ignored) usbd_setup_device_desc: getting device descriptor at addr 2 failed, = USB_ERR_IOERROR Root mount waiting for: usbus0 usbd_req_re_enumerate: addr=3D2, set address failed! (USB_ERR_TIMEOUT, = ignored) usbd_setup_device_desc: getting device descriptor at addr 2 failed, = USB_ERR_TIMEOUT Root mount waiting for: usbus0 Root mount waiting for: usbus0 usbd_req_re_enumerate: addr=3D2, set address failed! (USB_ERR_TIMEOUT, = ignored) usbd_setup_device_desc: getting device descriptor at addr 2 failed, = USB_ERR_TIMEOUT ugen0.2: at usbus0 (disconnected) uhub_reattach_port: could not allocate new device Root mount waiting for: usbus0 Root mount waiting for: usbus0 Root mount waiting for: usbus0 Root mount waiting for: usbus0 usbd_req_re_enumerate: addr=3D2, set address failed! (USB_ERR_IOERROR, = ignored) Root mount waiting for: usbus0 ugen0.2: at usbus0 umass0: on usbus0 umass0: SCSI over Bulk-Only; quirks =3D 0xc101 umass0:1:0:-1: Attached to scbus1 Root mount waiting for: usbus0 Root mount waiting for: usbus0 Root mount waiting for: usbus0 Root mount waiting for: usbus0 usbd_req_re_enumerate: addr=3D3, set address failed! (USB_ERR_IOERROR, = ignored) ugen0.3: at usbus0 umass1: on usbus0 umass1: SCSI over Bulk-Only; quirks =3D 0xc101 umass1:2:1:-1: Attached to scbus2 Trying to mount root from zfs:zroot/ROOT/stable10-r281866 []... ugen0.2: at usbus0 (disconnected) umass0: at uhub0, port 10, addr 2 (disconnected) (probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 00 00 00 24 00 (probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an = error (probe0:umass-sim0:0:0:0): Retrying command (probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 00 00 00 24 00 (probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an = error (probe0:umass-sim0:0:0:0): Retrying command ugen0.2: at usbus0 umass0: on usbus0 umass0: SCSI over Bulk-Only; quirks =3D 0x0100 umass0:1:0:-1: Attached to scbus1 ugen0.3: at usbus0 (disconnected) umass1: at uhub0, port 11, addr 3 (disconnected) (probe1:umass-sim1:1:0:0): INQUIRY. CDB: 12 00 00 00 24 00 (probe1:umass-sim1:1:0:0): CAM status: CCB request completed with an = error (probe1:umass-sim1:1:0:0): Retrying command (probe1:umass-sim1:1:0:0): INQUIRY. CDB: 12 00 00 00 24 00 (probe1:umass-sim1:1:0:0): CAM status: CCB request completed with an = error (probe1:umass-sim1:1:0:0): Retrying command da0 at umass-sim0 bus 0 scbus1 target 0 lun 0 da0: Fixed Direct Access SPC-4 SCSI device da0: Serial Number NAAAAAAA da0: 400.000MB/s transfers da0: 1907729MB (3907029167 512 byte sectors: 255H 63S/T 243201C) da0: quirks=3D0x2 ugen0.3: at usbus0 umass1: on usbus0 umass1: SCSI over Bulk-Only; quirks =3D 0x0100 umass1:2:1:-1: Attached to scbus2 da1 at umass-sim1 bus 1 scbus2 target 0 lun 0 da1: Fixed Direct Access SPC-4 SCSI device da1: Serial Number NBBBBBBB da1: 400.000MB/s transfers da1: 1907729MB (3907029167 512 byte sectors: 255H 63S/T 243201C) da1: quirks=3D0x2 To work around it, I've just put in a random script that waits for ~20 = seconds during boot, to let the USB devices "settle". But it's rather = ugly. I also see something similar when I boot a VMware guest on a Haswell = box, and pass through the USB 3 support. My suspicion is that something is broken in the xhci driver on Haswell. -Dimitry --Apple-Mail=_032339E9-F7D1-43AC-AE92-8D985FA9CD8B Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.27 iEYEARECAAYFAlU4mv4ACgkQsF6jCi4glqOQwACgj/Crkm2MtbYqz35+bIxrgRJI 5+4AoMfHwExdJbOhG7i3DVMFpfeKFjY5 =DyLu -----END PGP SIGNATURE----- --Apple-Mail=_032339E9-F7D1-43AC-AE92-8D985FA9CD8B--