summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/score/include')
-rw-r--r--cpukit/score/include/rtems/score/userext.h24
1 files changed, 22 insertions, 2 deletions
diff --git a/cpukit/score/include/rtems/score/userext.h b/cpukit/score/include/rtems/score/userext.h
index 4c2972030e..40e31fbba5 100644
--- a/cpukit/score/include/rtems/score/userext.h
+++ b/cpukit/score/include/rtems/score/userext.h
@@ -91,12 +91,25 @@ typedef struct {
} User_extensions_Table;
/*
+ * The following is used to manage the list of switch handlers.
+ */
+
+typedef struct {
+ Chain_Node Node;
+ User_extensions_thread_switch_extension thread_switch;
+} User_extensions_Switch_control;
+
+/*
* The following is used to manage each user extension set.
+ * The switch control is part of the extensions control even
+ * if not used due to the extension not having a switch
+ * handler.
*/
typedef struct {
- Chain_Node Node;
- User_extensions_Table Callouts;
+ Chain_Node Node;
+ User_extensions_Switch_control Switch;
+ User_extensions_Table Callouts;
} User_extensions_Control;
/*
@@ -106,6 +119,13 @@ typedef struct {
SCORE_EXTERN Chain_Control _User_extensions_List;
/*
+ * The following is used to manage a chain of user extension task
+ * switch nodes.
+ */
+
+SCORE_EXTERN Chain_Control _User_extensions_Switches_list;
+
+/*
* _User_extensions_Thread_create
*
* DESCRIPTION: