]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFC r356545:
authorhselasky <hselasky@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Thu, 16 Jan 2020 08:53:59 +0000 (08:53 +0000)
committerhselasky <hselasky@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Thu, 16 Jan 2020 08:53:59 +0000 (08:53 +0000)
commit4dc853afcdfbcac39e022815824006ce044f458a
tree687be00e6174d209e7b4a02332dd9beaba1bd2ad
parent3127f596ce77034eae5c35991cf0ab72cab189b7
MFC r356545:
Fix a XHCI driver issue with Intel's Gemini Lake SOC.

Do not configure any endpoint twice, but instead keep track of which
endpoints are configured on a per device basis, and use an evaluate
endpoint context command instead. When changing the configuration make
sure all endpoints get deconfigured and the configured endpoint mask
is reset.

This fixes an issue where an endpoint might stop working if there is
an error and the endpoint needs to be reconfigured as a part of the
error recovery mechanism in the FreeBSD USB stack.

Tested by: Shichun.Ma@dell.com
Sponsored by: Mellanox Technologies

git-svn-id: svn://svn.freebsd.org/base/stable/10@356783 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/dev/usb/controller/xhci.c
sys/dev/usb/controller/xhci.h