aboutsummaryrefslogtreecommitdiff
path: root/src/target/target.c
diff options
context:
space:
mode:
authorAndreas Fritiofson <andreas.fritiofson@gmail.com>2013-03-08 01:17:18 +0100
committerSpencer Oliver <spen@spen-soft.co.uk>2013-03-15 15:56:25 +0000
commit4315142ea0d7035fe117b9e344beaf98c91ee35c (patch)
tree5a03b598d18b1d875a3942bbabf60e541cae1ee5 /src/target/target.c
parent13288a44bee0aa26067cb51c262b82a12b61699f (diff)
target: Add default implementation of bulk_write_memory
Remove dummy implementations from all targets except arm7_9 and mips, which are the only ones with real implementations. Replace with a single default implementation simply calling target_write_memory(). Change-Id: I9228104240bc0b50661be20bc7909713ccda2164 Signed-off-by: Andreas Fritiofson <andreas.fritiofson@gmail.com> Reviewed-on: http://openocd.zylin.com/1213 Tested-by: jenkins Reviewed-by: Øyvind Harboe <oyvindharboe@gmail.com> Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
Diffstat (limited to 'src/target/target.c')
-rw-r--r--src/target/target.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/target/target.c b/src/target/target.c
index 279fc18f..04e375b8 100644
--- a/src/target/target.c
+++ b/src/target/target.c
@@ -976,6 +976,12 @@ int target_bulk_write_memory(struct target *target,
return target->type->bulk_write_memory(target, address, count, buffer);
}
+static int target_bulk_write_memory_default(struct target *target,
+ uint32_t address, uint32_t count, const uint8_t *buffer)
+{
+ return target_write_memory(target, address, 4, count, buffer);
+}
+
int target_add_breakpoint(struct target *target,
struct breakpoint *breakpoint)
{
@@ -1121,6 +1127,9 @@ static int target_init_one(struct command_context *cmd_ctx,
if (target->type->write_buffer == NULL)
target->type->write_buffer = target_write_buffer_default;
+ if (target->type->bulk_write_memory == NULL)
+ target->type->bulk_write_memory = target_bulk_write_memory_default;
+
return ERROR_OK;
}