Skip to main content
Visitor II
January 12, 2022
Solved

I find a bug in HAL_ETH_IRQHandler function. the function() skip all the if else,then return. have anyone met this question befor?

  • January 12, 2022
  • 1 reply
  • 1040 views

void HAL_ETH_IRQHandler(ETH_HandleTypeDef *heth)

{

  /* Packet received */

  if (__HAL_ETH_DMA_GET_IT(heth, ETH_DMACSR_RI))

  {

    if (__HAL_ETH_DMA_GET_IT_SOURCE(heth, ETH_DMACIER_RIE))

    {

...

}

}

I have met this question: this function cannot run to any (if else),So IrqHandler cannot clear irq_flag .

so stm32h7 always go to this function ,then my software always crash into this function .

    This topic has been closed for replies.
    Best answer by Imen.D

    Hello @Community member​ ,

    The Ethernet driver has been reworked to fix most known issues.

    Please refer to this post for more details: Ethernet HAL Driver reworked by ST and available in 22Q1 (preview now available on GitHub)

    You can use and review the reworked Ethernet HAL driver and applications, which are available on GitHub (https://github.com/STMicroelectronics/stm32h7xx_hal_driver/pull/16) in the form of a pull request.

    All your feedback are welcome in order to improve our solutions.

    Thanks for your contribution

    When your question is answered, please close this topic by choosing Select as Best. This will help other users find that answer faster.

    Imen

    1 reply

    Imen.DAnswer
    Technical Moderator
    January 12, 2022

    Hello @Community member​ ,

    The Ethernet driver has been reworked to fix most known issues.

    Please refer to this post for more details: Ethernet HAL Driver reworked by ST and available in 22Q1 (preview now available on GitHub)

    You can use and review the reworked Ethernet HAL driver and applications, which are available on GitHub (https://github.com/STMicroelectronics/stm32h7xx_hal_driver/pull/16) in the form of a pull request.

    All your feedback are welcome in order to improve our solutions.

    Thanks for your contribution

    When your question is answered, please close this topic by choosing Select as Best. This will help other users find that answer faster.

    Imen