source: rtems/cpukit/rtems/include/rtems/rtems/asr.h @ 067a96a

4.104.114.95
Last change on this file since 067a96a was 067a96a, checked in by Joel Sherrill <joel.sherrill@…>, on 04/18/08 at 15:02:20

2008-04-18 Joel Sherrill <joel.sherrill@…>

  • rtems/include/rtems.h, rtems/include/rtems/rtems/asr.h, rtems/include/rtems/rtems/attr.h, rtems/include/rtems/rtems/barrier.h, rtems/include/rtems/rtems/barriermp.h, rtems/include/rtems/rtems/cache.h, rtems/include/rtems/rtems/clock.h, rtems/include/rtems/rtems/config.h, rtems/include/rtems/rtems/dpmem.h, rtems/include/rtems/rtems/event.h, rtems/include/rtems/rtems/eventmp.h, rtems/include/rtems/rtems/eventset.h, rtems/include/rtems/rtems/intr.h, rtems/include/rtems/rtems/message.h, rtems/include/rtems/rtems/modes.h, rtems/include/rtems/rtems/mp.h, rtems/include/rtems/rtems/msgmp.h, rtems/include/rtems/rtems/object.h, rtems/include/rtems/rtems/options.h, rtems/include/rtems/rtems/part.h, rtems/include/rtems/rtems/partmp.h, rtems/include/rtems/rtems/ratemon.h, rtems/include/rtems/rtems/region.h, rtems/include/rtems/rtems/regionmp.h, rtems/include/rtems/rtems/rtemsapi.h, rtems/include/rtems/rtems/sem.h, rtems/include/rtems/rtems/semmp.h, rtems/include/rtems/rtems/signal.h, rtems/include/rtems/rtems/signalmp.h, rtems/include/rtems/rtems/status.h, rtems/include/rtems/rtems/support.h, rtems/include/rtems/rtems/taskmp.h, rtems/include/rtems/rtems/tasks.h, rtems/include/rtems/rtems/timer.h, rtems/include/rtems/rtems/types.h, rtems/inline/rtems/rtems/asr.inl, rtems/inline/rtems/rtems/attr.inl, rtems/inline/rtems/rtems/barrier.inl, rtems/inline/rtems/rtems/dpmem.inl, rtems/inline/rtems/rtems/event.inl, rtems/inline/rtems/rtems/eventset.inl, rtems/inline/rtems/rtems/message.inl, rtems/inline/rtems/rtems/modes.inl, rtems/inline/rtems/rtems/options.inl, rtems/inline/rtems/rtems/part.inl, rtems/inline/rtems/rtems/ratemon.inl, rtems/inline/rtems/rtems/region.inl, rtems/inline/rtems/rtems/sem.inl, rtems/inline/rtems/rtems/status.inl, rtems/inline/rtems/rtems/support.inl, rtems/inline/rtems/rtems/tasks.inl, rtems/inline/rtems/rtems/timer.inl: Initial conversion of Classic API header files to Doxygen.
  • rtems/Doxyfile: New file.
  • Property mode set to 100644
