cancel
Showing results for 
Search instead for 
Did you mean: 

RDP regression from Level 1 to level 0

Akhil0812
Visitor

Hi teams,
CPU: STM32U0
Current RDP level: Level 1
OEM1 RDP lock: Enabled.
I had set the 128bit OEM1 key to the OEM key registers  [FLASH_OEM1KEYWyR ]accordingly, and the written OEM1 key values was verified using their CRC values by reading  OEM1KEYCRC register.
Now I am trying to make the regression from level 1 to level 0 according to the user manual description [section: 3.5.1 FLASH read protection (RDP)].

Akhil0812_1-1757927296932.png

 

But the operation was failed using my source code. Which is attached below

#define STM32U0_DBGMCU_BASE 0x40015800 // Accessible to the software via the APB access port AP0
#define STM32U0_DBGMCU_DBG_AUTH_HOST (STM32U0_DBGMCU_BASE + 0x100) // Debug authentication mailbox host register

 

Akhil0812_0-1757927087750.png

Could you please clarify the following doubts,
1. The unlock sequence says, debug access port 1 has to be used for programming the 128-bit OEM1 key in the DBGMCU_DBG_AUTH_HOST register,

Akhil0812_2-1757927466101.png

but when I checked the  DBGMCU_DBG_AUTH_HOST register base, it says

Akhil0812_3-1757927536810.png

So, what is the base address for DBGMCU_DBG_AUTH_HOST register and which AP should be selected during OEM key write process.
2. After connecting the target from the following settings via STM32 Cube programmer. I have tried to change RDP level using secure programming page.
Akhil0812_4-1757927751537.jpeg

Akhil0812_5-1757927905055.png

Akhil0812_6-1757927970665.jpeg

What could be the reason behind this?
3. If I select the AP to 1, target connection is not feasible and the following error prompt was occurred.

Akhil0812_7-1757928267747.png

Akhil0812_8-1757928275201.png

 

Right now the flash memory is not accessible, please let me know how can I recover from this issue.

Thanks
Akhil

 

 

0 REPLIES 0