[EMLOAD] USB driver initialization hang with Tx/Rx FIFO register write for STM32

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [EMLOAD] USB driver initialization hang with Tx/Rx FIFO register write for STM32

    Hi,

    We are facing an issue in USB initialization while working with USB stack in EMLOAD for STM32. Sometimes EMLOAD fails to detect the connected USB.
    While debugging we have found that in USB Host init, the register write to data FIFO is not getting effect.
    We think the issue is due to the Phy Clock restart happening in USB Host init where we write to PCGCCTL register (data FIFO register access happening few lines after that).
    In STM32F429 user manual, it is mentioned that the PHY domain has to be reset for proper operation when we dynamically change the PHY selection bits in USB configuration registers or once a new clock is selected.
    So we did a core soft reset(GRSTCTL->CSRST) after the Phy Clock restart and looks like the issue is resolved.
    Please refer the EMLOAD USB stack and give your valuable comments on the fix we did to make it work.


    Regards,
    Pratheesh