[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


    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.

  • Answered via support mail. Closed due to custom hardware specific configuration.
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.