URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Subversion Repositories openrisc_2011-10-31
Compare Revisions
- This comparison shows the changes necessary to convert path
/openrisc/trunk/rtos/ecos-2.0/packages/compat/uitron/v2_0/cdl
- from Rev 27 to Rev 174
- ↔ Reverse comparison
Rev 27 → Rev 174
/uitron.cdl
0,0 → 1,437
# ==================================================================== |
# |
# uitron.cdl |
# |
# uITRON configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): bartv |
# Original data: hmt |
# Contributors: |
# Date: 1999-06-13 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_package CYGPKG_UITRON { |
display "uITRON compatibility layer" |
include_dir cyg/compat/uitron |
doc ref/compat-uitron.html |
requires CYGPKG_KERNEL |
description " |
eCos supports a uITRON Compatibility Layer, providing |
full Level S (Standard) compliance with Version 3.02 of |
the uITRON Standard, plus many Level E (Extended) features. |
uITRON is the premier Japanese embedded RTOS standard." |
|
compile uit_func.cxx uit_ifnc.cxx uit_objs.cxx |
|
# ------------------------------------------------------------------------ |
# Conformance check |
# ------------------------------------------------------------------------ |
cdl_interface CYGINT_UITRON_CONFORMANCE { |
requires 1 == CYGINT_UITRON_CONFORMANCE |
} |
|
cdl_option CYGIMP_UITRON_STRICT_CONFORMANCE { |
display "Check strict uITRON standards conformance" |
default_value 0 |
requires CYGVAR_KERNEL_COUNTERS_CLOCK |
requires CYGSEM_KERNEL_SCHED_MLQUEUE |
requires !CYGSEM_KERNEL_SCHED_TIMESLICE |
requires CYGFUN_KERNEL_THREADS_TIMER |
implements CYGINT_UITRON_CONFORMANCE |
description " |
Require the rest of the system configuration |
to match the needs of strict uITRON standards conformance. |
This option can only be set if the rest of the system is |
configured correctly for uITRON semantics, for example |
there must be a realtime clock, a suitable scheduler, and no |
timeslicing. |
Of course a system without this selected can be completely |
conformant; this is here to help you check." |
} |
cdl_option CYGIMP_UITRON_LOOSE_CONFORMANCE { |
display "System configuration overrides uITRON" |
default_value 1 |
implements CYGINT_UITRON_CONFORMANCE |
description " |
Do not require the rest of the system configuration |
to match the needs of strict uITRON standards conformance. |
For example a bitmap scheduler, or timeslicing, can be used |
with the uITRON functions, but such an environment is not |
strictly conformant with the uITRON specification. |
Of course a system with this selected can be completely |
conformant; but it is up to you to configure it correctly." |
} |
|
# ------------------------------------------------------------------------ |
# uITRON FUNCTION CALLS |
# ------------------------------------------------------------------------ |
cdl_option CYGIMP_UITRON_INLINE_FUNCS { |
display "Inline functions" |
default_value 0 |
description " |
If compiling your application with a C++ compiler, |
uITRON functions can be inline: set this to make it so. |
Inlining functions often increases execution speed, |
though possibly at the cost of a larger executable, |
depending on what functions are used. |
Do NOT set this if compiling your application |
in plain C." |
} |
|
cdl_option CYGIMP_UITRON_CPP_OUTLINE_FUNCS { |
display "C++ function names" |
default_value 0 |
description " |
If compiling your application with a C++ compiler, |
uITRON functions can be given C++ style mangled names: |
set this to make it so. |
This option may make debugging your program easier, |
depending on your development environment. |
Do NOT set this if compiling your application |
in plain C." |
} |
|
cdl_option CYGSEM_UITRON_BAD_PARAMS_RETURN_ERRORS { |
display "Return error codes for bad params" |
default_value 1 |
description " |
When an application is fully debugged there is no need |
to check for bad parameters on every system call, for those |
parameters which are typically pointers or constants. |
Removing the checking code saves space |
and improves performance: set this to make it so. |
When this option is set, the correctness of parameters |
is asserted using CYG_ASSERT() which compiles to |
nothing in a non-debug configuration." |
} |
|
cdl_option CYGSEM_UITRON_PARAMS_NULL_IS_GOOD_PTR { |
display "NULL is a good pointer" |
default_value 0 |
description " |
uITRON deliberately defines the constant NADR (-1) for |
use as an invalid memory address. |
The value -1 is chosen to allow working in microcontrollers |
which have real memory at address zero, the traditional 'C' |
NULL pointer. |
By default, uITRON functions check for both NULL and NADR as |
bad addresses: set this option to prevent checking for |
NULL and allow pointers to address zero to be used." |
} |
|
# ------------------------------------------------------------------------ |
# uITRON KERNEL OBJECTS |
# ------------------------------------------------------------------------ |
cdl_component CYGPKG_UITRON_SEMAS { |
display "Semaphores" |
flavor bool |
default_value 1 |
description " |
uITRON Semaphore objects are used with functions |
named xxx_sem(); they support traditional semaphore |
semantics." |
|
script semas.cdl |
} |
|
cdl_component CYGPKG_UITRON_MBOXES { |
display "Mailboxes" |
flavor bool |
default_value 1 |
description " |
uITRON Mailbox objects are used with functions |
named xxx_msg() and xxx_mbx(); they support |
passing addresses (of 'messages') between tasks |
in a safe manner." |
|
script mboxes.cdl |
} |
|
cdl_component CYGPKG_UITRON_FLAGS { |
display "Eventflags" |
flavor bool |
default_value 1 |
description " |
uITRON Eventflag objects are used with functions |
named xxx_flg(); they support communication between |
tasks by means of setting and clearing bits in a word |
or flag value. |
Waiting for all or any of a set of bits is supported." |
|
script flags.cdl |
} |
|
# ------------------------------------------------------------------------ |
# uITRON TASKS |
# ------------------------------------------------------------------------ |
cdl_component CYGPKG_UITRON_TASKS { |
display "Tasks" |
flavor none |
description " |
uITRON Tasks are the basic blocks of multi-tasking |
in the uITRON world; they are threads or lightweight |
processes, sharing the address space and the CPU. |
They communicate using the primitives outlined above. |
Each has a stack, an entry point (a C or C++ function), |
and (where appropriate) a scheduling priority." |
|
script tasks.cdl |
} |
|
# ------------------------------------------------------------------------ |
# Memory Pools, both fixed and variable block |
# ------------------------------------------------------------------------ |
cdl_component CYGPKG_UITRON_MEMPOOLFIXED { |
display "Fixed-size memorypools" |
flavor bool |
default_value 1 |
requires CYGPKG_MEMALLOC |
description " |
uITRON supports memory pools for dynamic, task-safe |
memory allocation. |
Two kinds are supported, fixed-size and variable-size. |
There may be multiple of each |
type of pool, each with differing characteristics. |
This option controls whether there are any fixed-size |
memorypools in the system. |
A fixed-size memorypool allocates blocks of memory of |
its preset fixed size and none other." |
|
script mempoolfixed.cdl |
} |
|
cdl_component CYGPKG_UITRON_MEMPOOLVAR { |
display "Variable-size memorypools" |
flavor bool |
default_value 1 |
requires CYGPKG_MEMALLOC |
description " |
uITRON supports memory pools for dynamic, task-safe |
memory allocation. |
Two kinds are supported, fixed-size and variable-size. |
There may be multiple of each |
type of pool, each with differing characteristics. |
This option controls whether there are any variable-size |
memorypools in the system. |
A variable-size memorypool allocates blocks of memory of |
any size requested, resources permitting." |
|
script mempoolvar.cdl |
} |
|
# ------------------------------------------------------------------------ |
# One-shot Alarm and Cyclic Alarm handlers: |
# ------------------------------------------------------------------------ |
|
cdl_option CYGSEM_UITRON_TIME_IS_MILLISECONDS { |
display "uITRON time unit is mS" |
flavor bool |
default_value 0 |
active_if CYGVAR_KERNEL_COUNTERS_CLOCK |
description " |
Setting this option enables a conversion feature so that |
time parameters to uITRON APIs are converted from milliSeconds |
to whatever the eCos kernel real-time clock's units are, |
or vice versa. |
If this option is not set, time parameters are expressed in |
kernel clock ticks." |
} |
|
cdl_component CYGPKG_UITRON_ALARMS { |
display "Alarm handlers" |
flavor bool |
default_value 1 |
requires CYGVAR_KERNEL_COUNTERS_CLOCK |
description " |
uITRON Alarm Handlers are used with functions |
named def_alm() and ref_alm(); they support |
simple timing, with a function callback |
at the end of the timed period." |
|
|
cdl_option CYGNUM_UITRON_ALARMS { |
display "Number of alarm handlers" |
flavor data |
legal_values 1 to 65535 |
default_value 3 |
description " |
The number of uITRON alarm |
handlers present in the system. |
Valid alarm handler numbers will range |
from 1 to this value." |
} |
} |
|
cdl_component CYGPKG_UITRON_CYCLICS { |
display "Cyclic handlers" |
flavor bool |
default_value 1 |
requires CYGVAR_KERNEL_COUNTERS_CLOCK |
description " |
uITRON Cyclic Handlers are used with functions |
named xxx_cyc(); they support timing |
with a periodic function callback that |
can be dynamically turned on or off, and |
resynchronized with external events." |
|
cdl_option CYGNUM_UITRON_CYCLICS { |
display "Number cyclic handlers" |
flavor data |
legal_values 1 to 65535 |
default_value 3 |
description " |
The number of uITRON cyclics |
handlers present in the system. |
Valid cyclic handler numbers will range |
from 1 to this value." |
} |
} |
|
# ------------------------------------------------------------------------ |
# Interrupt-safe functions [ixxx_yyy()]: |
# ------------------------------------------------------------------------ |
cdl_component CYGPKG_UITRON_INTERRUPT_FUNCTIONS { |
display "Interrupt-safe functions" |
flavor none |
description "The uITRON system provides some functions which may |
safely be used within interrupt handlers. In eCos, this |
means within ISRs, providing that the corresponding DSR is |
associated with that interrupt. These functions are |
typically named ixxx_yyy(), according to the uITRON |
specification, for example isig_sem() corresponds to normal |
function sig_sem()." |
|
cdl_option CYGSEM_UITRON_ISRFUNCS_TRY_IMMEDIATE_EXECUTION { |
display "Execute in ISR if safe" |
parent CYGPKG_UITRON_INTERRUPT_FUNCTIONS |
flavor bool |
default_value 1 |
description " |
These functions of necessity maintain a queue of |
operations requested for deferred execution. However, |
during an interrupt, it may be safe to perform scheduling |
operations. If this option is set, the interrupt-safe |
functions will have effect there and then if it is indeed |
safe, rather than queueing a request to perform the |
operation in the DSR." |
} |
cdl_option CYGNUM_UITRON_ISR_ACTION_QUEUESIZE { |
display "Deferred operation queue size" |
parent CYGPKG_UITRON_INTERRUPT_FUNCTIONS |
flavor data |
legal_values 4 8 16 32 64 128 256 |
default_value 32 |
description "These functions of necessity maintain a queue of |
operations requested for deferred execution. This option |
controls the queue size. It must be a power of two for |
implementation reasons." |
} |
} |
|
# ------------------------------------------------------------------------ |
# uITRON VERSION INFORMATION |
# ------------------------------------------------------------------------ |
cdl_component CYGPKG_UITRON_VERSION { |
display "Version information" |
flavor none |
description " |
The get_ver() uITRON system call returns |
several version related values describing |
the vendor, product and CPU in question |
as well as the version of the uITRON |
standard supported. |
These values may be specified here." |
|
script version.cdl |
} |
|
define_proc { |
puts $::cdl_header "/***** proc output start *****/" |
puts $::cdl_header "#include <pkgconf/system.h>" |
puts $::cdl_header "#include <pkgconf/kernel.h>" |
puts $::cdl_header "/***** proc output end *****/" |
} |
|
cdl_component CYGPKG_UITRON_OPTIONS { |
display "uITRON build options" |
flavor none |
description " |
Package specific build options including control over |
compiler flags used only in building this package, |
and details of which tests are built." |
|
cdl_option CYGPKG_UITRON_CFLAGS_ADD { |
display "Additional compiler flags" |
flavor data |
no_define |
default_value { "" } |
description " |
This option modifies the set of compiler flags for |
building the uITRON compatibility layer. These flags are used in addition |
to the set of global flags." |
} |
|
cdl_option CYGPKG_UITRON_CFLAGS_REMOVE { |
display "Suppressed compiler flags" |
flavor data |
no_define |
default_value { "" } |
description " |
This option modifies the set of compiler flags for |
building the uITRON compatibility layer. These flags are removed from |
the set of global flags if present." |
} |
|
cdl_option CYGPKG_UITRON_TESTS { |
display "uITRON tests" |
flavor data |
no_define |
calculated { |
"tests/testcxx tests/testcx2 tests/testcx3 tests/testcx4 tests/testcx5 tests/testcx6 tests/testcx7 tests/testcx8 tests/testcx9" |
. ((!CYGIMP_UITRON_INLINE_FUNCS && !CYGIMP_UITRON_CPP_OUTLINE_FUNCS) ? |
" tests/test1 tests/test2 tests/test3 tests/test4 tests/test5 tests/test6 tests/test7 tests/test8 tests/test9 tests/testintr" : "") |
} |
description " |
This option specifies the set of tests for the uITRON compatibility layer." |
} |
} |
} |
/mempoolvar.cdl
0,0 → 1,129
# ==================================================================== |
# |
# mempoolvar.cdl |
# |
# uITRON variable memory pool related configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: hmt |
# Contributors: |
# Date: 1999-07-07 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_option CYGNUM_UITRON_MEMPOOLVAR { |
display "Number of variable-size memory pools" |
flavor data |
legal_values 1 to 65535 |
default_value 3 |
description " |
The number of uITRON Variable-Size Memorypools present in the system. |
Valid Variable-Size Memorypool IDs will range from 1 to this value." |
} |
cdl_component CYGPKG_UITRON_MEMPOOLVAR_CREATE_DELETE { |
display "Support create and delete" |
flavor bool |
default_value 1 |
active_if (0 < CYGNUM_UITRON_MEMPOOLVAR) |
description " |
Support variable-size memory pool create and delete operations |
(cre_mpl, del_mpl). Otherwise all variable-size mempools are created, |
up to the number specified above." |
|
cdl_option CYGNUM_UITRON_MEMPOOLVAR_INITIALLY { |
display "Number of variable-size mempools created initially" |
flavor data |
legal_values 0 to 65535 |
default_value 3 |
description " |
The number of variable-size mempools initially created. |
This number should not be more than the number |
of variable mempools in the system, though setting |
it to a large value to mean 'all' is acceptable. |
Initially, only variable mempools numbered from |
1 to this number exist; |
higher numbered ones must be created before use. |
All mempools must be initialized to tell |
the system what memory to use for each pool." |
} |
} |
cdl_option CYGDAT_UITRON_MEMPOOLVAR_EXTERNS { |
display "Externs for initialization" |
flavor data |
default_value {"static char vpool1[ 2000 ], \\\n\ |
vpool2[ 2000 ], \\\n\ |
vpool3[ 2000 ];"} |
description " |
Variable mempool initializers may refer to external |
objects such as memory for the pool to manage. |
Use this option to define or declare any external |
objects needed by the pool's static initializer below. |
Example: create some memory for a mempool using |
'static char vpool1\[2000\];' |
to set up a chunk of memory of 2000 bytes. |
Note: this option is invoked in the 'outermost' context |
of C++ source, where global/static objects are created; |
it should contain valid, self-contained, C++ source." |
} |
cdl_option CYGDAT_UITRON_MEMPOOLVAR_INITIALIZERS { |
display "Static initializers" |
flavor data |
default_value {"CYG_UIT_MEMPOOLVAR( vpool1, 2000 ), \\\n\ |
CYG_UIT_MEMPOOLVAR( vpool2, 2000 ), \\\n\ |
CYG_UIT_MEMPOOLVAR( vpool3, 2000 ),"} |
description " |
Variable block memory pools should be statically |
initialized: enter a list of initializers |
separated by commas, one per line. |
An initializer is |
'CYG_UIT_MEMPOOLVAR(ADDR,SIZE)' |
where addr is the address of memory to manage, and |
size is the total size of that memory. |
If create and delete operations are supported, |
initializers of the form |
'CYG_UIT_MEMPOOLVAR_NOEXS(ADDR,SIZE)' should be |
used for pools which are not initially created, to tell |
the system what memory to use for each pool. |
Note: this option is invoked in the context of a |
C++ array initializer, between curly brackets. |
Ensure that the number of initializers here exactly |
matches the total number of variable pools specified." |
} |
/tasks.cdl
0,0 → 1,164
# ==================================================================== |
# |
# tasks.cdl |
# |
# uITRON task related configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: hmt |
# Contributors: |
# Date: 1999-07-07 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_option CYGNUM_UITRON_TASKS { |
display "Number of tasks" |
flavor data |
legal_values 1 to 65535 |
default_value 4 |
description " |
The number of uITRON tasks present in the system. |
Valid task object IDs will range from 1 to this value." |
} |
cdl_option CYGNUM_UITRON_START_TASKS { |
display "Start tasks" |
flavor data |
legal_values 0 to 65535 |
default_value 1 |
description " |
The number of uITRON tasks to start automatically. |
Tasks from 1 to this value will be started |
at the beginning of application execution. |
A value of zero here means to start them all. |
Tasks started in this way have a start code of |
zero, as if they were started by sta_tsk(i,0). |
If create and delete operations are supported, |
this number should be no greater than the number |
of tasks created initially." |
} |
cdl_component CYGPKG_UITRON_TASKS_CREATE_DELETE { |
display "Support create and delete" |
flavor bool |
default_value 1 |
description " |
Support task create and delete operations (cre_tsk, del_tsk). |
Otherwise all tasks are created, up to the number specified above." |
|
cdl_option CYGNUM_UITRON_TASKS_INITIALLY { |
display "Number of tasks created initially" |
flavor data |
legal_values 1 to 65535 |
default_value 4 |
description " |
The number of uITRON tasks initially created. |
This number should not be more than the number |
of tasks in the system, though setting it to a large |
value to mean 'all' is acceptable. |
Initially, only tasks numbered 1 to this number exist; |
higher numbered ones must be created before use." |
} |
} |
cdl_option CYGNUM_UITRON_STACK_SIZE { |
display "Default stack size" |
flavor data |
legal_values 128 to 0x7FFFFFFF |
default_value 2048 |
description " |
Define a default stack size for uITRON tasks, |
for use in the initialization options below. |
This will be overridden where it is used if the |
architectural HAL requires a minimum stack size |
to handle interrupts correctly." |
} |
cdl_option CYGDAT_UITRON_TASK_EXTERNS { |
display "Externs for initialization" |
flavor data |
default_value {"extern \"C\" void task1( unsigned int ); \\\n\ |
extern \"C\" void task2( unsigned int ); \\\n\ |
extern \"C\" void task3( unsigned int ); \\\n\ |
extern \"C\" void task4( unsigned int ); \\\n\ |
static char stack1[ MAX(CYGNUM_UITRON_STACK_SIZE, CYGNUM_HAL_STACK_SIZE_MINIMUM) ], \\\n\ |
stack2[ MAX(CYGNUM_UITRON_STACK_SIZE, CYGNUM_HAL_STACK_SIZE_MINIMUM) ], \\\n\ |
stack3[ MAX(CYGNUM_UITRON_STACK_SIZE, CYGNUM_HAL_STACK_SIZE_MINIMUM) ], \\\n\ |
stack4[ MAX(CYGNUM_UITRON_STACK_SIZE, CYGNUM_HAL_STACK_SIZE_MINIMUM) ];"} |
description " |
Task initializers may refer to external objects |
such as memory for stack or functions to call. |
Use this option to define or declare any external |
objects needed by the task static initializer below. |
Example: create some memory for a stack using |
'static char stack1\[CYGNUM_UITRON_STACK_SIZE\];' |
to set up a chunk of memory of the default stack size. |
Note: this option is invoked in the 'outermost' context |
of C++ source, where global/static objects are created; |
it should contain valid, self-contained, C++ source." |
} |
cdl_option CYGDAT_UITRON_TASK_INITIALIZERS { |
display "Static initializers" |
flavor data |
default_value {"CYG_UIT_TASK( \"t1\", 1, task1, &stack1, MAX(CYGNUM_UITRON_STACK_SIZE, CYGNUM_HAL_STACK_SIZE_MINIMUM) ), \\\n\ |
CYG_UIT_TASK( \"t2\", 2, task2, &stack2, MAX(CYGNUM_UITRON_STACK_SIZE, CYGNUM_HAL_STACK_SIZE_MINIMUM) ), \\\n\ |
CYG_UIT_TASK( \"t3\", 3, task3, &stack3, MAX(CYGNUM_UITRON_STACK_SIZE, CYGNUM_HAL_STACK_SIZE_MINIMUM) ), \\\n\ |
CYG_UIT_TASK( \"t4\", 4, task4, &stack4, MAX(CYGNUM_UITRON_STACK_SIZE, CYGNUM_HAL_STACK_SIZE_MINIMUM) ),"} |
description " |
Tasks must be statically |
initialized: enter a list of initializers |
separated by commas, one per line. |
An initializer is |
'CYG_UIT_TASK(NAME,PRIO,FUNC,STACK,SIZE)' |
where name is a quoted string to name the task, |
prio is the initial priority of the task, |
func is the name of the entry point, |
stack is the address of the task's stack, |
and size is the size of the task's stack. |
When create and delete operations are supported, |
'CYG_UIT_TASK_NOEXS(NAME,STACK,SIZE)' should be |
used for tasks which are not initially created, |
in order to tell the system what memory to use |
for stacks when these tasks are created later on. |
Using 'CYGNUM_UITRON_STACK_SIZE' for size |
is recommended, to use the option defined above, |
so long as that truly is the size of your stack(s). |
Note: this option is invoked in the context of a |
C++ array initializer, between curly brackets. |
Ensure that the number of initializers here exactly |
matches the number of tasks specified." |
} |
/version.cdl
0,0 → 1,167
# ==================================================================== |
# |
# verion.cdl |
# |
# uITRON version related configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: hmt |
# Contributors: |
# Date: 1999-07-07 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_option CYGNUM_UITRON_VER_MAKER { |
display "OS maker" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0 |
description " |
This value is returned in the 'maker' |
field of the T_VER structure in |
response to a get_ver() system call." |
} |
cdl_option CYGNUM_UITRON_VER_ID { |
display "OS identification" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0 |
description " |
This value is returned in the 'id' |
field of the T_VER structure in |
response to a get_ver() system call." |
} |
cdl_option CYGNUM_UITRON_VER_SPVER { |
display "ITRON specification" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0x5302 |
description " |
This value is returned in the 'spver' |
field of the T_VER structure in |
response to a get_ver() system call. |
Do NOT change this value." |
} |
cdl_option CYGNUM_UITRON_VER_PRVER { |
display "OS product version" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0x0100 |
description " |
This value is returned in the 'prver' |
field of the T_VER structure in |
response to a get_ver() system call." |
} |
# PRNO fields in own folder |
cdl_component CYGPKG_UITRON_VERSION_PRNO { |
display "Product info" |
flavor none |
description " |
The get_ver() uITRON system call returns |
several version related values describing |
the vendor, product and CPU in question |
as well as the version of the uITRON |
standard supported. |
These values may be specified here." |
|
cdl_option CYGNUM_UITRON_VER_PRNO_0 { |
display "Field 0" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0 |
description " |
This value is returned in the 'prno\[0\]' |
field of the T_VER structure in |
response to a get_ver() system call." |
} |
cdl_option CYGNUM_UITRON_VER_PRNO_1 { |
display "Field 1" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0 |
description " |
This value is returned in the 'prno\[1\]' |
field of the T_VER structure in |
response to a get_ver() system call." |
} |
cdl_option CYGNUM_UITRON_VER_PRNO_2 { |
display "Field 2" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0 |
description " |
This value is returned in the 'prno\[2\]' |
field of the T_VER structure in |
response to a get_ver() system call." |
} |
cdl_option CYGNUM_UITRON_VER_PRNO_3 { |
display "Field 3" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0 |
description " |
This value is returned in the 'prno\[3\]' |
field of the T_VER structure in |
response to a get_ver() system call." |
} |
} |
|
cdl_option CYGNUM_UITRON_VER_CPU { |
display "CPU information" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0 |
description " |
This value is returned in the 'cpu' |
field of the T_VER structure in |
response to a get_ver() system call." |
} |
cdl_option CYGNUM_UITRON_VER_VAR { |
display "System variant" |
flavor data |
legal_values 0 to 0xFFFF |
default_value 0x8000 |
description " |
This value is returned in the 'var' |
field of the T_VER structure in |
response to a get_ver() system call. |
Do NOT change this value." |
} |
/mempoolfixed.cdl
0,0 → 1,138
# ==================================================================== |
# |
# mempoolfixed.cdl |
# |
# uITRON fixed memory pool related configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: hmt |
# Contributors: |
# Date: 1999-07-07 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_option CYGNUM_UITRON_MEMPOOLFIXED { |
display "Number of fixed-size memorypools" |
flavor data |
legal_values 1 to 65535 |
default_value 3 |
description " |
The number of uITRON Fixed-Size |
Memorypools present in the system. |
Valid Fixed-Size Memorypool IDs will range |
from 1 to this value." |
} |
cdl_component CYGPKG_UITRON_MEMPOOLFIXED_CREATE_DELETE { |
display "Support create and delete" |
flavor bool |
default_value 1 |
active_if (0 < CYGNUM_UITRON_MEMPOOLFIXED) |
description " |
Support fixed-size memory pool |
create and delete operations |
(cre_mpf, del_mpf). |
Otherwise all fixed mempools are created, |
up to the number specified above." |
|
cdl_option CYGNUM_UITRON_MEMPOOLFIXED_INITIALLY { |
display "Number of fixed mempools created initially" |
flavor data |
legal_values 0 to 65535 |
default_value 3 |
description " |
The number of fixed mempools initially created. |
This number should not be more than the number |
of fixed mempools in the system, though setting |
it to a large value to mean 'all' is acceptable. |
Initially, only fixed mempools numbered from |
1 to this number exist; |
higher numbered ones must be created before use. |
Whilst all mempools must be initialized to tell |
the system what memory to use for each pool, |
it is only useful to initialize the blocksize of |
fixed mempools up to this number; |
the blocksize for higher numbered ones |
will be defined when they are created." |
} |
} |
cdl_option CYGDAT_UITRON_MEMPOOLFIXED_EXTERNS { |
display "Externs for initialization" |
flavor data |
default_value {"static char fpool1[ 2000 ], \\\n\ |
fpool2[ 2000 ], \\\n\ |
fpool3[ 2000 ];"} |
description " |
Fixed mempool initializers may refer to external |
objects such as memory for the pool to manage. |
Use this option to define or declare any external |
objects needed by the pool's static initializer below. |
Example: create some memory for a mempool using |
'static char fpool1\[2000\];' |
to set up a chunk of memory of 2000 bytes. |
Note: this option is invoked in the 'outermost' context |
of C++ source, where global/static objects are created; |
it should contain valid, self-contained, C++ source." |
} |
cdl_option CYGDAT_UITRON_MEMPOOLFIXED_INITIALIZERS { |
display "Static initializers" |
flavor data |
default_value {"CYG_UIT_MEMPOOLFIXED( fpool1, 2000, 20 ), \\\n\ |
CYG_UIT_MEMPOOLFIXED( fpool2, 2000, 100 ), \\\n\ |
CYG_UIT_MEMPOOLFIXED( fpool3, 2000, 500 ),"} |
description " |
Fixed block memory pools should be statically |
initialized: enter a list of initializers |
separated by commas, one per line. |
An initializer is |
'CYG_UIT_MEMPOOLFIXED(ADDR,SIZE,BLOCK)' |
where addr is the address of memory to manage, |
size is the total size of that memory, and |
block is the block size for allocation by the pool. |
If create and delete operations are supported, |
initializers of the form |
'CYG_UIT_MEMPOOLFIXED_NOEXS(ADDR,SIZE)' should be |
used for pools which are not initially created, to tell |
the system what memory to use for each pool. |
Note: this option is invoked in the context of a |
C++ array initializer, between curly brackets. |
Ensure that the number of initializers here exactly |
matches the total number of fixed pools specified." |
} |
/semas.cdl
0,0 → 1,115
# ==================================================================== |
# |
# semas.cdl |
# |
# uITRON semaphore related configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: hmt |
# Contributors: |
# Date: 1999-07-07 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_option CYGNUM_UITRON_SEMAS { |
display "Number of semaphores" |
flavor data |
legal_values 1 to 65535 |
default_value 3 |
description " |
The number of uITRON semaphores present in the system. |
Valid semaphore object IDs will range from 1 to this value." |
} |
cdl_component CYGPKG_UITRON_SEMAS_CREATE_DELETE { |
display "Support create and delete" |
flavor bool |
default_value 1 |
description " |
Support semaphore create and delete operations (cre_sem, del_sem). |
Otherwise all semaphores are created, up to the number specified |
above." |
|
cdl_option CYGNUM_UITRON_SEMAS_INITIALLY { |
display "Number of semaphores created initially" |
flavor data |
legal_values 0 to 65535 |
default_value 3 |
description " |
The number of uITRON semaphores initially created. |
This number should not be more than the number |
of semaphores in the system, though setting it to a large |
value to mean 'all' is acceptable. |
Initially, only semaphores numbered 1 to this number exist; |
higher numbered ones must be created before use. |
It is only useful to initialize semaphores up to this number; |
higher numbered ones must be created in order to use them, |
and so they will be re-initialized." |
} |
} |
cdl_component CYGPKG_UITRON_SEMAS_ARE_INITIALIZED { |
display "Initialize semaphore counts" |
flavor bool |
default_value 0 |
description " |
Initialize semaphores to specific count values. |
Otherwise semaphores are initialized with the count |
set to zero." |
|
cdl_option CYGDAT_UITRON_SEMA_INITIALIZERS { |
display "Static initializers" |
parent CYGPKG_UITRON_SEMAS_ARE_INITIALIZED |
flavor data |
default_value {"CYG_UIT_SEMA( 0 ),\ |
CYG_UIT_SEMA( 0 ),\ |
CYG_UIT_SEMA( 0 )"} |
description " |
A list of initializers separated by commas, |
one per line. |
An initializer is 'CYG_UIT_SEMA(INITIAL-COUNT)' |
or 'CYG_UIT_SEMA_NOEXS' for slots above the number |
initially to be created, when create and delete |
operations are supported. |
Note: this option is invoked in the context of a |
C++ array initializer, between curly brackets. |
Ensure that the number of initializers here exactly |
matches the total number of semaphores specified." |
} |
} |
/flags.cdl
0,0 → 1,82
# ==================================================================== |
# |
# flags.cdl |
# |
# uITRON flags related configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: hmt |
# Contributors: |
# Date: 1999-07-07 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_option CYGNUM_UITRON_FLAGS { |
display "Number of eventflags" |
flavor data |
legal_values 1 to 65535 |
default_value 5 |
description " |
The number of uITRON eventflag objects present in the system. |
Valid eventflag object IDs will range from 1 to this value." |
} |
cdl_component CYGPKG_UITRON_FLAGS_CREATE_DELETE { |
display "Support create and delete" |
flavor bool |
default_value 1 |
description " |
Support eventflag create and delete operations (cre_flg, del_flg). |
Otherwise all eventflags are created, up to the number specified above." |
|
cdl_option CYGNUM_UITRON_FLAGS_INITIALLY { |
display "Number of eventflags created initially" |
flavor data |
legal_values 0 to 65535 |
default_value 5 |
description " |
The number of uITRON eventflags initially created. |
This number should not be more than the number |
of eventflags in the system, though setting it to a large |
value to mean 'all' is acceptable. |
Initially, only eventflags numbered 1 to this number exist; |
higher numbered ones must be created before use." |
} |
} |
/mboxes.cdl
0,0 → 1,82
# ==================================================================== |
# |
# mboxes.cdl |
# |
# uITRON mbox related configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: hmt |
# Contributors: |
# Date: 1999-07-07 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_option CYGNUM_UITRON_MBOXES { |
display "Number of mailboxes" |
flavor data |
legal_values 1 to 65535 |
default_value 4 |
description " |
The number of uITRON mailboxes present in the system. |
Valid mailbox object IDs will range from 1 to this value." |
} |
cdl_component CYGPKG_UITRON_MBOXES_CREATE_DELETE { |
display "Support create and delete" |
flavor bool |
default_value 1 |
description " |
Support mailbox create and delete operations (cre_mbx, del_mbx). |
Otherwise all mailboxes are created, up to the number specified above." |
|
cdl_option CYGNUM_UITRON_MBOXES_INITIALLY { |
display "Number of mailboxes created initially" |
flavor data |
legal_values 0 to 65535 |
default_value 4 |
description " |
The number of uITRON mailboxes initially created. |
This number should not be more than the number |
of mailboxes in the system, though setting it to a large |
value to mean 'all' is acceptable. |
Initially, only mailboxes numbered 1 to this number exist; |
higher numbered ones must be created before use." |
} |
} |