]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - doc/html/ref/compat-uitron-time-mgmt-functions.html
RedBoot TX53 Release 2012-02-15
[karo-tx-redboot.git] / doc / html / ref / compat-uitron-time-mgmt-functions.html
1 <!-- Copyright (C) 2003 Red Hat, Inc.                                -->
2 <!-- This material may be distributed only subject to the terms      -->
3 <!-- and conditions set forth in the Open Publication License, v1.0  -->
4 <!-- or later (the latest version is presently available at          -->
5 <!-- http://www.opencontent.org/openpub/).                           -->
6 <!-- Distribution of the work or derivative of the work in any       -->
7 <!-- standard (paper) book form is prohibited unless prior           -->
8 <!-- permission is obtained from the copyright holder.               -->
9 <HTML
10 ><HEAD
11 ><TITLE
12 >Time Management Functions</TITLE
13 ><meta name="MSSmartTagsPreventParsing" content="TRUE">
14 <META
15 NAME="GENERATOR"
16 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
17 "><LINK
18 REL="HOME"
19 TITLE="eCos Reference Manual"
20 HREF="ecos-ref.html"><LINK
21 REL="UP"
22 TITLE="µITRON API"
23 HREF="compat-uitron-microitron-api.html"><LINK
24 REL="PREVIOUS"
25 TITLE="   Memory pool Management Functions"
26 HREF="compat-uitron-memory-pool-mgmt-functions.html"><LINK
27 REL="NEXT"
28 TITLE="   System Management Functions"
29 HREF="compat-uitron-system-mgmt-functions.html"></HEAD
30 ><BODY
31 CLASS="SECT1"
32 BGCOLOR="#FFFFFF"
33 TEXT="#000000"
34 LINK="#0000FF"
35 VLINK="#840084"
36 ALINK="#0000FF"
37 ><DIV
38 CLASS="NAVHEADER"
39 ><TABLE
40 SUMMARY="Header navigation table"
41 WIDTH="100%"
42 BORDER="0"
43 CELLPADDING="0"
44 CELLSPACING="0"
45 ><TR
46 ><TH
47 COLSPAN="3"
48 ALIGN="center"
49 >eCos Reference Manual</TH
50 ></TR
51 ><TR
52 ><TD
53 WIDTH="10%"
54 ALIGN="left"
55 VALIGN="bottom"
56 ><A
57 HREF="compat-uitron-memory-pool-mgmt-functions.html"
58 ACCESSKEY="P"
59 >Prev</A
60 ></TD
61 ><TD
62 WIDTH="80%"
63 ALIGN="center"
64 VALIGN="bottom"
65 >Chapter 32. &micro;ITRON API</TD
66 ><TD
67 WIDTH="10%"
68 ALIGN="right"
69 VALIGN="bottom"
70 ><A
71 HREF="compat-uitron-system-mgmt-functions.html"
72 ACCESSKEY="N"
73 >Next</A
74 ></TD
75 ></TR
76 ></TABLE
77 ><HR
78 ALIGN="LEFT"
79 WIDTH="100%"></DIV
80 ><DIV
81 CLASS="SECT1"
82 ><H1
83 CLASS="SECT1"
84 ><A
85 NAME="COMPAT-UITRON-TIME-MGMT-FUNCTIONS">Time Management Functions</H1
86 ><P
87 >These functions are fully supported in this release: </P
88 ><TABLE
89 BORDER="5"
90 BGCOLOR="#E0E0F0"
91 WIDTH="70%"
92 ><TR
93 ><TD
94 ><PRE
95 CLASS="PROGRAMLISTING"
96 >ER <TT
97 CLASS="FUNCTION"
98 >set_tim</TT
99 >( 
100     SYSTIME *<SPAN
101 CLASS="emphasis"
102 ><I
103 CLASS="EMPHASIS"
104 >pk_tim</I
105 ></SPAN
106 > )</PRE
107 ></TD
108 ></TR
109 ></TABLE
110 ><DIV
111 CLASS="CAUTION"
112 ><P
113 ></P
114 ><TABLE
115 CLASS="CAUTION"
116 BORDER="1"
117 WIDTH="100%"
118 ><TR
119 ><TD
120 ALIGN="CENTER"
121 ><B
122 >Caution</B
123 ></TD
124 ></TR
125 ><TR
126 ><TD
127 ALIGN="LEFT"
128 ><P
129 >           Setting the time may cause erroneous operation of the
130             kernel, for example a task performing a wait with a
131             time-out may never awaken.</P
132 ></TD
133 ></TR
134 ></TABLE
135 ></DIV
136 ><TABLE
137 BORDER="5"
138 BGCOLOR="#E0E0F0"
139 WIDTH="70%"
140 ><TR
141 ><TD
142 ><PRE
143 CLASS="PROGRAMLISTING"
144 >ER <TT
145 CLASS="FUNCTION"
146 >get_tim</TT
147 >( 
148     SYSTIME *<SPAN
149 CLASS="emphasis"
150 ><I
151 CLASS="EMPHASIS"
152 >pk_tim</I
153 ></SPAN
154 > )</PRE
155 ></TD
156 ></TR
157 ></TABLE
158 ><TABLE
159 BORDER="5"
160 BGCOLOR="#E0E0F0"
161 WIDTH="70%"
162 ><TR
163 ><TD
164 ><PRE
165 CLASS="PROGRAMLISTING"
166 >ER <TT
167 CLASS="FUNCTION"
168 >dly_tsk</TT
169 >( 
170     DLYTIME <SPAN
171 CLASS="emphasis"
172 ><I
173 CLASS="EMPHASIS"
174 >dlytim</I
175 ></SPAN
176 > )</PRE
177 ></TD
178 ></TR
179 ></TABLE
180 ><TABLE
181 BORDER="5"
182 BGCOLOR="#E0E0F0"
183 WIDTH="70%"
184 ><TR
185 ><TD
186 ><PRE
187 CLASS="PROGRAMLISTING"
188 >ER <TT
189 CLASS="FUNCTION"
190 >def_cyc</TT
191 >( 
192     HNO <SPAN
193 CLASS="emphasis"
194 ><I
195 CLASS="EMPHASIS"
196 >cycno,</I
197 ></SPAN
198 >    T_DCYC *<SPAN
199 CLASS="emphasis"
200 ><I
201 CLASS="EMPHASIS"
202 >pk_dcyc</I
203 ></SPAN
204 > )</PRE
205 ></TD
206 ></TR
207 ></TABLE
208 ><TABLE
209 BORDER="5"
210 BGCOLOR="#E0E0F0"
211 WIDTH="70%"
212 ><TR
213 ><TD
214 ><PRE
215 CLASS="PROGRAMLISTING"
216 >ER <TT
217 CLASS="FUNCTION"
218 >act_cyc</TT
219 >( 
220     HNO <SPAN
221 CLASS="emphasis"
222 ><I
223 CLASS="EMPHASIS"
224 >cycno,</I
225 ></SPAN
226 >    UINT <SPAN
227 CLASS="emphasis"
228 ><I
229 CLASS="EMPHASIS"
230 >cycact</I
231 ></SPAN
232 > )</PRE
233 ></TD
234 ></TR
235 ></TABLE
236 ><TABLE
237 BORDER="5"
238 BGCOLOR="#E0E0F0"
239 WIDTH="70%"
240 ><TR
241 ><TD
242 ><PRE
243 CLASS="PROGRAMLISTING"
244 >ER <TT
245 CLASS="FUNCTION"
246 >ref_cyc</TT
247 >( 
248     T_RCYC *<SPAN
249 CLASS="emphasis"
250 ><I
251 CLASS="EMPHASIS"
252 >pk_rcyc,</I
253 ></SPAN
254 >    HNO <SPAN
255 CLASS="emphasis"
256 ><I
257 CLASS="EMPHASIS"
258 >cycno</I
259 ></SPAN
260 > )</PRE
261 ></TD
262 ></TR
263 ></TABLE
264 ><TABLE
265 BORDER="5"
266 BGCOLOR="#E0E0F0"
267 WIDTH="70%"
268 ><TR
269 ><TD
270 ><PRE
271 CLASS="PROGRAMLISTING"
272 >ER <TT
273 CLASS="FUNCTION"
274 >def_alm</TT
275 >( 
276     HNO <SPAN
277 CLASS="emphasis"
278 ><I
279 CLASS="EMPHASIS"
280 >almno,</I
281 ></SPAN
282 >    T_DALM *<SPAN
283 CLASS="emphasis"
284 ><I
285 CLASS="EMPHASIS"
286 >pk_dalm</I
287 ></SPAN
288 > )</PRE
289 ></TD
290 ></TR
291 ></TABLE
292 ><TABLE
293 BORDER="5"
294 BGCOLOR="#E0E0F0"
295 WIDTH="70%"
296 ><TR
297 ><TD
298 ><PRE
299 CLASS="PROGRAMLISTING"
300 >ER <TT
301 CLASS="FUNCTION"
302 >ref_alm</TT
303 >( 
304     T_RALM *<SPAN
305 CLASS="emphasis"
306 ><I
307 CLASS="EMPHASIS"
308 >pk_ralm,</I
309 ></SPAN
310 >    HNO <SPAN
311 CLASS="emphasis"
312 ><I
313 CLASS="EMPHASIS"
314 >almno</I
315 ></SPAN
316 > )</PRE
317 ></TD
318 ></TR
319 ></TABLE
320 ><TABLE
321 BORDER="5"
322 BGCOLOR="#E0E0F0"
323 WIDTH="70%"
324 ><TR
325 ><TD
326 ><PRE
327 CLASS="PROGRAMLISTING"
328 >void <TT
329 CLASS="FUNCTION"
330 >ret_tmr</TT
331 >( void )</PRE
332 ></TD
333 ></TR
334 ></TABLE
335 ><DIV
336 CLASS="SECT2"
337 ><H2
338 CLASS="SECT2"
339 ><A
340 NAME="AEN14010">Error checking</H2
341 ><P
342 >The following conditions are only checked for, and only return
343 errors if 
344 <TT
345 CLASS="LITERAL"
346 >CYGSEM_UITRON_BAD_PARAMS_RETURN_ERRORS</TT
347 >
348 is enabled:</P
349 ><P
350 ></P
351 ><UL
352 ><LI
353 ><P
354 >invalid handler number; less than 1 or greater than 
355 <TT
356 CLASS="LITERAL"
357 >CYGNUM_UITRON_CYCLICS/ALARMS</TT
358 >
359 as appropriate, or E_PAR</P
360 ></LI
361 ><LI
362 ><P
363 >dispatching is enabled in 
364 <TT
365 CLASS="FUNCTION"
366 >dly_tsk()</TT
367 >
368 , or E_CTX</P
369 ></LI
370 ><LI
371 ><P
372 >dlytim must be positive or zero, otherwise E_PAR</P
373 ></LI
374 ><LI
375 ><P
376 >return value pointer in 
377 <TT
378 CLASS="FUNCTION"
379 >ref_xxx()</TT
380 >
381  is a valid pointer, or E_PAR</P
382 ></LI
383 ><LI
384 ><P
385 >params within pk_dalm and pk_dcyc must
386 be valid, or E_PAR</P
387 ></LI
388 ><LI
389 ><P
390 >cycact in 
391 <TT
392 CLASS="FUNCTION"
393 >act_cyc()</TT
394 >
395  must be valid, or E_PAR</P
396 ></LI
397 ><LI
398 ><P
399 >handler must be defined in 
400 <TT
401 CLASS="FUNCTION"
402 >ref_xxx()</TT
403 >
404  and 
405 <TT
406 CLASS="FUNCTION"
407 >act_cyc()</TT
408 >
409 , or E_NOEXS</P
410 ></LI
411 ><LI
412 ><P
413 >parameter pointer must be a good pointer in 
414 <TT
415 CLASS="FUNCTION"
416 >get_tim()</TT
417 >
418  and 
419 <TT
420 CLASS="FUNCTION"
421 >set_tim()</TT
422 >
423 , otherwise E_PAR is returned</P
424 ></LI
425 ></UL
426 ><P
427 >The following conditions are checked for, and can return
428           error codes, regardless of the setting of
429 <TT
430 CLASS="LITERAL"
431 >CYGSEM_UITRON_BAD_PARAMS_RETURN_ERRORS</TT
432 >
433 :</P
434 ><P
435 ></P
436 ><UL
437 ><LI
438 ><P
439 ><TT
440 CLASS="FUNCTION"
441 >dly_tsk()</TT
442 >
443 : return code E_RLWAI is returned depending on the reason
444 for terminating the sleep</P
445 ></LI
446 ></UL
447 ></DIV
448 ></DIV
449 ><DIV
450 CLASS="NAVFOOTER"
451 ><HR
452 ALIGN="LEFT"
453 WIDTH="100%"><TABLE
454 SUMMARY="Footer navigation table"
455 WIDTH="100%"
456 BORDER="0"
457 CELLPADDING="0"
458 CELLSPACING="0"
459 ><TR
460 ><TD
461 WIDTH="33%"
462 ALIGN="left"
463 VALIGN="top"
464 ><A
465 HREF="compat-uitron-memory-pool-mgmt-functions.html"
466 ACCESSKEY="P"
467 >Prev</A
468 ></TD
469 ><TD
470 WIDTH="34%"
471 ALIGN="center"
472 VALIGN="top"
473 ><A
474 HREF="ecos-ref.html"
475 ACCESSKEY="H"
476 >Home</A
477 ></TD
478 ><TD
479 WIDTH="33%"
480 ALIGN="right"
481 VALIGN="top"
482 ><A
483 HREF="compat-uitron-system-mgmt-functions.html"
484 ACCESSKEY="N"
485 >Next</A
486 ></TD
487 ></TR
488 ><TR
489 ><TD
490 WIDTH="33%"
491 ALIGN="left"
492 VALIGN="top"
493 >Memory pool Management Functions</TD
494 ><TD
495 WIDTH="34%"
496 ALIGN="center"
497 VALIGN="top"
498 ><A
499 HREF="compat-uitron-microitron-api.html"
500 ACCESSKEY="U"
501 >Up</A
502 ></TD
503 ><TD
504 WIDTH="33%"
505 ALIGN="right"
506 VALIGN="top"
507 >System Management Functions</TD
508 ></TR
509 ></TABLE
510 ></DIV
511 ></BODY
512 ></HTML
513 >