diff options
Diffstat (limited to '')
-rw-r--r-- | c/src/exec/itron/include/itronsys/task.h | 298 |
1 files changed, 0 insertions, 298 deletions
diff --git a/c/src/exec/itron/include/itronsys/task.h b/c/src/exec/itron/include/itronsys/task.h deleted file mode 100644 index d4f7a5e470..0000000000 --- a/c/src/exec/itron/include/itronsys/task.h +++ /dev/null @@ -1,298 +0,0 @@ -/* - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - -#ifndef __ITRON_TASK_h_ -#define __ITRON_TASK_h_ - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * Create Task (cre_tsk) Structure - */ - -typedef struct t_ctsk { - VP exinf; /* extended information */ - ATR tskatr; /* task attributes */ - FP task; /* task start address */ - PRI itskpri; /* initial task priority */ - INT stksz; /* stack size */ - /* additional information may be included depending on the implementation */ -} T_CTSK; - -/* - * Values for the tskatr field - */ - -#define TA_ASM 0x00 /* program written in assembly language */ -#define TA_HLNG 0x01 /* program written in high-level language */ -#define TA_COP0 0x8000 /* uses coprocessor having ID = 0 */ -#define TA_COP1 0x4000 /* uses coprocessor having ID = 1 */ -#define TA_COP2 0x2000 /* uses coprocessor having ID = 2 */ -#define TA_COP3 0x1000 /* uses coprocessor having ID = 3 */ -#define TA_COP4 0x0800 /* uses coprocessor having ID = 4 */ -#define TA_COP5 0x0400 /* uses coprocessor having ID = 5 */ -#define TA_COP6 0x0200 /* uses coprocessor having ID = 6 */ -#define TA_COP7 0x0100 /* uses coprocessor having ID = 7 */ - -/* - * Values for the tskid field - */ - -#define TSK_SELF 0 /* task specifies itself */ - -/* XXX is this a mistake in ITRON? FALSE was here and in the types list */ -#if 0 - -#define FALSE 0 /* indicates a task-independent portion (return */ - /* parameters only) */ -#endif - -/* - * Values for the tskpri field - */ - -#define TPRI_INI 0 /* specifies the initial priority on */ - /* task startup (chg_pri) */ -#define TPRI_RUN 0 /* specifies the highest priority during */ - /* execution (rot_rdq) */ - - -/* - * Reference Task (ref_tsk) Structure - */ - -typedef struct t_rtsk { - VP exinf; /* extended information */ - PRI tskpri; /* current priority */ - UINT tskstat; /* task state */ - /* - * The following are represent extended features of support - * [level X] (implementation-dependent). - */ - UINT tskwait; /* cause of wait */ - ID wid; /* ID of object being waited for */ - INT wupcnt; /* wakeup request count */ - INT suscnt; /* SUSPEND request count */ - ATR tskatr; /* task attributes */ - FP task; /* task start address */ - PRI itskpri; /* initial task priority */ - INT stksz; /* stack size */ -} T_RTSK; - -/* - * Values for the tskstat field - */ - - -#define TTS_RUN 0x01 /* RUN */ -#define TTS_RDY 0x02 /* READY */ -#define TTS_WAI 0x04 /* WAIT */ -#define TTS_SUS 0x08 /* SUSPEND */ -#define TTS_WAS 0x0C /* WAIT-SUSPEND */ -#define TTS_DMT 0x10 /* DORMANT */ - -/* - * Values for the tskwait field - */ - -#define TTW_SLP 0x0001 /* wait due to slp_tsk or tslp_tsk */ -#define TTW_DLY 0x0002 /* wait due to dly_tsk */ -#define TTW_NOD 0x0008 /* connection function response wait */ -#define TTW_FLG 0x0010 /* wait due to wai_flg or twai_flg */ -#define TTW_SEM 0x0020 /* wait due to wai_sem or twai_sem */ -#define TTW_MBX 0x0040 /* wait due to rcv_msg or trcv_msg */ -#define TTW_SMBF 0x0080 /* wait due to snd_mbf or tsnd_mbf */ -#define TTW_MBF 0x0100 /* wait due to rcv_mbf or trcv_mbf */ -#define TTW_CAL 0x0200 /* wait for rendezvous call */ -#define TTW_ACP 0x0400 /* wait for rendezvous accept */ -#define TTW_RDV 0x0800 /* wait for rendezvous completion */ -#define TTW_MPL 0x1000 /* wait due to get_blk or tget_blk */ -#define TTW_MPF 0x2000 /* wait due to get_blf or tget_blf */ - -/* - * Since the task states given by tskstat and tskwait are expressed - * by bit correspondences, they are convenient when looking for OR - * conditions (such as whether a task is in WAIT or READY state). - */ - -/* - * Task Management Functions - */ - -/* - * cre_tsk - Create Task - */ - -ER cre_tsk( - ID tskid, - T_CTSK *pk_ctsk -); - -/* - * del_tsk - Delete Task - */ - -ER del_tsk( - ID tskid -); - -/* - * sta_tsk - Start Task - */ - -ER sta_tsk( - ID tskid, - INT stacd -); - -/* - * ext_tsk - Exit Issuing Task - */ - -void ext_tsk( void ); - -/* - * exd_tsk - Exit and Delete Task - */ - -void exd_tsk( void ); - -/* - * ter_tsk - Terminate Other Task - */ - -ER ter_tsk( - ID tskid -); - -/* - * dis_dsp - Disable Dispatch - */ - -ER dis_dsp( void ); - -/* - * ena_dsp - Enable Dispatch - */ - -ER ena_dsp( void ); - -/* - * chg_pri - Change Task Priority - */ - -ER chg_pri( - ID tskid, - PRI tskpri -); - -/* - * rot_rdq - Rotate Tasks on the Ready Queue - */ - -ER rot_rdq( - PRI tskpri -); - -/* - * rel_wai - Release Wait of Other Task - */ - -ER rel_wai( - ID tskid -); - -/* - * get_tid - Get Task Identifier - */ - -ER get_tid( - ID *p_tskid -); - -/* - * ref_tsk - Reference Task Status - */ - -ER ref_tsk( - T_RTSK *pk_rtsk, - ID tskid -); - - -/* - * Task-Dependent Synchronization Functions - */ - -/* - * sus_tsk - Suspend Other Task - */ - -ER sus_tsk( - ID tskid -); - -/* - * rsm_tsk - Resume Suspended Task - */ - -ER rsm_tsk( - ID tskid -); - -/* - * frsm_tsk - Forcibly Resume Suspended Task - */ - -ER frsm_tsk( - ID tskid -); - -/* - * slp_tsk - Sleep Task Sleep Task with Timeout - */ - -ER slp_tsk( void ); - -/* - * tslp_tsk - Sleep Task with Timeout - */ - -ER tslp_tsk( - TMO tmout -); - -/* - * wup_tsk - Wakeup Other Task - */ - -ER wup_tsk( - ID tskid -); - -/* - * can_wup - Cancel Wakeup Request - */ - -ER can_wup( - INT *p_wupcnt, - ID tskid -); - -#ifdef __cplusplus -} -#endif - -#endif -/* end of include file */ - |