-
Notifications
You must be signed in to change notification settings - Fork 8.3k
drivers: usb: Prevent from perpetual locked state #89982
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
drivers: usb: Prevent from perpetual locked state #89982
Conversation
|
Hello @ptrcr, and thank you very much for your first pull request to the Zephyr project! |
acf96c2 to
a2960c3
Compare
|
Is this intentional that it's targeting the 3.7 branch? We would typically get the fix in the |
The base branch was changed.
Sorry, I did not notice it at all. @ptrcr |
a2960c3 to
b38fd19
Compare
|
Thanks @jfischer-no :) |
The USB CDC driver is unable to process any bulk IN transfers after receiving spurious 'Clear Feature - Endpoint Halt' request from host due to perpetual locked state caused by previously scheduled transfer, that will never be finished, as the endpoint's state is set to NAK. Fix by ignoring spurious request. Signed-off-by: Piotr Ciura <[email protected]>
b38fd19 to
a35ef79
Compare
|
Sorry @jfischer-no I did not notice the edited version of your comment and rebased again. |
|
@kartben Should I open another Pull Request to v3.7 branch once this PR is merged? |
With the GitHub labels I just added, all the backport pull requests should be automatically created when this PR merges! |
|
| return -EINVAL; | ||
| } | ||
|
|
||
| if (!ep_state->ep_stalled) { |
This comment was marked as outdated.
This comment was marked as outdated.
Sorry, something went wrong.
|
Hi @ptrcr! To celebrate this milestone and showcase your contribution, we'd love to award you the Zephyr Technical Contributor badge. If you're interested, please claim your badge by filling out this form: Claim Your Zephyr Badge. Thank you for your valuable input, and we look forward to seeing more of your contributions in the future! 🪁 |



The USB CDC driver is unable to process any bulk IN transfers after receiving 'Clear Feature - Endpoint Halt' request from host due to perpetual locked state caused by previously scheduled transfer, that will never be finished, as the endpoint's state is set to NAK. Fix by cancelling the transfer and releasing the resources blocking from scheduling next transfer upon receiving 'Clear Feature - Endpoint Halt' request.
Fixes #89990