summaryrefslogtreecommitdiff
path: root/firmware/target/arm/thread-pp.c
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/arm/thread-pp.c')
-rw-r--r--firmware/target/arm/thread-pp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/firmware/target/arm/thread-pp.c b/firmware/target/arm/thread-pp.c
index a0a4d4fd17..0836b27204 100644
--- a/firmware/target/arm/thread-pp.c
+++ b/firmware/target/arm/thread-pp.c
@@ -214,7 +214,7 @@ static inline void NORETURN_ATTR __attribute__((always_inline))
214{ 214{
215 asm volatile ( 215 asm volatile (
216 "cmp %1, #0 \n" /* CPU? */ 216 "cmp %1, #0 \n" /* CPU? */
217 "ldrne r0, =cpucache_flush \n" /* No? write back data */ 217 "ldrne r0, =commit_dcache \n" /* No? write back data */
218 "movne lr, pc \n" 218 "movne lr, pc \n"
219 "bxne r0 \n" 219 "bxne r0 \n"
220 "mov r0, %0 \n" /* copy thread parameter */ 220 "mov r0, %0 \n" /* copy thread parameter */
@@ -244,7 +244,7 @@ static inline void NORETURN_ATTR __attribute__((always_inline))
244static void core_switch_blk_op(unsigned int core, struct thread_entry *thread) 244static void core_switch_blk_op(unsigned int core, struct thread_entry *thread)
245{ 245{
246 /* Flush our data to ram */ 246 /* Flush our data to ram */
247 cpucache_flush(); 247 commit_dcache();
248 /* Stash thread in r4 slot */ 248 /* Stash thread in r4 slot */
249 thread->context.r[0] = (uint32_t)thread; 249 thread->context.r[0] = (uint32_t)thread;
250 /* Stash restart address in r5 slot */ 250 /* Stash restart address in r5 slot */
@@ -285,7 +285,7 @@ static void __attribute__((naked))
285 "ldr sp, [r0, #32] \n" /* Reload original sp from context structure */ 285 "ldr sp, [r0, #32] \n" /* Reload original sp from context structure */
286 "mov r1, #0 \n" /* Clear start address */ 286 "mov r1, #0 \n" /* Clear start address */
287 "str r1, [r0, #40] \n" 287 "str r1, [r0, #40] \n"
288 "ldr r0, =cpucache_invalidate \n" /* Invalidate new core's cache */ 288 "ldr r0, =commit_discard_idcache \n" /* Invalidate new core's cache */
289 "mov lr, pc \n" 289 "mov lr, pc \n"
290 "bx r0 \n" 290 "bx r0 \n"
291 "ldmfd sp!, { r4-r11, pc } \n" /* Restore non-volatile context to new core and return */ 291 "ldmfd sp!, { r4-r11, pc } \n" /* Restore non-volatile context to new core and return */