aboutsummaryrefslogtreecommitdiff
path: root/src/target/target.c
diff options
context:
space:
mode:
authorMichel JAOUEN <michel.jaouen@stericsson.com>2012-01-03 16:12:50 +0100
committerØyvind Harboe <oyvindharboe@gmail.com>2012-01-15 22:11:48 +0000
commitebac7c963a76ba20b4e66b0525d12127295cdccb (patch)
tree4fe778793f145ff8e54469c8470e2dbd45c4b35e /src/target/target.c
parentff3028ce1baec2522059108331846d3fd320b846 (diff)
rtos : smp support
Change-Id: I583cddf5e62ed77f108786a085569ab8699ad50d Signed-off-by: Michel JAOUEN <michel.jaouen@stericsson.com> Reviewed-on: http://openocd.zylin.com/344 Tested-by: jenkins Reviewed-by: Evan Hunter <evan@ozhiker.com> Reviewed-by: Øyvind Harboe <oyvindharboe@gmail.com>
Diffstat (limited to 'src/target/target.c')
-rw-r--r--src/target/target.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/target/target.c b/src/target/target.c
index c3d65e33..e53d6f84 100644
--- a/src/target/target.c
+++ b/src/target/target.c
@@ -5119,11 +5119,12 @@ static int jim_target_smp(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
int i;
const char *targetname;
int retval,len;
- struct target *target;
- struct target_list *head, *curr;
- curr = (struct target_list*) NULL;
- head = (struct target_list*) NULL;
-
+ struct target *target = (struct target *) NULL;
+ struct target_list *head, *curr, *new;
+ curr = (struct target_list *) NULL;
+ head = (struct target_list *) NULL;
+ new = (struct target_list *) NULL;
+
retval = 0;
LOG_DEBUG("%d",argc);
/* argv[1] = target to associate in smp
@@ -5139,7 +5140,6 @@ static int jim_target_smp(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
LOG_DEBUG("%s ",targetname);
if (target)
{
- struct target_list *new;
new=malloc(sizeof(struct target_list));
new->target = target;
new->next = (struct target_list*)NULL;
@@ -5160,11 +5160,13 @@ static int jim_target_smp(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
while(curr!=(struct target_list *)NULL)
{
- target=curr->target;
- target->smp = 1;
- target->head = head;
- curr=curr->next;
+ target = curr->target;
+ target->smp = 1;
+ target->head = head;
+ curr = curr->next;
}
+ if (target->rtos)
+ retval = rtos_smp_init(head->target);
return retval;
}