From ec16e522bf6518f38e8923ed4f271bc9bb23c409 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Aur=C3=A9lien=20Martin?= Date: Tue, 6 Aug 2019 22:08:18 +0200 Subject: [PATCH] nrf5: Comment the flash loader MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change-Id: Ia84b5b8ede53f59299a02dc6163d6bbaa31e0fbd Signed-off-by: Aurélien Martin Reviewed-on: http://openocd.zylin.com/5272 Tested-by: jenkins Reviewed-by: Tomas Vanek --- contrib/loaders/flash/nrf5/nrf5.S | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/contrib/loaders/flash/nrf5/nrf5.S b/contrib/loaders/flash/nrf5/nrf5.S index 6f7ed9ae79..53551a2c2c 100644 --- a/contrib/loaders/flash/nrf5/nrf5.S +++ b/contrib/loaders/flash/nrf5/nrf5.S @@ -35,24 +35,35 @@ .global _start _start: wait_fifo: + // Kick the watchdog str r6, [r7, #0] + // Load write pointer ldr r5, [r1, #0] + // Abort if it is NULL cmp r5, #0 beq.n exit + // Load read pointer ldr r4, [r1, #4] + // Continue waiting if it equals the write pointer cmp r4, r5 beq.n wait_fifo + // Copy one word from buffer to target, and increment pointers ldmia r4!, {r5} stmia r3!, {r5} + // If at end of buffer, wrap back to buffer start cmp r4, r2 bcc.n no_wrap mov r4, r1 adds r4, #8 no_wrap: + // Update read pointer inside the buffer str r4, [r1, #4] + // Deduce the word transferred from the byte count subs r0, #4 + // Start again bne.n wait_fifo exit: + // Wait for OpenOCD bkpt #0x00 .pool -- 2.30.2