2026-01-28 10:30 PM
Hello Everyone,
I hope this message finds you well. I am currently developing a USB Host application using the STM32H573I-DK and have encountered a persistent Hard Fault issue that I would like to seek your expertise on.
[Environment Information]
Target: STM32H573I-DK
Example: USBPD_SRC_UX_Host_MSC
Stack: Azure RTOS (ThreadX, USBX)
[Detailed Symptom]
A hard fault occurs during initialization or while driving the process thread (msc_process_thread_entry) when connecting a USB MSC device. Debugging revealed abnormal memory access occurring during execution of the _ux_utility_memory_copy function.
[Inquiry]
When implementing USBX Host in this example and the STM32H5 environment, we seek broad advice on potential causes that could trigger memory copy and access errors.
Example Stability: Are there any known issues or patch histories related to USBX memory management or stack configuration in the currently deployed USBPD_SRC_UX_Host_MSC example?
H5 Architecture Characteristics: Are there scenarios where the STM32H573's I-Cache/D-Cache policies, MPU settings, or constraints on the Bus Matrix could impact the behavior of USBX utility functions (e.g., `_ux_utility_memory_copy`)?
Memory Layout and Alignment: Where might a hard fault occur if section placement (RAM region division) or alignment requirements for the USBX system memory pool or MSC dedicated buffer are missing?
Debugging Guide: Please advise if there are any additional registers or logs to check to trace the root cause of _ux_utility_memory_copy referencing an invalid address (e.g., race conditions, pointer corruption, etc.).
Best Regards, Hosung Han