I've looked a bit more into STM32 flash programming performance and
most of the time is spent waiting for the target to complete
flash programming, i.e. it appears that it is the *target* that is
slow.

Could this be the case?


Algorithm from flash/stm32x.c

        u8 stm32x_flash_write_code[] = {
                                                                        /* 
write: */
                0xDF, 0xF8, 0x24, 0x40,         /* ldr  r4, STM32_FLASH_CR */
                0x09, 0x4D,                                     /* ldr  r5, 
STM32_FLASH_SR */
                0x4F, 0xF0, 0x01, 0x03,         /* mov  r3, #1 */
                0x23, 0x60,                                     /* str  r3, 
[r4, #0] */
                0x30, 0xF8, 0x02, 0x3B,         /* ldrh r3, [r0], #2 */
                0x21, 0xF8, 0x02, 0x3B,         /* strh r3, [r1], #2 */
                                                                        /* 
busy: */
                0x2B, 0x68,                                     /* ldr  r3, 
[r5, #0] */
                0x13, 0xF0, 0x01, 0x0F,         /* tst  r3, #0x01 */
                0xFB, 0xD0,                                     /* beq  busy */
                0x13, 0xF0, 0x14, 0x0F,         /* tst  r3, #0x14 */
                0x01, 0xD1,                                     /* bne  exit */
                0x01, 0x3A,                                     /* subs r2, r2, 
#1 */
                0xED, 0xD1,                                     /* bne  write */
                                                                        /* 
exit: */
                0xFE, 0xE7,                                     /* b exit */    
                        
                0x10, 0x20, 0x02, 0x40,         /* STM32_FLASH_CR:      .word 
0x40022010 */
                0x0C, 0x20, 0x02, 0x40          /* STM32_FLASH_SR:      .word 
0x4002200C */
        };
        

-- 
Øyvind Harboe
PayBack incident management system
Reduce costs and increase quality, free Starter Edition
http://www.payback.no/index_en.html
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to