From owner-svn-src-all@freebsd.org Thu Aug 20 15:51:16 2020 Return-Path: Delivered-To: svn-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id DE2893C1723; Thu, 20 Aug 2020 15:51:16 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BXTdw51Wpz4ZVg; Thu, 20 Aug 2020 15:51:16 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from comporellon.tachypleus.net (unknown [IPv6:2601:405:4a00:acd:499:5df6:b147:c188]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) (Authenticated sender: nwhitehorn/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 6497C2130B; Thu, 20 Aug 2020 15:51:16 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Subject: Re: svn commit: r364379 - head/sys/dev/usb/controller To: Hans Petter Selasky , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <202008191150.07JBoCjh096637@repo.freebsd.org> From: Nathan Whitehorn Autocrypt: addr=nwhitehorn@freebsd.org; keydata= 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 Message-ID: Date: Thu, 20 Aug 2020 11:51:15 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 MIME-Version: 1.0 In-Reply-To: <202008191150.07JBoCjh096637@repo.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Aug 2020 15:51:16 -0000 Either this or r364347 has broken Yubikeys (at least Yubikey 4) plugged into XHCI ports, which are completely invisible to the USB stack after the change. I'm going to try to debug further, but wanted to give you a heads-up in case you can get there first. -Nathan On 2020-08-19 07:50, Hans Petter Selasky wrote: > Author: hselasky > Date: Wed Aug 19 11:50:12 2020 > New Revision: 364379 > URL: https://svnweb.freebsd.org/changeset/base/364379 > > Log: > Avoid evaluating the XHCI control endpoint context. > > The XHCI specification says that the XHCI controller should detect > reception of the USB device descriptors, and automatically update > the max packet size in the control endpoint context. > > Differential Revision: https://reviews.freebsd.org/D26104 > Reviewed by: kp@ > MFC after: 1 week > Sponsored by: Mellanox Technologies > > Modified: > head/sys/dev/usb/controller/xhci.c > head/sys/dev/usb/controller/xhci.h > > Modified: head/sys/dev/usb/controller/xhci.c > ============================================================================== > --- head/sys/dev/usb/controller/xhci.c Wed Aug 19 10:40:02 2020 (r364378) > +++ head/sys/dev/usb/controller/xhci.c Wed Aug 19 11:50:12 2020 (r364379) > @@ -2398,8 +2398,6 @@ xhci_configure_endpoint(struct usb_device *udev, > > /* store endpoint mode */ > pepext->trb_ep_mode = ep_mode; > - /* store bMaxPacketSize for control endpoints */ > - pepext->trb_ep_maxp = edesc->wMaxPacketSize[0]; > usb_pc_cpu_flush(pepext->page_cache); > > if (ep_mode == USB_EP_MODE_STREAMS) { > @@ -2929,17 +2927,6 @@ xhci_transfer_insert(struct usb_xfer *xfer) > return (USB_ERR_NOMEM); > } > > - /* check if bMaxPacketSize changed */ > - if (xfer->flags_int.control_xfr != 0 && > - pepext->trb_ep_maxp != xfer->endpoint->edesc->wMaxPacketSize[0]) { > - > - DPRINTFN(8, "Reconfigure control endpoint\n"); > - > - /* force driver to reconfigure endpoint */ > - pepext->trb_halted = 1; > - pepext->trb_running = 0; > - } > - > /* check for stopped condition, after putting transfer on interrupt queue */ > if (pepext->trb_running == 0) { > struct xhci_softc *sc = XHCI_BUS2SC(xfer->xroot->bus); > @@ -3917,8 +3904,10 @@ xhci_configure_reset_endpoint(struct usb_xfer *xfer) > if (!(sc->sc_hw.devs[index].ep_configured & mask)) { > sc->sc_hw.devs[index].ep_configured |= mask; > err = xhci_cmd_configure_ep(sc, buf_inp.physaddr, 0, index); > - } else { > + } else if (epno != 1) { > err = xhci_cmd_evaluate_ctx(sc, buf_inp.physaddr, index); > + } else { > + err = 0; > } > > if (err != 0) { > > Modified: head/sys/dev/usb/controller/xhci.h > ============================================================================== > --- head/sys/dev/usb/controller/xhci.h Wed Aug 19 10:40:02 2020 (r364378) > +++ head/sys/dev/usb/controller/xhci.h Wed Aug 19 11:50:12 2020 (r364379) > @@ -393,7 +393,6 @@ struct xhci_endpoint_ext { > uint8_t trb_halted; > uint8_t trb_running; > uint8_t trb_ep_mode; > - uint8_t trb_ep_maxp; > }; > > enum { >