git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@8874 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
Giovanni Di Sirio 2016-02-13 08:51:45 +00:00
parent 2a48761772
commit 98cd062e82
5 changed files with 45 additions and 1 deletions

View File

@ -64,8 +64,18 @@ _port_switch:
#if CORTEX_USE_FPU
vpush {s16-s31}
#endif
str sp, [r1, #CONTEXT_OFFSET]
#if (CORTEX_SIMPLIFIED_PRIORITY == FALSE) && \
((CORTEX_MODEL == 3) || (CORTEX_MODEL == 4))
/* Workaround for ARM errata 752419, only applied if
condition exists for it to be triggered.*/
ldr r3, [r0, #CONTEXT_OFFSET]
mov sp, r3
#else
ldr sp, [r0, #CONTEXT_OFFSET]
#endif
#if CORTEX_USE_FPU
vpop {s16-s31}
#endif

View File

@ -64,8 +64,18 @@ _port_switch:
#if CORTEX_USE_FPU
vpush {s16-s31}
#endif
str sp, [r1, #CONTEXT_OFFSET]
#if (CORTEX_SIMPLIFIED_PRIORITY == FALSE) && \
((CORTEX_MODEL == 3) || (CORTEX_MODEL == 4))
/* Workaround for ARM errata 752419, only applied if
condition exists for it to be triggered.*/
ldr r3, [r0, #CONTEXT_OFFSET]
mov sp, r3
#else
ldr sp, [r0, #CONTEXT_OFFSET]
#endif
#if CORTEX_USE_FPU
vpop {s16-s31}
#endif

View File

@ -72,8 +72,18 @@ _port_switch:
#if CORTEX_USE_FPU
vpush {s16-s31}
#endif
str sp, [r1, #CONTEXT_OFFSET]
#if (CORTEX_SIMPLIFIED_PRIORITY == FALSE) && \
((CORTEX_MODEL == 3) || (CORTEX_MODEL == 4))
/* Workaround for ARM errata 752419, only applied if
condition exists for it to be triggered.*/
ldr r3, [r0, #CONTEXT_OFFSET]
mov sp, r3
#else
ldr sp, [r0, #CONTEXT_OFFSET]
#endif
#if CORTEX_USE_FPU
vpop {s16-s31}
#endif

View File

@ -67,8 +67,18 @@ _port_switch PROC
#if CORTEX_USE_FPU
vpush {s16-s31}
#endif
str sp, [r1, #CONTEXT_OFFSET]
#if (CORTEX_SIMPLIFIED_PRIORITY == FALSE) && \
((CORTEX_MODEL == 3) || (CORTEX_MODEL == 4))
/* Workaround for ARM errata 752419, only applied if
condition exists for it to be triggered.*/
ldr r3, [r0, #CONTEXT_OFFSET]
mov sp, r3
#else
ldr sp, [r0, #CONTEXT_OFFSET]
#endif
#if CORTEX_USE_FPU
vpop {s16-s31}
#endif

View File

@ -76,6 +76,10 @@
- RT: Removed the p_msg field from the thread_t structure saving a
msg_t-sized field from the structure. Messages now use a new field
into the p_u union. Now synchronous messages are even faster.
- NIL: Fixed ARM errata 752419 (bug #706)(backported to 2.6.10,
3.0.6 and 16.1.4).
- RT: Fixed ARM errata 752419 (bug #706)(backported to 2.6.10,
3.0.6 and 16.1.4).
- HAL: Fixed unused variable in STM32 SPIv2 driver (bug #705)(backported
to 16.1.3).
- HAL: Fixed chDbgAssert() still called from STM32 SPIv1 driver (bug #704)