summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/priority.h
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2010-07-29 17:52:10 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2010-07-29 17:52:10 +0000
commita55e305ed3406b935a24ceb9becdff58a1a87948 (patch)
treeb4745978fb84fecc82b1b3d0d0cb7aa0eec8d4a7 /cpukit/score/include/rtems/score/priority.h
parent2010-07-29 Gedare Bloom <giddyup44@yahoo.com> (diff)
downloadrtems-a55e305ed3406b935a24ceb9becdff58a1a87948.tar.bz2
2010-07-29 Gedare Bloom <giddyup44@yahoo.com>
PR 1635/cpukit * sapi/src/exinit.c, score/Makefile.am, score/preinstall.am, score/include/rtems/score/bitfield.h, score/include/rtems/score/priority.h, score/include/rtems/score/thread.h, score/inline/rtems/score/priority.inl, score/inline/rtems/score/thread.inl, score/src/threadchangepriority.c, score/src/threadclearstate.c, score/src/threadready.c, score/src/threadresume.c, score/src/threadsetpriority.c, score/src/threadsetstate.c, score/src/threadsettransient.c, score/src/threadsuspend.c: Refactoring of priority handling, to isolate the bitmap implementation of priorities in the supercore so that priority management is a little more modular. This change is in anticipation of scheduler implementations that can select how they manage tracking priority levels / finding the highest priority ready task. Note that most of the changes here are simple renaming, to clarify the use of the bitmap-based priority management. * score/include/rtems/score/prioritybitmap.h, score/inline/rtems/score/prioritybitmap.inl: New files.
Diffstat (limited to 'cpukit/score/include/rtems/score/priority.h')
-rw-r--r--cpukit/score/include/rtems/score/priority.h68
1 files changed, 1 insertions, 67 deletions
diff --git a/cpukit/score/include/rtems/score/priority.h b/cpukit/score/include/rtems/score/priority.h
index 5a1dccaecc..05dc939d84 100644
--- a/cpukit/score/include/rtems/score/priority.h
+++ b/cpukit/score/include/rtems/score/priority.h
@@ -7,7 +7,7 @@
*/
/*
- * COPYRIGHT (c) 1989-2006.
+ * COPYRIGHT (c) 1989-2010.
* On-Line Applications Research Corporation (OAR).
*
* The license and distribution terms for this file may be
@@ -67,76 +67,10 @@ typedef uint32_t Priority_Control;
#define PRIORITY_MAXIMUM rtems_maximum_priority
/**
- * The following record defines the information associated with
- * each thread to manage its interaction with the priority bit maps.
- */
-typedef struct {
- /** This is the address of minor bit map slot. */
- Priority_Bit_map_control *minor;
- /** This is the priority bit map ready mask. */
- Priority_Bit_map_control ready_major;
- /** This is the priority bit map ready mask. */
- Priority_Bit_map_control ready_minor;
- /** This is the priority bit map block mask. */
- Priority_Bit_map_control block_major;
- /** This is the priority bit map block mask. */
- Priority_Bit_map_control block_minor;
-} Priority_Information;
-
-/**
* This variable contains the configured number of priorities
*/
extern uint8_t rtems_maximum_priority;
-/**
- * Each sixteen bit entry in this array is associated with one of
- * the sixteen entries in the Priority Bit map.
- */
-SCORE_EXTERN volatile Priority_Bit_map_control _Priority_Major_bit_map;
-
-/** Each bit in the Priority Bitmap indicates whether or not there are
- * threads ready at a particular priority. The mapping of
- * individual priority levels to particular bits is processor
- * dependent as is the value of each bit used to indicate that
- * threads are ready at that priority.
- */
-SCORE_EXTERN Priority_Bit_map_control
- _Priority_Bit_map[16] CPU_STRUCTURE_ALIGNMENT;
-
-/*
- * The definition of the Priority_Bit_map_control type is CPU dependent.
- *
- */
-
-#if ( CPU_USE_GENERIC_BITFIELD_CODE == FALSE )
-/**
- * This method returns the priority bit mask for the specified major
- * or minor bit number.
- *
- * @param[in] _bit_number is the bit number for which we need a mask
- *
- * @return the priority bit mask
- *
- * @note This may simply be a pass through to a CPU dependent implementation.
- */
-#define _Priority_Mask( _bit_number ) \
- _CPU_Priority_Mask( _bit_number )
-#endif
-
-#if ( CPU_USE_GENERIC_BITFIELD_CODE == FALSE )
-/**
- * This method returns the bit index position for the specified priority.
- *
- * @param[in] _priority is the priority for which we need the index.
- *
- * @return This method returns the array index into the priority bit map.
- *
- * @note This may simply be a pass through to a CPU dependent implementation.
- */
-#define _Priority_Bits_index( _priority ) \
- _CPU_Priority_bits_index( _priority )
-#endif
-
#ifndef __RTEMS_APPLICATION__
#include <rtems/score/priority.inl>
#endif