freakishness opened a new pull request, #21573: URL: https://github.com/apache/nuttx/pull/21573
Clear only fetched events to avoid swallowing TC interrupt. *Note: Please adhere to [Contributing Guidelines](https://github.com/apache/nuttx/blob/master/CONTRIBUTING.md).* ## Summary #Clearing an event that is not present in status would swallow an interrupt asserted while the status registers were being read: TC and the last STC/DTC of a block are raised in the same window, so a blanket clear loses TC. ## Impact * New feature added? NO * Impact on user? NO * Impact on build? NO * Impact on hardware? YES (N32H7 DMA driver only) * Impact on documentation? NO * Impact on security? NO * Impact on compatibility? NO * Anything else? None ## Testing * Build Host(s): OS: Windows 11, CPU: Intel, Compiler: arm-none-eabi-gcc(16.2.0) * Target(s): arch/arm, board:[n32h765zil7-stb]:[nsh] * Reproduce: Verified on UART console. Before the fix, the serial port only prints "ABCDE" from n32_start.c (DMA not yet enabled), and NSH console input is unresponsive. After the fix, UART TX/RX works normally and NSH console accepts input correctly. <img width="1370" height="863" alt="图片" src="https://github.com/user-attachments/assets/ea2f593e-42ef-4eb0-8f19-62c46298c388" /> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
