STM32H7 USB DFU firmware boodloader bug
Hi,
We are using STM32H7, and we found that the following instruction doesn't work:
/* Test if user code is programmed starting from address 0x08020000 */
if (((*(__IO uint32_t *) USBD_DFU_APP_DEFAULT_ADD) & 0x2FFC0000) == 0x20000000) <--- It is always FALSE. Despite there is user code!
{
/* Jump to user application */
JumpAddress = *(__IO uint32_t *) (USBD_DFU_APP_DEFAULT_ADD + 4);
JumpToApplication = (pFunction) JumpAddress;
/* Initialize user application's Stack Pointer */
__set_MSP(*(__IO uint32_t *) USBD_DFU_APP_DEFAULT_ADD);
JumpToApplication();
}We've tried with the mask: & 0x2FFC0000 and & 0x2FFE0000
What could be the issue? Another mask is needed for stm32H7?
Thank you
BR
