git: d038463bd269 - main - Make sure the XHCI driver obeys the isochronous scheduling threshold value as given by the XHCI hardware parameters to avoid scheduling isochronous transfers too early.

Jessica Clarke jrtc27 at freebsd.org
Sat Jul 10 19:30:26 UTC 2021


On 10 Jul 2021, at 20:04, Hans Petter Selasky <hselasky at FreeBSD.org> wrote:
> 
> The branch main has been updated by hselasky:
> 
> URL: https://cgit.FreeBSD.org/src/commit/?id=d038463bd269031fa8f13c0951b223bcae02bbca
> 
> commit d038463bd269031fa8f13c0951b223bcae02bbca
> Author:     Hans Petter Selasky <hselasky at FreeBSD.org>
> AuthorDate: 2021-07-10 16:09:56 +0000
> Commit:     Hans Petter Selasky <hselasky at FreeBSD.org>
> CommitDate: 2021-07-10 17:57:52 +0000
> 
>    Make sure the XHCI driver obeys the isochronous scheduling threshold value
>    as given by the XHCI hardware parameters to avoid scheduling isochronous
>    transfers too early.
> 
>    MFC after:      1 week
>    Sponsored by:   NVIDIA Networking
> ---
> sys/dev/usb/controller/xhci.c | 11 ++++++++++-
> sys/dev/usb/controller/xhci.h |  3 +++
> 2 files changed, 13 insertions(+), 1 deletion(-)
> 
> diff --git a/sys/dev/usb/controller/xhci.c b/sys/dev/usb/controller/xhci.c
> index 10e37c97c254..dd64c2d45141 100644
> --- a/sys/dev/usb/controller/xhci.c
> +++ b/sys/dev/usb/controller/xhci.c
> @@ -644,6 +644,9 @@ xhci_init(struct xhci_softc *sc, device_t self, uint8_t dma32)
> 
> 	DPRINTF("HCS2=0x%08x\n", temp);
> 
> +	/* get isochronous scheduling threshold */
> +	sc->sc_ist = XHCI_HCS2_IST(temp);
> +
> 	/* get number of scratchpads */
> 	sc->sc_noscratch = XHCI_HCS2_SPB_MAX(temp);
> 
> @@ -2075,7 +2078,13 @@ xhci_setup_generic_chain(struct usb_xfer *xfer)
> 
> 		x = XREAD4(temp.sc, runt, XHCI_MFINDEX);
> 
> -		DPRINTF("MFINDEX=0x%08x\n", x);
> +		DPRINTF("MFINDEX=0x%08x IST=0x%x\n", x, sc->sc_ist);

This broke amd64 GENERIC with error: use of undeclared identifier ‘sc'

Should this be temp.sc?

Jess



More information about the dev-commits-src-all mailing list