Modified by Osama Ashaikh
Fork of mbed-rtos by
Diff: rtx/TARGET_CORTEX_A/rt_TypeDef.h
- Revision:
- 92:bc9729798a19
- Parent:
- 68:d3d0e710b443
- Child:
- 103:5a85840ab54e
--- a/rtx/TARGET_CORTEX_A/rt_TypeDef.h Wed Sep 16 11:15:38 2015 +0100
+++ b/rtx/TARGET_CORTEX_A/rt_TypeDef.h Fri Sep 25 13:30:34 2015 +0100
@@ -3,10 +3,10 @@
*----------------------------------------------------------------------------
* Name: RT_TYPEDEF.H
* Purpose: Type Definitions
- * Rev.: V4.60
+ * Rev.: V4.73 (plus large stack)
*----------------------------------------------------------------------------
*
- * Copyright (c) 1999-2009 KEIL, 2009-2012 ARM Germany GmbH
+ * Copyright (c) 1999-2009 KEIL, 2009-2015 ARM Germany GmbH
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
@@ -64,11 +64,13 @@
U16 events; /* Event flags */
U16 waits; /* Wait flags */
void **msg; /* Direct message passing when task waits */
+ struct OS_MUCB *p_mlnk; /* Link pointer for mutex owner list */
+ U8 prio_base; /* Base priority */
/* Hardware dependant part: specific for Cortex processor */
- U8 stack_frame; /* Stack frame: 0x1 Basic/Extended, 0x2 FP stacked/not stacked */
- U8 reserved;
- U16 priv_stack; /* Private stack size, 0= system assigned */
+ U8 stack_frame; /* Stack frame: 0x0 Basic, 0x1 Extended, 0x2 VFP/D16 stacked, 0x4 NEON/D32 stacked */
+ U16 reserved; /* Reserved (padding) */
+ U32 priv_stack; /* Private stack size for LARGE_STACK, 0= system assigned */
U32 tsk_stack; /* Current task Stack pointer (R13) */
U32 *stack; /* Pointer to Task Stack memory block */
@@ -76,8 +78,8 @@
FUNCP ptask; /* Task entry address */
} *P_TCB;
#define TCB_TID 3 /* 'task id' offset */
-#define TCB_STACKF 32 /* 'stack_frame' offset */
-#define TCB_TSTACK 36 /* 'tsk_stack' offset */
+#define TCB_STACKF 37 /* 'stack_frame' offset */
+#define TCB_TSTACK 44 /* 'tsk_stack' offset for LARGE_STACK */
typedef struct OS_PSFE { /* Post Service Fifo Entry */
void *id; /* Object Identification */
@@ -94,7 +96,7 @@
typedef struct OS_TSK {
P_TCB run; /* Current running task */
- P_TCB new; /* Scheduled task to run */
+ P_TCB new_tsk; /* Scheduled task to run */
} *P_TSK;
typedef struct OS_ROBIN { /* Round Robin Control */
@@ -133,10 +135,10 @@
typedef struct OS_MUCB {
U8 cb_type; /* Control Block Type */
- U8 prio; /* Owner task default priority */
U16 level; /* Call nesting level */
struct OS_TCB *p_lnk; /* Chain of tasks waiting for mutex */
struct OS_TCB *owner; /* Mutex owner task */
+ struct OS_MUCB *p_mlnk; /* Chain of mutexes by owner task */
} *P_MUCB;
typedef struct OS_XTMR {
