diff options
author | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2012-02-06 19:45:47 +0000 |
---|---|---|
committer | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2012-02-06 19:45:47 +0000 |
commit | 4401d0e7b2874074e37c90e0178667a854d0da1f (patch) | |
tree | 423d9ede640b9a9452e89392bcf7a7b6f9a5e464 /os/ports/GCC/ARMCMx | |
parent | 28c1f163a94e9aaad5d4ec3f9534b89677f9e5b1 (diff) | |
download | ChibiOS-4401d0e7b2874074e37c90e0178667a854d0da1f.tar.gz ChibiOS-4401d0e7b2874074e37c90e0178667a854d0da1f.tar.bz2 ChibiOS-4401d0e7b2874074e37c90e0178667a854d0da1f.zip |
Round robin scheduling improvements.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@3930 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/ports/GCC/ARMCMx')
-rw-r--r-- | os/ports/GCC/ARMCMx/chcore.h | 4 | ||||
-rw-r--r-- | os/ports/GCC/ARMCMx/chtypes.h | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/os/ports/GCC/ARMCMx/chcore.h b/os/ports/GCC/ARMCMx/chcore.h index 7f97cde5d..b2cf4deaa 100644 --- a/os/ports/GCC/ARMCMx/chcore.h +++ b/os/ports/GCC/ARMCMx/chcore.h @@ -168,8 +168,8 @@ struct intctx {}; * @brief Inlineable version of this kernel function.
*/
#define chSchIsPreemptionRequired() \
- (rlist.r_preempt ? firstprio(&rlist.r_queue) > currp->p_prio : \
- firstprio(&rlist.r_queue) >= currp->p_prio)
+ (currp->p_preempt ? firstprio(&rlist.r_queue) > currp->p_prio : \
+ firstprio(&rlist.r_queue) >= currp->p_prio)
#else /* CH_TIME_QUANTUM == 0 */
#define chSchIsPreemptionRequired() \
(firstprio(&rlist.r_queue) > currp->p_prio)
diff --git a/os/ports/GCC/ARMCMx/chtypes.h b/os/ports/GCC/ARMCMx/chtypes.h index 2105c7130..4d896fea0 100644 --- a/os/ports/GCC/ARMCMx/chtypes.h +++ b/os/ports/GCC/ARMCMx/chtypes.h @@ -40,6 +40,7 @@ typedef int32_t bool_t; /**< Fast boolean type. */ typedef uint8_t tmode_t; /**< Thread flags. */
typedef uint8_t tstate_t; /**< Thread state. */
typedef uint8_t trefs_t; /**< Thread references counter. */
+typedef uint8_t tslices_t; /**< Thread time slices counter. */
typedef uint32_t tprio_t; /**< Thread priority. */
typedef int32_t msg_t; /**< Inter-thread message. */
typedef int32_t eventid_t; /**< Event Id. */
|