Xenomai API  2.6.5
schedparam.h
1 /*
2  * Copyright (C) 2008 Philippe Gerum <[email protected]>.
3  *
4  * Xenomai is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published
6  * by the Free Software Foundation; either version 2 of the License,
7  * or (at your option) any later version.
8  *
9  * Xenomai is distributed in the hope that it will be useful, but
10  * WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with Xenomai; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
17  * 02111-1307, USA.
18  */
19 
20 #ifndef _XENO_NUCLEUS_SCHEDPARAM_H
21 #define _XENO_NUCLEUS_SCHEDPARAM_H
22 
23 struct xnsched_idle_param {
24  int prio;
25 };
26 
27 struct xnsched_rt_param {
28  int prio;
29 };
30 
31 struct xnsched_tp_param {
32  int prio;
33  int ptid; /* partition id. */
34 };
35 
36 struct xnsched_sporadic_param {
37  xntime_t init_budget;
38  xntime_t repl_period;
39  int max_repl;
40  int low_prio;
41  int normal_prio;
42  int current_prio;
43 };
44 
45 union xnsched_policy_param {
46  struct xnsched_idle_param idle;
47  struct xnsched_rt_param rt;
48 #ifdef CONFIG_XENO_OPT_SCHED_TP
49  struct xnsched_tp_param tp;
50 #endif
51 #ifdef CONFIG_XENO_OPT_SCHED_SPORADIC
52  struct xnsched_sporadic_param pss;
53 #endif
54 };
55 
56 #endif /* !_XENO_NUCLEUS_SCHEDPARAM_H */