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 Page</span></a></li>
<li><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Data 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> <u>S</u>earch for </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 <rpm@xenomai.org>.</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 <asm/xenomai/syscall.h></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
<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>
|