-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Add NUCLEO-H7S3L8 BSP #2960
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
base: master
Are you sure you want to change the base?
Add NUCLEO-H7S3L8 BSP #2960
Conversation
Signed-off-by: HiFiPhile <[email protected]>
Signed-off-by: HiFiPhile <[email protected]>
Signed-off-by: HiFiPhile <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for your PR, I also have this board. I will try to troubleshoot it later. Just merge master to get ci passed.
Is it usable for the board in its current state? |
If you use it in device mode yes. |
Unfortunately I need Host mode:( |
As I can say, there are problems with the board itself. Even examples code sometimes doesn't work, because of the device's USB controller state. I think it breaks some state inside itself, that's why it happens. Only powering it off for ~10 seconds helps. I don't know why is that, but it's true. I can prove it on my board. |
Signed-off-by: HiFiPhile <[email protected]>
Signed-off-by: HiFiPhile <[email protected]>
Signed-off-by: HiFiPhile <[email protected]>
This comment was marked as outdated.
This comment was marked as outdated.
Signed-off-by: HiFiPhile <[email protected]>
Signed-off-by: HiFiPhile <[email protected]>
Since hcd_dwc2 and usbh changes are generic I've excluded them from this PR, will address them separately. |
Signed-off-by: HiFiPhile <[email protected]>
Signed-off-by: HiFiPhile <[email protected]>
Signed-off-by: HiFiPhile <[email protected]>
Been testing this on NUCLEO-H7S3L8 along with some of your DWC2 changes in separate PRs. I left some review comments on those other PRs, just minor things, but I wanted to also comment on this one and say thank you so much for the great work on H7S3L8 and DWC2. With a few tweaks for my specific requirements, it's working flawlessly and my basic CDC HS single endpoint setup is already hitting 18MB/s in a super quick benchmark task I wrote, with the only real optimisation I've had to do being changing the 512 byte buffers to 2kb! Excited to make some more tweaks and see how fast I can get it to go. The project I'm using this for is part of my final year project at university - and I had already wasted a lot of time with ST's USB stack before realising it was fundamentally broken and almost unusable (I think its interaction with the state machine is messed up or something) - so I cannot express my appreciation enough, these PRs have allowed me to escape ST's stack and move to TinyUSB, potentially saving my project 😄 |
Describe the PR
Add NUCLEO-H7S3L8 support.
Status:
Host issues are generic and not limited to STM32H7RS and will be addressed separately
Detach is not detected, resulting_usbh_devices
overflow.Can be fixed by add GINTSTS_DISCINT
Random assert inedpt_find_opened
inhcd_edpt_xfer
Seems like when there are failed transfers events become mismatched. In the end a transfer is called with addr=1 but in received event addr=0.
Occasional assert
TU_ASSERT(ep_id < CFG_TUH_DWC2_ENDPOINT_MAX);
with quickly connection/disconnection.A transfer with addr 0 finished after set address, maybe old transfer is not correctly aborted ?
tuh_descriptor_get_device(addr0...)
when the port is bouncing, can be resolved by put_dev0.enumerating = 1;
after debouncing delay, like inENUM_ADDR0_DEVICE_DESC
Additional context
Wasted 2 hours in EXTI as the offset in SVD file is wrong !
Corrected STM32H7S.svd.zip