On 2019-12-27 02:50, [email protected] wrote:
Hi HPS,
XHCI spec just tells:
The configure Endpoint command TRB evalutes the bandwidth and resouce 
reqirement of the endpoints selected by the command.
So I don't think this command can be call to one endpoint several times.

Hi,

When you have alternate interface settings for the same endpoint, how can you then update the max packet size, if the endpoint can't be re-configured?

Are we missing some XHCI command before configure, like stop endpoint?

How, I tried to call configure endpoint with DC (disable configure), it can't 
help.

From XHCI spec's view, "reset Endpoint command" is enough to stop xfer.


In this piece of code, does it help to stop the endpoint before you configure?

        /* configure endpoint */

        err = xhci_configure_endpoint_by_xfer(xfer);

        if (err != 0) {
                XHCI_CMD_UNLOCK(sc);
                return (err);
        }

        /*
         * Get the endpoint into the stopped state according to the
         * endpoint context state diagram in the XHCI specification:
         */

        err = xhci_cmd_stop_ep(sc, 0, epno, index);

        if (err != 0)
                DPRINTF("Could not stop endpoint %u\n", epno);

Thanks for notifying us about this issue.

--HPS
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "[email protected]"

Reply via email to