From: Spencer Oliver <ntfr...@users.sourceforge.net>

For the above targets the exit_point is
optional when used with run_algorithm, so remove it.

This makes updating the algorithm less error prone.

Signed-off-by: Spencer Oliver <ntfr...@users.sourceforge.net>
---
 src/flash/nor/lpc2000.c   |    2 +-
 src/flash/nor/pic32mx.c   |    2 +-
 src/flash/nor/stellaris.c |    3 +--
 src/flash/nor/stm32x.c    |    2 +-
 4 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/src/flash/nor/lpc2000.c b/src/flash/nor/lpc2000.c
index 866be50..0930d62 100644
--- a/src/flash/nor/lpc2000.c
+++ b/src/flash/nor/lpc2000.c
@@ -346,7 +346,7 @@ static int lpc2000_iap_call(struct flash_bank *bank, int 
code, uint32_t param_ta
                        init_reg_param(&reg_params[4], "lr", 32, PARAM_OUT);
                        buf_set_u32(reg_params[4].value, 0, 32, 
(lpc2000_info->iap_working_area->address + 0x04) | 1); /* bit0 of LR = 1 to 
return in Thumb mode */
 
-                       target_run_algorithm(target, 2, mem_params, 5, 
reg_params, lpc2000_info->iap_working_area->address, 
lpc2000_info->iap_working_area->address + 0x4, 10000, &armv7m_info);
+                       target_run_algorithm(target, 2, mem_params, 5, 
reg_params, lpc2000_info->iap_working_area->address, 0, 10000, &armv7m_info);
                        break;
                case lpc2000_v1:
                case lpc2000_v2:
diff --git a/src/flash/nor/pic32mx.c b/src/flash/nor/pic32mx.c
index 2fe864d..363f49e 100644
--- a/src/flash/nor/pic32mx.c
+++ b/src/flash/nor/pic32mx.c
@@ -360,7 +360,7 @@ static int pic32mx_write_block(struct flash_bank *bank, 
uint8_t *buffer,
 
                if ((retval = target_run_algorithm(target, 0, NULL, 3, 
reg_params,
                                pic32mx_info->write_algorithm->address,
-                               pic32mx_info->write_algorithm->address + 
(sizeof(pic32mx_flash_write_code) - 76),
+                               0,
                                10000, &mips32_info)) != ERROR_OK)
                {
                        LOG_ERROR("error executing pic32mx flash write 
algorithm");
diff --git a/src/flash/nor/stellaris.c b/src/flash/nor/stellaris.c
index ff1c2e4..69e2f10 100644
--- a/src/flash/nor/stellaris.c
+++ b/src/flash/nor/stellaris.c
@@ -884,8 +884,7 @@ static int stellaris_write_block(struct flash_bank *bank,
                                (unsigned) (wcount - thisrun_count));
                retval = target_run_algorithm(target, 0, NULL, 3, reg_params,
                                write_algorithm->address,
-                               write_algorithm->address +
-                                       sizeof(stellaris_write_code) - 10,
+                               0,
                                10000, &armv7m_info);
                if (retval != ERROR_OK)
                {
diff --git a/src/flash/nor/stm32x.c b/src/flash/nor/stm32x.c
index 5ce5d45..4ec777d 100644
--- a/src/flash/nor/stm32x.c
+++ b/src/flash/nor/stm32x.c
@@ -519,7 +519,7 @@ static int stm32x_write_block(struct flash_bank *bank, 
uint8_t *buffer,
 
                if ((retval = target_run_algorithm(target, 0, NULL, 4, 
reg_params,
                                stm32x_info->write_algorithm->address,
-                               stm32x_info->write_algorithm->address + 
(sizeof(stm32x_flash_write_code) - 10),
+                               0,
                                10000, &armv7m_info)) != ERROR_OK)
                {
                        LOG_ERROR("error executing stm32x flash write 
algorithm");
-- 
1.7.1
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to