Skip to main content
Graduate
November 6, 2024
Solved

MCU Errata vs HAL, LL

  • November 6, 2024
  • 1 reply
  • 713 views

Hi there,

this is an general question.

Every serious engineer walks thru errata document as it gets published.

So do I now.

Do I have to review every HAL / LL function which may coincide with erratic behaviour?

Is proposed in errata workaround already implemented in HAL / LL ?

    This topic has been closed for replies.
    Best answer by mƎALLEm

    Hello,

    To my knowledge most of the errata are not implemented in the HAL. Few of them are implemented because I think it's generic and implementable in the HAL while others depend on the case and the user usage. 

    Example, this errata for STM32H743 rev Y:

    SofLit_0-1730883669716.png

    Was implemented in system_stm32h7xx.c: 

     

     /* Change the switch matrix read issuing capability to 1 for the AXI SRAM target (Target 7) */
     if((DBGMCU->IDCODE & 0xFFFF0000U) < 0x20000000U)
     {
     /* if stm32h7 revY*/
     /* Change the switch matrix read issuing capability to 1 for the AXI SRAM target (Target 7) */
     *((__IO uint32_t*)0x51008108) = 0x00000001U;
     }

     

    1 reply

    mƎALLEmAnswer
    Technical Moderator
    November 6, 2024

    Hello,

    To my knowledge most of the errata are not implemented in the HAL. Few of them are implemented because I think it's generic and implementable in the HAL while others depend on the case and the user usage. 

    Example, this errata for STM32H743 rev Y:

    SofLit_0-1730883669716.png

    Was implemented in system_stm32h7xx.c: 

     

     /* Change the switch matrix read issuing capability to 1 for the AXI SRAM target (Target 7) */
     if((DBGMCU->IDCODE & 0xFFFF0000U) < 0x20000000U)
     {
     /* if stm32h7 revY*/
     /* Change the switch matrix read issuing capability to 1 for the AXI SRAM target (Target 7) */
     *((__IO uint32_t*)0x51008108) = 0x00000001U;
     }