File size: 5.3 KB
Line 
1/**
2 * @file rtems/rtems/asr.h
3 *
4 *  This include file contains all the constants and structures associated
5 *  with the Asynchronous Signal Handler.  This Handler provides the low-level
6 *  support required by the Signal Manager.
7 */
8
9/*  COPYRIGHT (c) 1989-1999.
10 *  On-Line Applications Research Corporation (OAR).
11 *
12 *  The license and distribution terms for this file may be
13 *  found in the file LICENSE in this distribution or at
14 *  http://www.rtems.com/license/LICENSE.
15 *
16 *  $Id$
17 */
18
19#ifndef _RTEMS_RTEMS_ASR_H
20#define _RTEMS_RTEMS_ASR_H
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
26#include <rtems/rtems/modes.h>
27
28/**
29 *  @defgroup ClassicASR Classic API ASR Support
30 *
31 *  This encapsulates functionality which XXX
32 */
33/**@{*/
34
35/**
36 *  The following type defines the control block used to manage
37 *  each signal set.
38 */
39typedef uint32_t   rtems_signal_set;
40
41/**
42 *  Return type for ASR Handler
43 */
44typedef void rtems_asr;
45
46/**
47 *  The following type corresponds to the applications asynchronous
48 *  signal processing routine.
49 */
50typedef rtems_asr ( *rtems_asr_entry )(
51                 rtems_signal_set
52             );
53
54/**
55 *  The following defines the control structure used to manage
56 *  signals.  Each thread has a copy of this record.
57 */
58typedef struct {
59  boolean           is_enabled;       /* are ASRs enabled currently? */
60  rtems_asr_entry   handler;          /* address of RTEMS_ASR */
61  Modes_Control     mode_set;         /* RTEMS_ASR mode */
62  rtems_signal_set  signals_posted;   /* signal set */
63  rtems_signal_set  signals_pending;  /* pending signal set */
64  uint32_t          nest_level;       /* nest level of RTEMS_ASR */
65}   ASR_Information;
66
67/*
68 *  The following constants define the individual signals which may
69 *  be used to compose a signal set.
70 */
71
72/** This defines the bit in the signal set associated with signal 0. */
73#define RTEMS_SIGNAL_0    0x00000001
74/** This defines the bit in the signal set associated with signal 1. */
75#define RTEMS_SIGNAL_1    0x00000002
76/** This defines the bit in the signal set associated with signal 2. */
77#define RTEMS_SIGNAL_2    0x00000004
78/** This defines the bit in the signal set associated with signal 3. */
79#define RTEMS_SIGNAL_3    0x00000008
80/** This defines the bit in the signal set associated with signal 4. */
81#define RTEMS_SIGNAL_4    0x00000010
82/** This defines the bit in the signal set associated with signal 5. */
83#define RTEMS_SIGNAL_5    0x00000020
84/** This defines the bit in the signal set associated with signal 6. */
85#define RTEMS_SIGNAL_6    0x00000040
86/** This defines the bit in the signal set associated with signal 7. */
87#define RTEMS_SIGNAL_7    0x00000080
88/** This defines the bit in the signal set associated with signal 8. */
89#define RTEMS_SIGNAL_8    0x00000100
90/** This defines the bit in the signal set associated with signal 9. */
91#define RTEMS_SIGNAL_9    0x00000200
92/** This defines the bit in the signal set associated with signal 10. */
93#define RTEMS_SIGNAL_10   0x00000400
94/** This defines the bit in the signal set associated with signal 11. */
95#define RTEMS_SIGNAL_11   0x00000800
96/** This defines the bit in the signal set associated with signal 12. */
97#define RTEMS_SIGNAL_12   0x00001000
98/** This defines the bit in the signal set associated with signal 13. */
99#define RTEMS_SIGNAL_13   0x00002000
100/** This defines the bit in the signal set associated with signal 14. */
101#define RTEMS_SIGNAL_14   0x00004000
102/** This defines the bit in the signal set associated with signal 15. */
103#define RTEMS_SIGNAL_15   0x00008000
104/** This defines the bit in the signal set associated with signal 16. */
105#define RTEMS_SIGNAL_16   0x00010000
106/** This defines the bit in the signal set associated with signal 17. */
107#define RTEMS_SIGNAL_17   0x00020000
108/** This defines the bit in the signal set associated with signal 18. */
109#define RTEMS_SIGNAL_18   0x00040000
110/** This defines the bit in the signal set associated with signal 19. */
111#define RTEMS_SIGNAL_19   0x00080000
112/** This defines the bit in the signal set associated with signal 20. */
113#define RTEMS_SIGNAL_20   0x00100000
114/** This defines the bit in the signal set associated with signal 21. */
115#define RTEMS_SIGNAL_21   0x00200000
116/** This defines the bit in the signal set associated with signal 22. */
117#define RTEMS_SIGNAL_22   0x00400000
118/** This defines the bit in the signal set associated with signal 23. */
119#define RTEMS_SIGNAL_23   0x00800000
120/** This defines the bit in the signal set associated with signal 24. */
121#define RTEMS_SIGNAL_24   0x01000000
122/** This defines the bit in the signal set associated with signal 25. */
123#define RTEMS_SIGNAL_25   0x02000000
124/** This defines the bit in the signal set associated with signal 26. */
125#define RTEMS_SIGNAL_26   0x04000000
126/** This defines the bit in the signal set associated with signal 27. */
127#define RTEMS_SIGNAL_27   0x08000000
128/** This defines the bit in the signal set associated with signal 28. */
129#define RTEMS_SIGNAL_28   0x10000000
130/** This defines the bit in the signal set associated with signal 29. */
131#define RTEMS_SIGNAL_29   0x20000000
132/** This defines the bit in the signal set associated with signal 30. */
133#define RTEMS_SIGNAL_30   0x40000000
134/** This defines the bit in the signal set associated with signal 31. */
135#define RTEMS_SIGNAL_31   0x80000000
136
137#ifndef __RTEMS_APPLICATION__
138#include <rtems/rtems/asr.inl>
139#endif
140
141#ifdef __cplusplus
142}
143#endif
144
145/**@}*/
146
147#endif
148/* end of include file */
Note: See TracBrowser for help on using the repository browser.