Skip to content
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

Updating driver to usb-device 0.3.0 #39

Merged
merged 3 commits into from
Nov 18, 2023

Conversation

ryan-summers
Copy link
Member

This PR bumps the usb-device version used to 0.3.0, which I just released earlier today. I've tested these changes on Stabilizer with a USB-CDC-ACM port and verified things work as expected.

Most of the changes are from rustfmt here.

@Disasm
Copy link
Member

Disasm commented Nov 14, 2023

Thanks! I merged a PR which enforces rustfmt checks: #40
Could you rebase your PR to make the diff simpler?

@ryan-summers
Copy link
Member Author

Should be much smaller now, thanks for the rustfmt checks! :)

@ryan-summers ryan-summers requested a review from Disasm November 15, 2023 09:51
@ryan-summers
Copy link
Member Author

Ping back over to @Disasm - if you don't have time, I'll merge and release later today/this week, so no worries. Thanks for helping!

@Disasm
Copy link
Member

Disasm commented Nov 15, 2023

Hi! I started testing the proposed changes to the driver with the variety of boards I have. The test plan is quite big and it also includes #25 which I wanted to integrate before the 0.3.0 release. So far testing is complete by ~25%. If you think that the release should be prioritized, then I can prioritize testing of this update, but otherwise my plan is to finish testing on weekend this or next week.

@ryan-summers
Copy link
Member Author

Hmm, personally I'd be more inclined to release early and often, and we can add in that support once its fully tested. It won't change any of the API, so it would be simple enough to include that in a patch release. What are your thoughts on that?

@Disasm
Copy link
Member

Disasm commented Nov 15, 2023

That's what I want to make sure: that usb-device 0.3.0 is fully tested together with this driver :) Ok, I will test this update next, then let's make a new release of synopsys-usb-otg and then I'll proceed with other updates.

@Disasm
Copy link
Member

Disasm commented Nov 18, 2023

Test results:

  • now one of the test_class tests fails because isochronous endpoints are not implemented
  • serial test fails with timeout for HighSpeed devices (not sure yet what is the reason, may be a regression in usbd-serial)
  • compliance tests fail (tests 9.4, 9.9, 9.21) - all these tests failed before the update
  • enumeration fails with FS peripheral on STM32F723 (STM32F723 example with OTG_FS doesn't work with v0.2.4 #24)
  • HighSpeed devices fail to pass the compliance tests -- same as before the update

@Disasm
Copy link
Member

Disasm commented Nov 18, 2023

I found that serial test behavior depends on the USB port type used: test passes if USB 2.0 port is used, fails if USB 3.0 port is used. And this is also a bug which was present in older versions of synopsys-usb-otg.

@Disasm Disasm merged commit 1052d1a into stm32-rs:master Nov 18, 2023
3 checks passed
@ryan-summers ryan-summers deleted the feature/usb-device-bump branch November 19, 2023 17:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants