syscall.h

00001 /*
00002  * Copyright (C) 2004 Philippe Gerum <rpm@xenomai.org>.
00003  *
00004  * Xenomai is free software; you can redistribute it and/or modify it
00005  * under the terms of the GNU General Public License as published by
00006  * the Free Software Foundation; either version 2 of the License, or
00007  * (at your option) any later version.
00008  *
00009  * Xenomai is distributed in the hope that it will be useful, but
00010  * WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012  * General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU General Public License
00015  * along with Xenomai; if not, write to the Free Software Foundation,
00016  * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
00017  *
00018  * As a special exception, the RTAI project gives permission
00019  * for additional uses of the text contained in its release of
00020  * Xenomai.
00021  *
00022  * The exception is that, if you link the Xenomai libraries with other
00023  * files to produce an executable, this does not by itself cause the
00024  * resulting executable to be covered by the GNU General Public License.
00025  * Your use of that executable is in no way restricted on account of
00026  * linking the Xenomai libraries code into it.
00027  *
00028  * This exception does not however invalidate any other reasons why
00029  * the executable file might be covered by the GNU General Public
00030  * License.
00031  *
00032  * This exception applies only to the code released by the
00033  * RTAI project under the name Xenomai.  If you copy code from other
00034  * RTAI project releases into a copy of Xenomai, as the General Public
00035  * License permits, the exception does not apply to the code that you
00036  * add in this way.  To avoid misleading anyone as to the status of
00037  * such modified files, you must delete this exception notice from
00038  * them.
00039  *
00040  * If you write modifications of your own for Xenomai, it is your
00041  * choice whether to permit this exception to apply to your
00042  * modifications. If you do not wish that, delete this exception
00043  * notice.
00044  */
00045 
00046 #ifndef _RTAI_SYSCALL_H
00047 #define _RTAI_SYSCALL_H
00048 
00049 #ifndef __RTAI_SIM__
00050 #include <nucleus/asm/syscall.h>
00051 #endif /* __RTAI_SIM__ */
00052 
00053 #define __rtai_task_create        0
00054 #define __rtai_task_bind          1
00055 #define __rtai_task_start         2
00056 #define __rtai_task_suspend       3
00057 #define __rtai_task_resume        4
00058 #define __rtai_task_delete        5
00059 #define __rtai_task_yield         6
00060 #define __rtai_task_set_periodic  7
00061 #define __rtai_task_wait_period   8
00062 #define __rtai_task_set_priority  9
00063 #define __rtai_task_sleep         10
00064 #define __rtai_task_sleep_until   11
00065 #define __rtai_task_unblock       12
00066 #define __rtai_task_inquire       13
00067 #define __rtai_task_notify        14
00068 #define __rtai_task_set_mode      15
00069 #define __rtai_task_self          16
00070 #define __rtai_task_slice         17
00071 #define __rtai_timer_start        18
00072 #define __rtai_timer_stop         19
00073 #define __rtai_timer_read         20
00074 #define __rtai_timer_tsc          21
00075 #define __rtai_timer_ns2ticks     22
00076 #define __rtai_timer_ticks2ns     23
00077 #define __rtai_timer_inquire      24
00078 #define __rtai_sem_create         25
00079 #define __rtai_sem_bind           26
00080 #define __rtai_sem_delete         27
00081 #define __rtai_sem_p              28
00082 #define __rtai_sem_v              29
00083 #define __rtai_sem_inquire        30
00084 #define __rtai_event_create       31
00085 #define __rtai_event_bind         32
00086 #define __rtai_event_delete       33
00087 #define __rtai_event_wait         34
00088 #define __rtai_event_signal       35
00089 #define __rtai_event_clear        36
00090 #define __rtai_event_inquire      37
00091 #define __rtai_mutex_create       38
00092 #define __rtai_mutex_bind         39
00093 #define __rtai_mutex_delete       40
00094 #define __rtai_mutex_lock         41
00095 #define __rtai_mutex_unlock       42
00096 #define __rtai_mutex_inquire      43
00097 #define __rtai_cond_create        44
00098 #define __rtai_cond_bind          45
00099 #define __rtai_cond_delete        46
00100 #define __rtai_cond_wait          47
00101 #define __rtai_cond_signal        48
00102 #define __rtai_cond_broadcast     49
00103 #define __rtai_cond_inquire       50
00104 #define __rtai_queue_create       51
00105 #define __rtai_queue_bind         52
00106 #define __rtai_queue_delete       53
00107 #define __rtai_queue_alloc        54
00108 #define __rtai_queue_free         55
00109 #define __rtai_queue_send         56
00110 #define __rtai_queue_recv         57
00111 #define __rtai_queue_inquire      58
00112 #define __rtai_heap_create        59
00113 #define __rtai_heap_bind          60
00114 #define __rtai_heap_delete        61
00115 #define __rtai_heap_alloc         62
00116 #define __rtai_heap_free          63
00117 #define __rtai_heap_inquire       64
00118 #define __rtai_alarm_create       65
00119 #define __rtai_alarm_delete       66
00120 #define __rtai_alarm_start        67
00121 #define __rtai_alarm_stop         68
00122 #define __rtai_alarm_wait         69
00123 #define __rtai_alarm_inquire      70
00124 
00125 struct rt_arg_bulk {
00126 
00127     u_long a1;
00128     u_long a2;
00129     u_long a3;
00130     u_long a4;
00131     u_long a5;
00132 };
00133 
00134 #ifdef __KERNEL__
00135 
00136 #ifdef __cplusplus
00137 extern "C" {
00138 #endif
00139 
00140 int __syscall_pkg_init(void);
00141 
00142 void __syscall_pkg_cleanup(void);
00143 
00144 #ifdef __cplusplus
00145 }
00146 #endif
00147 
00148 #endif /* __KERNEL__ */
00149 
00150 #endif /* _RTAI_SYSCALL_H */

Generated on Mon Dec 13 09:49:49 2004 for RTAI API by  doxygen 1.3.9.1