From 75ed6cfb9f461337cef2d42f14dfafb342812e44 Mon Sep 17 00:00:00 2001 From: Tom de Boer Date: Mon, 9 May 2016 10:55:57 +0200 Subject: [PATCH] Formatted comments and stm32lx.s --- flashloaders/stm32lx.s | 4 ++-- src/common.c | 32 +++++++++++++------------------- 2 files changed, 15 insertions(+), 21 deletions(-) diff --git a/flashloaders/stm32lx.s b/flashloaders/stm32lx.s index f162c88..10e5644 100644 --- a/flashloaders/stm32lx.s +++ b/flashloaders/stm32lx.s @@ -25,7 +25,7 @@ ***************************************************************************/ -// Build : arm-eabi-gcc -c stm32lx.S +// Build : arm-eabi-gcc -c stm32lx.s .text .syntax unified .cpu cortex-m3 @@ -36,7 +36,7 @@ /* r0 - source address r1 - destination address - r2 - count + r2 - output, remaining word count */ // Go to compare diff --git a/src/common.c b/src/common.c index 456c0b1..a3ffda7 100644 --- a/src/common.c +++ b/src/common.c @@ -1509,26 +1509,20 @@ int write_loader_to_sram(stlink_t *sl, stm32_addr_t* addr, size_t* size) { }; static const uint8_t loader_code_stm32l[] = { + // flashloaders/stm32lx.s - /* based on openocd.git/contrib/loaders/flash/stm32lx.S - r0, input, source addr - r1, input, dest addr - r2, input, word count - r2, output, remaining word count - */ - - 0x00, 0xbf, // nop /* to make loader length % 4 = 0 */ - 0x04, 0xe0, // b test_done /* Go to compare */ - //write_word - 0x04, 0x68, // ldr r4, [r0] /* Load one word from address in r0 */ - 0x0c, 0x60, // str r4, [r1] /* Store the word to address in r1 */ - 0x04, 0x30, // adds r0, #4 /* Increment r0 */ - 0x04, 0x31, // adds r1, #4 /* Increment r1 */ - 0x01, 0x3a, // subs r2, #1 /* Decrement r2 */ - //test_done: - 0x00, 0x2a, // cmp r2, #0 /* Compare r2 to 0 */ - 0xf8, 0xd8, // bhi write_word /* Loop if above 0 */ - 0x00, 0xbe // bkpt #0x00 /* Set breakpoint to exit */ + 0x04, 0xe0, // b test_done ; Go to compare + // write_word: + 0x04, 0x68, // ldr r4, [r0] ; Load one word from address in r0 + 0x0c, 0x60, // str r4, [r1] ; Store the word to address in r1 + 0x04, 0x30, // adds r0, #4 ; Increment r0 + 0x04, 0x31, // adds r1, #4 ; Increment r1 + 0x01, 0x3a, // subs r2, #1 ; Decrement r2 + // test_done: + 0x00, 0x2a, // cmp r2, #0 ; Compare r2 to 0 + 0xf8, 0xd8, // bhi write_word ; Loop if above 0 + 0x00, 0xbe, // bkpt #0x00 ; Set breakpoint to exit + 0x00, 0x00 }; static const uint8_t loader_code_stm32f4[] = {