cancel
Showing results for 
Search instead for 
Did you mean: 

what should happens when the USB-DFU sets CRP and then flashes an image?

abhiran
Associate
Posted on March 19, 2015 at 17:16

I am wondering if this was expected.

I use the DFU-USB image to jump to an app on 0x800c000, but before jumping it sets the RDP/CRP level to 1 within it's main().

Then I use the Dfuse demo app to flash a new image on 0x800c000. Jumping from the DFU-USB works as expected.

Question

1. In the DFU-USB mode, the Dfuse Demo app seems to be able to read the exposed internal flash. Is that normal even though CRP=1?

2. I am guessing that i can flash as many times a new image at 0x800c000 without having to reflash the DFU-USB bootloader until i change CRP level from 1 to 0 and back to 1.

When i read 

http://www.st.com/web/en/resource/technical/document/application_note/CD00264379.pdf

, pg 11/26 there is a table which says then Read Protection is enabled DFU_DNLOAD should not be allowed. Am i reading something else?

thanks for reading

#rdp #stm32 #dfu #crp
2 REPLIES 2
Posted on March 19, 2015 at 17:27

If you change the RDP setting you have to restart the part. Perhaps you're not setting it properly?

Also, code running from flash, can read the flash. So you'd have to take an active role preventing that occurring by checking the state before doing any action that would expose the memory to download.

 

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
abhiran
Associate
Posted on March 19, 2015 at 19:05

Thanks so much Clive1! A reset was it.