fixup! fix(core): setup option bytes for STM32U5

tychovrahe/u5/basic_support_revE_200ksprod
tychovrahe 3 months ago
parent a57d64b5fe
commit 5458afd7e0

@ -48,7 +48,6 @@
#endif
#if defined STM32U5A9xx | defined STM32U5G9xx
#define WRP_LOCKED_VALUE 0x7F00FF00
#define WRP_DEFAULT_VALUE 0xFF00FFFF
#define SEC_WM1R1_DEFAULT_VALUE 0xFF00FF00
#define SEC_WM1R2_DEFAULT_VALUE 0x7F007F00
@ -58,7 +57,6 @@
#define SEC_AREA_2_PAGE_START 0xFF
#define SEC_AREA_2_PAGE_END 0x00
#elif defined STM32U585xx
#define WRP_LOCKED_VALUE 0x7F80FF80
#define WRP_DEFAULT_VALUE 0xFF80FFFF
#define SEC_WM1R1_DEFAULT_VALUE 0xFF80FF80
#define SEC_WM1R2_DEFAULT_VALUE 0x7F807F80
@ -71,6 +69,13 @@
#error Unknown MCU
#endif
#define WRP_LOCKED_VALUE \
((WRP_DEFAULT_VALUE & \
~(FLASH_WRP1AR_UNLOCK_Msk | FLASH_WRP1AR_WRP1A_PSTRT_Msk | \
FLASH_WRP1AR_WRP1A_PEND_Msk)) | \
(WANT_WRP_PAGE_START << FLASH_WRP1AR_WRP1A_PSTRT_Pos) | \
(WANT_WRP_PAGE_END << FLASH_WRP1AR_WRP1A_PEND_Pos))
#define FLASH_OPTR_VALUE \
(FLASH_OPTR_TZEN | FLASH_OPTR_PA15_PUPEN | FLASH_OPTR_nBOOT0 | \
FLASH_OPTR_SRAM3_ECC | FLASH_OPTR_BKPRAM_ECC | FLASH_OPTR_DUALBANK | \
@ -130,8 +135,7 @@ secbool flash_check_option_bytes(void) {
}
#if PRODUCTION
if (FLASH->WRP1AR !=
(WRP_LOCKED_VALUE | WANT_WRP_PAGE_START | (WANT_WRP_PAGE_END << 16))) {
if (FLASH->WRP1AR != WRP_LOCKED_VALUE) {
return secfalse;
}
#else
@ -199,8 +203,7 @@ uint32_t flash_set_option_bytes(void) {
FLASH->SECWM2R2 = FLASH_SECWM2R2_VALUE;
#if PRODUCTION
FLASH->WRP1AR =
WRP_LOCKED_VALUE | WANT_WRP_PAGE_START | (WANT_WRP_PAGE_END << 16);
FLASH->WRP1AR = WRP_LOCKED_VALUE;
#else
FLASH->WRP1AR = WRP_DEFAULT_VALUE;
#endif

Loading…
Cancel
Save