File: include_2native_2syscall_8h-source.html

package info (click to toggle)
xenomai 2.5.4-3squeeze1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 36,140 kB
  • ctags: 35,509
  • sloc: ansic: 109,084; sh: 11,745; makefile: 2,205; xml: 1,356; asm: 613; php: 316; perl: 155
file content (201 lines) | stat: -rw-r--r-- 20,681 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Xenomai API: include/native/syscall.h Source File</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    <li>
      <form action="search.php" method="get">
        <table cellspacing="0" cellpadding="0" border="0">
          <tr>
            <td><label>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</label></td>
            <td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
          </tr>
        </table>
      </form>
    </li>
    </ul>
  </div>
<h1>include/native/syscall.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
<a name="l00002"></a>00002 <span class="comment"> * Copyright (C) 2004 Philippe Gerum &lt;rpm@xenomai.org&gt;.</span>
<a name="l00003"></a>00003 <span class="comment"> *</span>
<a name="l00004"></a>00004 <span class="comment"> * Xenomai is free software; you can redistribute it and/or modify it</span>
<a name="l00005"></a>00005 <span class="comment"> * under the terms of the GNU General Public License as published by</span>
<a name="l00006"></a>00006 <span class="comment"> * the Free Software Foundation; either version 2 of the License, or</span>
<a name="l00007"></a>00007 <span class="comment"> * (at your option) any later version.</span>
<a name="l00008"></a>00008 <span class="comment"> *</span>
<a name="l00009"></a>00009 <span class="comment"> * Xenomai is distributed in the hope that it will be useful, but</span>
<a name="l00010"></a>00010 <span class="comment"> * WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<a name="l00011"></a>00011 <span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU</span>
<a name="l00012"></a>00012 <span class="comment"> * General Public License for more details.</span>
<a name="l00013"></a>00013 <span class="comment"> *</span>
<a name="l00014"></a>00014 <span class="comment"> * You should have received a copy of the GNU General Public License</span>
<a name="l00015"></a>00015 <span class="comment"> * along with Xenomai; if not, write to the Free Software Foundation,</span>
<a name="l00016"></a>00016 <span class="comment"> * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.</span>
<a name="l00017"></a>00017 <span class="comment"> */</span>
<a name="l00018"></a>00018 
<a name="l00019"></a>00019 <span class="preprocessor">#ifndef _NATIVE_SYSCALL_H</span>
<a name="l00020"></a>00020 <span class="preprocessor"></span><span class="preprocessor">#define _NATIVE_SYSCALL_H</span>
<a name="l00021"></a>00021 <span class="preprocessor"></span>
<a name="l00022"></a>00022 <span class="preprocessor">#ifndef __XENO_SIM__</span>
<a name="l00023"></a>00023 <span class="preprocessor"></span><span class="preprocessor">#include &lt;asm/xenomai/syscall.h&gt;</span>
<a name="l00024"></a>00024 <span class="preprocessor">#endif </span><span class="comment">/* __XENO_SIM__ */</span>
<a name="l00025"></a>00025 
<a name="l00026"></a>00026 <span class="preprocessor">#define __native_task_create        0</span>
<a name="l00027"></a>00027 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_bind          1</span>
<a name="l00028"></a>00028 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_start         2</span>
<a name="l00029"></a>00029 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_suspend       3</span>
<a name="l00030"></a>00030 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_resume        4</span>
<a name="l00031"></a>00031 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_delete        5</span>
<a name="l00032"></a>00032 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_yield         6</span>
<a name="l00033"></a>00033 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_set_periodic  7</span>
<a name="l00034"></a>00034 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_wait_period   8</span>
<a name="l00035"></a>00035 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_set_priority  9</span>
<a name="l00036"></a>00036 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_sleep         10</span>
<a name="l00037"></a>00037 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_sleep_until   11</span>
<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_unblock       12</span>
<a name="l00039"></a>00039 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_inquire       13</span>
<a name="l00040"></a>00040 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_notify        14</span>
<a name="l00041"></a>00041 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_set_mode      15</span>
<a name="l00042"></a>00042 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_self          16</span>
<a name="l00043"></a>00043 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_slice         17</span>
<a name="l00044"></a>00044 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_send          18</span>
<a name="l00045"></a>00045 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_receive       19</span>
<a name="l00046"></a>00046 <span class="preprocessor"></span><span class="preprocessor">#define __native_task_reply         20</span>
<a name="l00047"></a>00047 <span class="preprocessor"></span><span class="preprocessor">#define __native_timer_set_mode     21</span>
<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor">#define __native_unimp_22           22</span>
<a name="l00049"></a>00049 <span class="preprocessor"></span><span class="preprocessor">#define __native_timer_read         23</span>
<a name="l00050"></a>00050 <span class="preprocessor"></span><span class="preprocessor">#define __native_timer_tsc          24</span>
<a name="l00051"></a>00051 <span class="preprocessor"></span><span class="preprocessor">#define __native_timer_ns2ticks     25</span>
<a name="l00052"></a>00052 <span class="preprocessor"></span><span class="preprocessor">#define __native_timer_ticks2ns     26</span>
<a name="l00053"></a>00053 <span class="preprocessor"></span><span class="preprocessor">#define __native_timer_inquire      27</span>
<a name="l00054"></a>00054 <span class="preprocessor"></span><span class="preprocessor">#define __native_timer_spin         28</span>
<a name="l00055"></a>00055 <span class="preprocessor"></span><span class="preprocessor">#define __native_sem_create         29</span>
<a name="l00056"></a>00056 <span class="preprocessor"></span><span class="preprocessor">#define __native_sem_bind           30</span>
<a name="l00057"></a>00057 <span class="preprocessor"></span><span class="preprocessor">#define __native_sem_delete         31</span>
<a name="l00058"></a>00058 <span class="preprocessor"></span><span class="preprocessor">#define __native_sem_p              32</span>
<a name="l00059"></a>00059 <span class="preprocessor"></span><span class="preprocessor">#define __native_sem_v              33</span>
<a name="l00060"></a>00060 <span class="preprocessor"></span><span class="preprocessor">#define __native_sem_broadcast      34</span>
<a name="l00061"></a>00061 <span class="preprocessor"></span><span class="preprocessor">#define __native_sem_inquire        35</span>
<a name="l00062"></a>00062 <span class="preprocessor"></span><span class="preprocessor">#define __native_event_create       36</span>
<a name="l00063"></a>00063 <span class="preprocessor"></span><span class="preprocessor">#define __native_event_bind         37</span>
<a name="l00064"></a>00064 <span class="preprocessor"></span><span class="preprocessor">#define __native_event_delete       38</span>
<a name="l00065"></a>00065 <span class="preprocessor"></span><span class="preprocessor">#define __native_event_wait         39</span>
<a name="l00066"></a>00066 <span class="preprocessor"></span><span class="preprocessor">#define __native_event_signal       40</span>
<a name="l00067"></a>00067 <span class="preprocessor"></span><span class="preprocessor">#define __native_event_clear        41</span>
<a name="l00068"></a>00068 <span class="preprocessor"></span><span class="preprocessor">#define __native_event_inquire      42</span>
<a name="l00069"></a>00069 <span class="preprocessor"></span><span class="preprocessor">#define __native_mutex_create       43</span>
<a name="l00070"></a>00070 <span class="preprocessor"></span><span class="preprocessor">#define __native_mutex_bind         44</span>
<a name="l00071"></a>00071 <span class="preprocessor"></span><span class="preprocessor">#define __native_mutex_delete       45</span>
<a name="l00072"></a>00072 <span class="preprocessor"></span><span class="preprocessor">#define __native_mutex_acquire      46</span>
<a name="l00073"></a>00073 <span class="preprocessor"></span><span class="preprocessor">#define __native_mutex_release      47</span>
<a name="l00074"></a>00074 <span class="preprocessor"></span><span class="preprocessor">#define __native_mutex_inquire      48</span>
<a name="l00075"></a>00075 <span class="preprocessor"></span><span class="preprocessor">#define __native_cond_create        49</span>
<a name="l00076"></a>00076 <span class="preprocessor"></span><span class="preprocessor">#define __native_cond_bind          50</span>
<a name="l00077"></a>00077 <span class="preprocessor"></span><span class="preprocessor">#define __native_cond_delete        51</span>
<a name="l00078"></a>00078 <span class="preprocessor"></span><span class="preprocessor">#define __native_cond_wait_prologue 52</span>
<a name="l00079"></a>00079 <span class="preprocessor"></span><span class="preprocessor">#define __native_cond_signal        53</span>
<a name="l00080"></a>00080 <span class="preprocessor"></span><span class="preprocessor">#define __native_cond_broadcast     54</span>
<a name="l00081"></a>00081 <span class="preprocessor"></span><span class="preprocessor">#define __native_cond_inquire       55</span>
<a name="l00082"></a>00082 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_create       56</span>
<a name="l00083"></a>00083 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_bind         57</span>
<a name="l00084"></a>00084 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_delete       58</span>
<a name="l00085"></a>00085 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_alloc        59</span>
<a name="l00086"></a>00086 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_free         60</span>
<a name="l00087"></a>00087 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_send         61</span>
<a name="l00088"></a>00088 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_receive      62</span>
<a name="l00089"></a>00089 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_inquire      63</span>
<a name="l00090"></a>00090 <span class="preprocessor"></span><span class="preprocessor">#define __native_heap_create        64</span>
<a name="l00091"></a>00091 <span class="preprocessor"></span><span class="preprocessor">#define __native_heap_bind          65</span>
<a name="l00092"></a>00092 <span class="preprocessor"></span><span class="preprocessor">#define __native_heap_delete        66</span>
<a name="l00093"></a>00093 <span class="preprocessor"></span><span class="preprocessor">#define __native_heap_alloc         67</span>
<a name="l00094"></a>00094 <span class="preprocessor"></span><span class="preprocessor">#define __native_heap_free          68</span>
<a name="l00095"></a>00095 <span class="preprocessor"></span><span class="preprocessor">#define __native_heap_inquire       69</span>
<a name="l00096"></a>00096 <span class="preprocessor"></span><span class="preprocessor">#define __native_alarm_create       70</span>
<a name="l00097"></a>00097 <span class="preprocessor"></span><span class="preprocessor">#define __native_alarm_delete       71</span>
<a name="l00098"></a>00098 <span class="preprocessor"></span><span class="preprocessor">#define __native_alarm_start        72</span>
<a name="l00099"></a>00099 <span class="preprocessor"></span><span class="preprocessor">#define __native_alarm_stop         73</span>
<a name="l00100"></a>00100 <span class="preprocessor"></span><span class="preprocessor">#define __native_alarm_wait         74</span>
<a name="l00101"></a>00101 <span class="preprocessor"></span><span class="preprocessor">#define __native_alarm_inquire      75</span>
<a name="l00102"></a>00102 <span class="preprocessor"></span><span class="preprocessor">#define __native_intr_create        76</span>
<a name="l00103"></a>00103 <span class="preprocessor"></span><span class="preprocessor">#define __native_intr_bind          77</span>
<a name="l00104"></a>00104 <span class="preprocessor"></span><span class="preprocessor">#define __native_intr_delete        78</span>
<a name="l00105"></a>00105 <span class="preprocessor"></span><span class="preprocessor">#define __native_intr_wait          79</span>
<a name="l00106"></a>00106 <span class="preprocessor"></span><span class="preprocessor">#define __native_intr_enable        80</span>
<a name="l00107"></a>00107 <span class="preprocessor"></span><span class="preprocessor">#define __native_intr_disable       81</span>
<a name="l00108"></a>00108 <span class="preprocessor"></span><span class="preprocessor">#define __native_intr_inquire       82</span>
<a name="l00109"></a>00109 <span class="preprocessor"></span><span class="preprocessor">#define __native_pipe_create        83</span>
<a name="l00110"></a>00110 <span class="preprocessor"></span><span class="preprocessor">#define __native_pipe_bind          84</span>
<a name="l00111"></a>00111 <span class="preprocessor"></span><span class="preprocessor">#define __native_pipe_delete        85</span>
<a name="l00112"></a>00112 <span class="preprocessor"></span><span class="preprocessor">#define __native_pipe_read          86</span>
<a name="l00113"></a>00113 <span class="preprocessor"></span><span class="preprocessor">#define __native_pipe_write         87</span>
<a name="l00114"></a>00114 <span class="preprocessor"></span><span class="preprocessor">#define __native_pipe_stream        88</span>
<a name="l00115"></a>00115 <span class="preprocessor"></span><span class="preprocessor">#define __native_unimp_89           89</span>
<a name="l00116"></a>00116 <span class="preprocessor"></span><span class="preprocessor">#define __native_io_get_region      90</span>
<a name="l00117"></a>00117 <span class="preprocessor"></span><span class="preprocessor">#define __native_io_put_region      91</span>
<a name="l00118"></a>00118 <span class="preprocessor"></span><span class="preprocessor">#define __native_unimp_92           92</span>
<a name="l00119"></a>00119 <span class="preprocessor"></span><span class="preprocessor">#define __native_unimp_93           93</span>
<a name="l00120"></a>00120 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_write        94</span>
<a name="l00121"></a>00121 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_read         95</span>
<a name="l00122"></a>00122 <span class="preprocessor"></span><span class="preprocessor">#define __native_buffer_create      96</span>
<a name="l00123"></a>00123 <span class="preprocessor"></span><span class="preprocessor">#define __native_buffer_bind        97</span>
<a name="l00124"></a>00124 <span class="preprocessor"></span><span class="preprocessor">#define __native_buffer_delete      98</span>
<a name="l00125"></a>00125 <span class="preprocessor"></span><span class="preprocessor">#define __native_buffer_read        99</span>
<a name="l00126"></a>00126 <span class="preprocessor"></span><span class="preprocessor">#define __native_buffer_write       100</span>
<a name="l00127"></a>00127 <span class="preprocessor"></span><span class="preprocessor">#define __native_buffer_clear       101</span>
<a name="l00128"></a>00128 <span class="preprocessor"></span><span class="preprocessor">#define __native_buffer_inquire     102</span>
<a name="l00129"></a>00129 <span class="preprocessor"></span><span class="preprocessor">#define __native_queue_flush        103</span>
<a name="l00130"></a>00130 <span class="preprocessor"></span><span class="preprocessor">#define __native_cond_wait_epilogue 104</span>
<a name="l00131"></a>00131 <span class="preprocessor"></span>
<a name="l00132"></a>00132 <span class="keyword">struct </span>rt_arg_bulk {
<a name="l00133"></a>00133 
<a name="l00134"></a>00134         u_long a1;
<a name="l00135"></a>00135         u_long a2;
<a name="l00136"></a>00136         u_long a3;
<a name="l00137"></a>00137         u_long a4;
<a name="l00138"></a>00138         u_long a5;
<a name="l00139"></a>00139         u_long a6;
<a name="l00140"></a>00140 };
<a name="l00141"></a>00141 
<a name="l00142"></a>00142 <span class="preprocessor">#if defined (__KERNEL__) || defined(__XENO_SIM__)</span>
<a name="l00143"></a>00143 <span class="preprocessor"></span>
<a name="l00144"></a>00144 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00145"></a>00145 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span> {
<a name="l00146"></a>00146 <span class="preprocessor">#endif</span>
<a name="l00147"></a>00147 <span class="preprocessor"></span>
<a name="l00148"></a>00148 <span class="preprocessor">#ifdef CONFIG_XENO_OPT_PERVASIVE</span>
<a name="l00149"></a>00149 <span class="preprocessor"></span>
<a name="l00150"></a>00150 <span class="keywordtype">int</span> __native_syscall_init(<span class="keywordtype">void</span>);
<a name="l00151"></a>00151 
<a name="l00152"></a>00152 <span class="keywordtype">void</span> __native_syscall_cleanup(<span class="keywordtype">void</span>);
<a name="l00153"></a>00153 
<a name="l00154"></a>00154 <span class="preprocessor">#else </span><span class="comment">/* !CONFIG_XENO_OPT_PERVASIVE */</span>
<a name="l00155"></a>00155 
<a name="l00156"></a>00156 <span class="preprocessor">#define __native_syscall_init()         ({ 0; })</span>
<a name="l00157"></a>00157 <span class="preprocessor"></span><span class="preprocessor">#define __native_syscall_cleanup()      do { } while(0)</span>
<a name="l00158"></a>00158 <span class="preprocessor"></span>
<a name="l00159"></a>00159 <span class="preprocessor">#endif </span><span class="comment">/* !CONFIG_XENO_OPT_PERVASIVE */</span>
<a name="l00160"></a>00160 
<a name="l00161"></a>00161 <span class="preprocessor">#ifdef __cplusplus</span>
<a name="l00162"></a>00162 <span class="preprocessor"></span>}
<a name="l00163"></a>00163 <span class="preprocessor">#endif</span>
<a name="l00164"></a>00164 <span class="preprocessor"></span>
<a name="l00165"></a>00165 <span class="preprocessor">#endif </span><span class="comment">/* __KERNEL__ || __XENO_SIM__ */</span>
<a name="l00166"></a>00166 
<a name="l00167"></a>00167 <span class="preprocessor">#endif </span><span class="comment">/* _NATIVE_SYSCALL_H */</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Aug 2 12:48:36 2010 for Xenomai API by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>