RTEMS CPU Kit with SuperCore  4.11.2
corespinlock.h
Go to the documentation of this file.
1 
10 /*
11  * COPYRIGHT (c) 1989-2006.
12  * On-Line Applications Research Corporation (OAR).
13  *
14  * The license and distribution terms for this file may be
15  * found in the file LICENSE in this distribution or at
16  * http://www.rtems.org/license/LICENSE.
17  */
18 
19 #ifndef _RTEMS_SCORE_CORESPINLOCK_H
20 #define _RTEMS_SCORE_CORESPINLOCK_H
21 
22 #include <rtems/score/object.h>
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
42 typedef struct {
45  uint32_t XXX;
47 
52 typedef struct {
55 
58  volatile uint32_t lock;
59 
64  volatile uint32_t users;
65 
69  volatile Objects_Id holder;
71 
74 #ifdef __cplusplus
75 }
76 #endif
77 
78 #endif
79 /* end of include file */
Constants and Structures Associated with the Object Handler.
volatile uint32_t lock
This field is the lock.
Definition: corespinlock.h:58
The following defines the control block used to manage the attributes of each spinlock.
Definition: corespinlock.h:42
volatile Objects_Id holder
This field is the Id of the thread holding the lock.
Definition: corespinlock.h:69
The following defines the control block used to manage each spinlock.
Definition: corespinlock.h:52
volatile uint32_t users
This field is a count of the current number of threads using this spinlock.
Definition: corespinlock.h:64
uint32_t XXX
This element indicates XXX.
Definition: corespinlock.h:45
CORE_spinlock_Attributes Attributes
XXX may not be needed.
Definition: corespinlock.h:54
uint32_t Objects_Id
The following type defines the control block used to manage object IDs.
Definition: object.h:122