OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [compat/] [posix/] [v2_0/] [cdl/] [pthread.cdl] - Blame information for rev 846

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 unneback
# ====================================================================
2
#
3
#      pthread.cdl
4
#
5
#      POSIX pthread configuration data
6
#
7
# ====================================================================
8
#####ECOSGPLCOPYRIGHTBEGIN####
9
## -------------------------------------------
10
## This file is part of eCos, the Embedded Configurable Operating System.
11
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
12
##
13
## eCos is free software; you can redistribute it and/or modify it under
14
## the terms of the GNU General Public License as published by the Free
15
## Software Foundation; either version 2 or (at your option) any later version.
16
##
17
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18
## WARRANTY; without even the implied warranty of MERCHANTABILITY or
19
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
20
## for more details.
21
##
22
## You should have received a copy of the GNU General Public License along
23
## with eCos; if not, write to the Free Software Foundation, Inc.,
24
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
25
##
26
## As a special exception, if other files instantiate templates or use macros
27
## or inline functions from this file, or you compile this file and link it
28
## with other works to produce a work based on this file, this file does not
29
## by itself cause the resulting work to be covered by the GNU General Public
30
## License. However the source code for this file must still be made available
31
## in accordance with section (3) of the GNU General Public License.
32
##
33
## This exception does not invalidate any other reasons why a work based on
34
## this file might be covered by the GNU General Public License.
35
##
36
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
37
## at http://sources.redhat.com/ecos/ecos-license/
38
## -------------------------------------------
39
#####ECOSGPLCOPYRIGHTEND####
40
# ====================================================================
41
######DESCRIPTIONBEGIN####
42
#
43
# Author(s):      nickg
44
# Contributors:   jlarmour
45
# Date:           2000-3-28
46
#
47
#####DESCRIPTIONEND####
48
#
49
# ====================================================================
50
 
51
cdl_option CYGPKG_POSIX_PTHREAD_REQUIREMENTS {
52
        display         "Generic requirements of pthread package"
53
        flavor          bool
54
        calculated      1
55
        implements      CYGINT_ISO_PTHREADTYPES
56
        implements      CYGINT_ISO_PTHREAD_IMPL
57
        requires        CYGPKG_POSIX_SCHED
58
        requires        CYGSEM_KERNEL_SCHED_TIMESLICE_ENABLE
59
        requires        CYGSEM_KERNEL_SCHED_ASR_SUPPORT
60
        requires        CYGSEM_KERNEL_SCHED_ASR_GLOBAL
61
        requires        !CYGSEM_KERNEL_SCHED_ASR_DATA_GLOBAL
62
        requires        CYGFUN_KERNEL_THREADS_STACK_LIMIT
63
        requires        { CYGBLD_ISO_PTHREADTYPES_HEADER == \
64
                          "" }
65
        requires        { CYGBLD_ISO_PTHREAD_IMPL_HEADER == \
66
                          "" }
67
        description     "This option exists merely to carry the pthread
68
                         package requirements."
69
 
70
}
71
 
72
# ====================================================================
73
 
74
cdl_component CYGPKG_POSIX_PTHREAD_VALUES {
75
    display          "Constant values used in pthread package"
76
    flavor           bool
77
    calculated       1
78
    description      "These are values that are either configurable, or derived
79
                     from system parameters."
80
 
81
    cdl_option CYGNUM_POSIX_PTHREAD_DESTRUCTOR_ITERATIONS {
82
        display          "Maximum number of iterations of key destructors"
83
        flavor           data
84
        legal_values     4 to 100
85
        default_value    4
86
        description      "Maximum number of iterations of key destructors allowed."
87
    }
88
 
89
    cdl_option CYGNUM_POSIX_PTHREAD_KEYS_MAX {
90
        display          "Maximum number of per-thread data keys allowed"
91
        flavor           data
92
        legal_values     128 to 65535
93
        default_value    128
94
        description      "Number of per-thread data keys supported."
95
    }
96
 
97
        cdl_option CYGNUM_POSIX_PTHREAD_THREADS_MAX {
98
        display          "Maximum number of threads allowed"
99
        flavor           data
100
        legal_values     64 to 1024
101
        default_value    64
102
        description      "Maximum number of threads supported."
103
    }
104
 
105
}
106
 
107
# ====================================================================
108
 
109
cdl_component CYGPKG_POSIX_PTHREAD_FEATURES {
110
        display         "Fixed Feature test macros for POSIX"
111
        flavor          bool
112
        calculated      1
113
        description     "These options define POSIX feature test macros that
114
                         describe the eCos implementation of pthreads. These
115
                         are not changeable configuration options."
116
 
117
    cdl_option _POSIX_THREADS {
118
        display         "POSIX thread support feature test macro"
119
        flavor          bool
120
        calculated      1
121
        requires        CYGSEM_KERNEL_SCHED_TIMESLICE
122
        requires        CYGVAR_KERNEL_THREADS_DATA
123
        description     "This option defines the POSIX feature test macro
124
                        for thread support."
125
    }
126
 
127
    cdl_option _POSIX_THREAD_PRIORITY_SCHEDULING {
128
        display         "POSIX thread priority scheduling feature test macro"
129
        flavor          bool
130
        calculated      1
131
        requires        CYGSEM_KERNEL_SCHED_MLQUEUE
132
        requires      _POSIX_THREADS
133
        description     "This option defines the POSIX feature test macro
134
                        for thread priority scheduling support."
135
    }
136
 
137
    cdl_option _POSIX_THREAD_ATTR_STACKADDR {
138
        display         "POSIX stack address attribute feature test macro"
139
        flavor          bool
140
        calculated      1
141
        description     "This option defines the POSIX feature test macro
142
                        for supporting the thread stack address in the thread
143
                        attribute object."
144
    }
145
 
146
    cdl_option _POSIX_THREAD_ATTR_STACKSIZE {
147
        display         "POSIX stack size attribute feature test macro"
148
        flavor          bool
149
        calculated      1
150
        description     "This option defines the POSIX feature test macro
151
                        for supporting the thread stack size in the thread
152
                        attribute object."
153
    }
154
 
155
    cdl_option _POSIX_THREAD_PROCESS_SHARED {
156
        display         "POSIX process shared attribute feature test macro"
157
        flavor          bool
158
        calculated      0
159
        description     "This option defines the POSIX feature test macro
160
                        for supporting process shared mutexes. Since eCos
161
                        does not have processes, this attribute is undefined."
162
    }
163
 
164
}
165
 
166
# ====================================================================
167
 
168
cdl_component CYGPKG_POSIX_MAIN_THREAD {
169
        display         "Main thread configuration"
170
        flavor          bool
171
        calculated      1
172
        requires        { 0 != CYGPKG_LIBC_STARTUP }
173
        requires        CYGSEM_LIBC_STARTUP_MAIN_OTHER
174
        implements      CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
175
        description     "These options control the thread used to
176
                         run the main() application entry routine."
177
 
178
        cdl_option CYGNUM_POSIX_MAIN_DEFAULT_PRIORITY {
179
             display        "main()'s default thread priority"
180
             flavor         data
181
             legal_values   0 to 31
182
             default_value  16
183
             description    "
184
                POSIX compatibility requires that the application's
185
                main() function be invoked in a thread.
186
                This option controls the priority of that thread. This
187
                priority is the POSIX priority and is NOT the same as
188
                an eCos thread priority. With POSIX thread priorities,
189
                lower numbers are lower priority, and higher numbers are
190
                higher priority."
191
        }
192
}
193
 
194
# ====================================================================
195
# End of pthread.cdl
196
 
197
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.