-
Notifications
You must be signed in to change notification settings - Fork 6.1k
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
STM32H743 + more: DMA stream locked when transferring data to/from USART #72790
Comments
Hi @HelligeChris! We appreciate you submitting your first issue for our open-source project. 🌟 Even though I'm a bot, I can assure you that the whole community is genuinely grateful for your time and effort. 🤖💙 |
Please use our bug template when reporting bugs. You need to edit this issue to include the information requested in https://github.com/zephyrproject-rtos/zephyr/blob/main/.github/ISSUE_TEMPLATE/001_bug_report.md |
Hey, I reformatted the issue, though the "Steps to reproduce" section leaves much to be desired... |
By this you mean another UART DMA transfer or another DMA transfer from any other device? |
okey, I just noticed
So it's the 2nd case right? |
Hi @ajarmouni-st, from what I can see in the errata it shouldn't matter if it's a UART DMA transfer or DMA transfer to the DAC. Since both the UART and DAC request the DMA to transfer data, though we only noticed it when using the DMA to update the DAC while the also having the UART running. This is properly because the DAC was requesting DMA transfers so quickly. |
Describe the bug
Using the UART async driver, when a USART is issuing a DMA request to transfer data, if a concurrent transfer occurs, the requested transfer may not be served, and the DMA stream may stay locked. This causes the UART async driver to lock up and stop sending packages (uart_tx keeps reporting EBUSY).
To Reproduce
Using the board stm32h743Xi.dtsi
Steps to reproduce the behavior:
Expected behavior
The UART kept sending messages without locking up
Impact
We used a workaround where we manually set bit 20 in DMA_SxCR on UART streams.
Environment (please complete the following information):
Additional context
Issue is described in the stm32h7 errata section 2.20.6 and effect the following microcontrollers:
The text was updated successfully, but these errors were encountered: