Ignore:
Timestamp:
May 31, 2013, 11:59:34 AM (8 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
4.11, 5, master
Children:
db42c079
Parents:
bd39add
git-author:
Sebastian Huber <sebastian.huber@…> (05/31/13 11:59:34)
git-committer:
Sebastian Huber <sebastian.huber@…> (05/31/13 13:20:32)
Message:

smp: Add ARM support

File:
1 edited

Legend:

Unmodified
Added
Removed
  • cpukit/score/cpu/arm/arm_exc_interrupt.S

    rbd39add rf2f211c5  
    9191#endif
    9292
     93#ifdef RTEMS_SMP
     94        /* ISR enter */
     95        blx     _ISR_SMP_Enter
     96
     97        /* Remember INT stack pointer */
     98        mov     r1, EXCHANGE_INT_SP
     99
     100        /* Restore exchange registers from exchange area */
     101        ldmia   r1, EXCHANGE_LIST
     102
     103        /* Switch stack if necessary and save original stack pointer */
     104        mov     r2, sp
     105        cmp     r0, #0
     106        moveq   sp, r1
     107        stmdb   sp!, {r2}
     108
     109        /* Call BSP dependent interrupt dispatcher */
     110        blx     bsp_interrupt_dispatch
     111
     112        /* Restore stack pointer */
     113        ldr     sp, [sp]
     114
     115        /* ISR exit */
     116        blx     _ISR_SMP_Exit
     117        cmp     r0, #0
     118        beq     thread_dispatch_done
     119
     120        /* Thread dispatch */
     121        blx     _Thread_Dispatch
     122
     123thread_dispatch_done:
     124#else /* RTEMS_SMP */
    93125        /* Remember INT stack pointer */
    94126        mov     r1, EXCHANGE_INT_SP
     
    151183#endif /* __thumb__ */
    152184
    153 do_thread_dispatch:
    154 
    155185        /* Thread dispatch */
    156186        bl      _Thread_Dispatch
     
    160190        /* Switch to ARM instructions if necessary */
    161191        SWITCH_FROM_THUMB_TO_ARM
     192#endif /* RTEMS_SMP */
    162193
    163194#ifdef ARM_MULTILIB_VFP_D32
Note: See TracChangeset for help on using the changeset viewer.