cancel
Showing results for 
Search instead for 
Did you mean: 

SBSFU on STM32H755

tstokes
Associate II

I am trying to get SBSFU (1_image) running on the STM32H755. I'm working from um2262 and this post https://community.st.com/t5/stm32-mcus-security/sbsfu-porting-to-a-custom-board/m-p/200240/highlight/true#M2917

 

My setup is a NUCLEO-H755zi, STM32CubeToolchain and I'm starting from the NUCLEO-H753 example.

For now I am just trying to get the M7 running and will aim to add the M4 later. (M4 boot is disabled in the option bytes). Looking back at my diff all that has changes I've made from the example are:
- defines removed STM32H753xx and added STM32H755xx and CORE_CM7.
- replace system_stm32h7xx.c with system_stm32h7xx_dualcore_bootcm7_cm4gated.c

- app_sfu.h I've uncommented SFU_VERBOSE_DEBUG_MODE and SECBOOT_DISABLE_SECURITY_IPS

 

Having flashed the SBSFU.elf via CubeProgrammer and gone through the steps in 8.3 of um2262, there is no obvious UART connection or sign of life from the firmware.

I'm sure I'm missing something basic here. Any thoughts much appreciated.

 

Edit 1
The first thing I'd missed was section 3.3 of AN5056 which covers exactly the port I'm trying to make. 
As a result I've added in the change from LDO to SMPS and added the check of BCM4. 

Edit 2

Issue is now resolved. Writing the flash was failing. I had to reset my option bytes according to :
https://community.st.com/t5/stm32-mcus-security/enabling-pcrop-with-rdp-level-0-causes-board-to-crash/m-p/199334/highlight/true#M2883

I'm not sure if there is an error in the description of PROT_AREA_END[1-2] in cube programmer. It says "Deactivation of PCROP can be done by enbaling DMEP1 bit and changing RDP from level 1 to level 0 while putting end address greater than start address". From my experience end address needs to be less than start address. 

1 ACCEPTED SOLUTION

Accepted Solutions

Issue is now resolved. Writing the flash was failing. I had to reset my option bytes according to :
https://community.st.com/t5/stm32-mcus-security/enabling-pcrop-with-rdp-level-0-causes-board-to-crash/m-p/199334/highlight/true#M2883

I'm not sure if there is an error in the description of PROT_AREA_END[1-2] in cube programmer. It says "Deactivation of PCROP can be done by enbaling DMEP1 bit and changing RDP from level 1 to level 0 while putting end address greater than start address". From my experience end address needs to be less than start address. 

tstokes_0-1732552314492.png

 

 

View solution in original post

4 REPLIES 4
STea
ST Employee

Hello @tstokes ,

I'm glad you got it working just I have two requests:

  1. can you give a detailed description (edit 2 of you post should be sufficient) of the solution in a separate comment marking it with the accept as solution button for better visibility.
  2. can you share with us a screenshot of the problem visualized with cube programmer and mention the version you are using to try and fix this error message 

Regards

 

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Issue is now resolved. Writing the flash was failing. I had to reset my option bytes according to :
https://community.st.com/t5/stm32-mcus-security/enabling-pcrop-with-rdp-level-0-causes-board-to-crash/m-p/199334/highlight/true#M2883

I'm not sure if there is an error in the description of PROT_AREA_END[1-2] in cube programmer. It says "Deactivation of PCROP can be done by enbaling DMEP1 bit and changing RDP from level 1 to level 0 while putting end address greater than start address". From my experience end address needs to be less than start address. 

tstokes_0-1732552314492.png

 

 

Hello @tstokes ,

can you check the version of cubeProgrammer that you are currently using?
Regards

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Hi @STea 

Sure. It's 2.17

tstokes_0-1732552579465.png