RTEMS ITRON 3.0 API User's Guide
ER cre_flg( ID flgid, T_CFLG *pk_cflg );
E_OK
- Normal Completion
E_NOMEM
- Insufficient memory (Memory for control block cannot be
allocated)
E_ID
- Invalid ID number (flgid was invalid or could not be used)
E_RSATR
- Reserved attribute (flgatr was invalid or could not be
used)
E_OBJ
- Invalid object state (an eventflag of the same ID already
exists)
E_OACV
- Object access violation (A flgid less than -4 was
specified from a user task. This is implementation dependent.)
E_PAR
- Parameter error (pk_cflg is invalid)
EN_OBJNO
- An object number which could not be accessed on the
target node is specified.
EN_CTXID
- Specified an object on another node when the system call
was issued from a task in dispatch disabled state or from a
task-independent portion
EN_PAR
- A value outside the range supported by the target node
and/or transmission packet format was specified as a parameter (a value
outside supported range was specified for exinf, flgatr and/or iflgptn)
This system call creates the eventflag specified by flgid
.
Specifically, a control block for the eventflag to be created is allocated
and the associated flag pattern is initialized using iflgptn
. A
single eventflag handles one word's worth of bits of the processor in
question as a group. All operations are done in single word units.
User eventflags have positive ID numbers, while system eventflags have
negative ID numbers. User tasks (tasks having positive task IDs) cannot
access system eventflags. An E_OACV
error will result if a user
task issues a system call on a system eventflag, but error detection is
implementation dependent.
Eventflags having ID numbers from -4 through 0 cannot be created. An
E_ID
error will result if a value in this range is specified for
flgid
.
The system attribute part of flgatr
may be specified as TA_WSGL
(Wait Single Task) or TA_WMUL
(Wait Multiple Tasks)
Multiprocessing is not supported. Thus none of the "EN_
" status
codes will be returned.
All memory is preallocated for RTEMS ITRON
objects. Thus, no
dynamic memory allocation is performed by cre_flg
and the
E_NOMEM
error can not be returned.
RTEMS ITRON 3.0 API User's Guide
Copyright © 1988-2008 OAR Corporation