From owner-freebsd-usb@freebsd.org Sat Aug 27 16:41:24 2016 Return-Path: Delivered-To: freebsd-usb@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DD930B775B2 for ; Sat, 27 Aug 2016 16:41:24 +0000 (UTC) (envelope-from kungfujesus06@gmail.com) Received: from mail-lf0-x22d.google.com (mail-lf0-x22d.google.com [IPv6:2a00:1450:4010:c07::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4F6BC6BB for ; Sat, 27 Aug 2016 16:41:24 +0000 (UTC) (envelope-from kungfujesus06@gmail.com) Received: by mail-lf0-x22d.google.com with SMTP id b199so75727456lfe.0 for ; Sat, 27 Aug 2016 09:41:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to; bh=xWPaSSHb3aSL3pCCkdNkDjRFMTi3SWgp/HJOujUd9Io=; b=w839gZj3A2WvJ3w2mhc7r3wJ1OqMKYjFnFY9oBssjvYz23Bd9xkkC1zjqxZYI/CeWt XFc37VSrj4Y5J1wKBZ3cTNX+j8xXJVdfMJK6qNiBbEiEYxGTaIv7EWmjtoAOrMkQS8VH yWkC9VbPXMeNAEovcnmpEFhgwJxE8C0GF8NypScH6YBmlSVRL7ug0UmdTS2F5Rd1Mavd 6D3XyDzvmvIdr5nhgSi5qTb6p7iY+aGeYVKKI4Zm5HF4I/9o4lN4ehGwF+lhy90LNFxe fTiaC6zBgjyD1Am9fWKkn+Za3jN8M/hSpoUhrbIWWbBJ84RQeECyGF08a7JBBOyJBCmC TE7A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=xWPaSSHb3aSL3pCCkdNkDjRFMTi3SWgp/HJOujUd9Io=; b=J6j8A9s8bzfmw03kow0MDi+qXTi/Bv17B3l2GEMMURxbS1RIMrkLUvQYhDrPXhTi9O qvQQOB4QjIUaryxUi8XoQXdToxnlYGZNwCLxRFBuG2zdweB87RcEnlFGbF+9Adsssiyq 5suovXzDwS6oBbnjoJR/ZEU6IviWDTGKxCW5ltfvd6XL2RzVz/MjEmBQ++j99Sk2DFB+ vVlaOI9noOno3PkJC8r97hE6LzC4XroD3rFCMwlZ0d0H4aRjO2MFeov0WP2PEqqGvYhE YWI7ZxVaIzAYRVfvh1as8mxlRpn7OemSIQooM9wPMn6RKMdfl07d/nc8rvvYkvuLnjkV 30wg== X-Gm-Message-State: AE9vXwP2EqWHi2dAhhJILp3nXqJ/RXo/nBYbQJK1y2IUz5dQH6N3occW2ReBYxHGIdZXmyjO7VSn8Ie06DE9xA== X-Received: by 10.46.32.203 with SMTP id g72mr2895831lji.30.1472316082151; Sat, 27 Aug 2016 09:41:22 -0700 (PDT) MIME-Version: 1.0 Received: by 10.25.30.83 with HTTP; Sat, 27 Aug 2016 09:41:21 -0700 (PDT) From: Adam Stylinski Date: Sat, 27 Aug 2016 12:41:21 -0400 Message-ID: Subject: USB 3.0 devices negotiate to spd=HIGH for all ports To: freebsd-usb@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.22 X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 27 Aug 2016 16:41:25 -0000 Hello, I definitely have a USB 3.0 controller that is being recognized by XHCI: [adam@nasbox ~]$ sudo usbconfig ugen0.1: at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA) ugen2.1: at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA) ugen1.1: at usbus1, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA) ugen3.1: at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA) ugen4.1: at usbus4, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA) ugen5.1: at usbus5, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA) ugen7.1: at usbus7, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA) ugen6.1: at usbus6, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA) ugen8.1: at usbus8, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA) ugen0.2: at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (200mA) xhci0@pci0:3:0:0: class=0x0c0330 card=0x70231849 chip=0x70231b6f rev=0x01 hdr=0x00 vendor = 'Etron Technology, Inc.' device = 'EJ168 USB 3.0 Host Controller' class = serial bus subclass = USB xhci1@pci0:4:0:0: class=0x0c0330 card=0x70231849 chip=0x70231b6f rev=0x01 hdr=0x00 vendor = 'Etron Technology, Inc.' device = 'EJ168 USB 3.0 Host Controller' class = serial bus subclass = USB However, when I connect a USB 3.0 device into a USB 3.0 port, it only gives me spd=HIGH. This is a Sandisk CZ80, but I've other devices in the past and have had the same behavior. Plugging a device in with hw.usb.xhci.debug=1 doesn't appear to print too many useful things, at least not to an end user. I won't yet paste the full output, but it looks something like this: xhci_transfer_insert: qh_pos = 2 xhci_check_transfer: slot=1 epno=3 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 xhci_check_transfer: TD is last xhci_check_transfer: slot=1 epno=3 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 xhci_device_generic_enter: xhci_setup_generic_chain_sub: NTRB=1 xhci_setup_generic_chain_sub: LINK=0x241ff800 xhci_setup_generic_chain: first=0xfffff800241ff980 last=0xfffff800241ff980 xhci_device_generic_start: xhci_transfer_insert: qh_pos = 2 xhci_check_transfer: slot=1 epno=4 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 xhci_check_transfer: TD is last xhci_check_transfer: slot=1 epno=4 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 xhci_device_generic_enter: xhci_setup_generic_chain_sub: NTRB=1 xhci_setup_generic_chain_sub: LINK=0x55fc6a300 xhci_setup_generic_chain: first=0xfffff8055fc6a480 last=0xfffff8055fc6a480 xhci_device_generic_start: xhci_transfer_insert: qh_pos = 0 xhci_check_transfer: slot=1 epno=3 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 xhci_check_transfer: TD is last xhci_check_transfer: slot=1 epno=3 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 xhci_device_generic_enter: xhci_setup_generic_chain_sub: NTRB=1 xhci_setup_generic_chain_sub: LINK=0x3d958d000 xhci_setup_generic_chain: first=0xfffff803d958d180 last=0xfffff803d958d180 xhci_device_generic_start: xhci_transfer_insert: qh_pos = 1 xhci_check_transfer: slot=1 epno=3 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 xhci_check_transfer: TD is last xhci_check_transfer: slot=1 epno=3 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 xhci_device_generic_enter: xhci_setup_generic_chain_sub: NTRB=1 xhci_setup_generic_chain_sub: LINK=0x7d676f000 xhci_setup_generic_chain: first=0xfffff807d676f180 last=0xfffff807d676f180 xhci_device_generic_start: xhci_transfer_insert: qh_pos = 0 xhci_check_transfer: slot=1 epno=4 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 xhci_check_transfer: TD is last xhci_check_transfer: slot=1 epno=4 stream=256 remainder=0 status=1 xhci_check_transfer: stream_id=0 What can I do to end this frustrating issue of USB 2.0 only-ness?