source: rtems/cpukit/rtems/include/rtems/rtems/attr.h @ 092f142a

4.104.114.84.95
Last change on this file since 092f142a was 092f142a, checked in by Ralf Corsepius <ralf.corsepius@…>, on 01/28/05 at 05:00:21

New header guard.

  • Property mode set to 100644
File size: 2.2 KB
Line 
1/**
2 * @file rtems/rtems/attr.h
3 */
4
5/*
6 *  This include file contains all information about the Object Attributes
7 *  Handler.
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_ATTR_H
20#define _RTEMS_RTEMS_ATTR_H
21
22#ifdef __cplusplus
23extern "C" {
24#endif
25
26/* types */
27
28typedef uint32_t   rtems_attribute;
29
30/* constants */
31
32#define RTEMS_DEFAULT_ATTRIBUTES  0x00000000
33
34#define RTEMS_NO_FLOATING_POINT   0x00000000 /* don't use FP HW */
35#define RTEMS_FLOATING_POINT      0x00000001 /* utilize coprocessor */
36
37#define RTEMS_LOCAL               0x00000000 /* local resource */
38#define RTEMS_GLOBAL              0x00000002 /* global resource */
39
40#define RTEMS_FIFO                0x00000000 /* process RTEMS_FIFO */
41#define RTEMS_PRIORITY            0x00000004 /* process by priority */
42
43#define RTEMS_SEMAPHORE_CLASS         0x00000030 /* mask */
44#define RTEMS_COUNTING_SEMAPHORE      0x00000000
45#define RTEMS_BINARY_SEMAPHORE        0x00000010
46#define RTEMS_SIMPLE_BINARY_SEMAPHORE 0x00000020
47
48#define RTEMS_NO_INHERIT_PRIORITY 0x00000000
49#define RTEMS_INHERIT_PRIORITY    0x00000040
50
51#define RTEMS_NO_PRIORITY_CEILING 0x00000000
52#define RTEMS_PRIORITY_CEILING    0x00000080
53
54#define RTEMS_APPLICATION_TASK    0x00000000
55#define RTEMS_SYSTEM_TASK         0x00000100
56
57
58#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE )
59#define ATTRIBUTES_NOT_SUPPORTED       0
60#else
61#define ATTRIBUTES_NOT_SUPPORTED       RTEMS_FLOATING_POINT
62#endif
63
64#if ( CPU_ALL_TASKS_ARE_FP == TRUE )
65#define ATTRIBUTES_REQUIRED            RTEMS_FLOATING_POINT
66#else
67#define ATTRIBUTES_REQUIRED            0
68#endif
69
70/*
71 *  _Attributes_Handler_initialization
72 *
73 *  DESCRIPTION:
74 *
75 *  This routine performs initialization for this handler.
76 *
77 *  NOTE: There is no initialization required in C.  Conditional compilation
78 *        takes care of this in C.
79 */
80
81#define _Attributes_Handler_initialization()
82
83#ifndef __RTEMS_APPLICATION__
84#include <rtems/rtems/attr.inl>
85#endif
86
87#ifdef __cplusplus
88}
89#endif
90
91#endif
92/* end of include file */
Note: See TracBrowser for help on using the repository browser.