LXRT module.


Detailed Description

LXRT services (soft-hard real time in user space).

LXRT is a module that allows you to use all the services made available by RTAI and its schedulers in user space, both for soft and hard real time. At the moment it is a feature youll find nowhere but with RTAI. For an explanation of how it works see Pierre Cloutiers LXRT-INFORMED FAQs, and the explanation of the implementation of hard real time in user space (contributed by: Pierre Cloutier, Paolo Mantegazza, Steve Papacharalambous).

LXRT-INFORMED should be the production version of LXRT, the latter being the development version. So it can happen that LXRT-INFORMED could be lagging slightly behind LXRT. If you need to hurry to the services not yet ported to LXRT-INFORMED do it without pain. Even if you are likely to miss some useful services found only in LXRT-INFORMED, we release only when a feature is relatively stable.

From what said above there should be no need for anything specific as all the functions you can use in user space have been already documented in this manual. There are however a few exceptions that need to be explained.

Note also that, as already done for the shared memory services in user space, the function calls for Linux processes are inlined in the file rtai_lxrt.h. This approach has been preferred to a library since it is simpler, more effective, the calls are short and simple so that, even if it is likely that there can be more than just a few per process, they could never be charged of making codes too bigger. Also common to shared memory is the use of unsigned int to identify LXRT objects. If you want to use string identifiers the same support functions, i.e. nam2num() and num2nam(), can be used.


Files

file  rtai_lxrt.h
 LXRT main header.
file  rtai_mbx.h
file  rtai_nam2num.h
 Conversion between characters strings and unsigned long identifiers.
file  rtai_registry.h
file  rtai_sem.h
file  api.c
 Common scheduling function.

Defines

#define YIELD   0
#define SUSPEND   1
#define RESUME   2
#define MAKE_PERIODIC   3
#define WAIT_PERIOD   4
#define SLEEP   5
#define SLEEP_UNTIL   6
#define START_TIMER   7
#define STOP_TIMER   8
#define GET_TIME   9
#define COUNT2NANO   10
#define NANO2COUNT   11
#define BUSY_SLEEP   12
#define SET_PERIODIC_MODE   13
#define SET_ONESHOT_MODE   14
#define SIGNAL_HANDLER   15
#define TASK_USE_FPU   16
#define LINUX_USE_FPU   17
#define HARD_TIMER_COUNT   18
#define GET_TIME_NS   19
#define GET_CPU_TIME_NS   20
#define SET_RUNNABLE_ON_CPUS   21
#define SET_RUNNABLE_ON_CPUID   22
#define GET_TIMER_CPU   23
#define START_RT_APIC_TIMERS   24
#define HARD_TIMER_COUNT_CPUID   25
#define COUNT2NANO_CPUID   26
#define NANO2COUNT_CPUID   27
#define GET_TIME_CPUID   28
#define GET_TIME_NS_CPUID   29
#define MAKE_PERIODIC_NS   30
#define SET_SCHED_POLICY   31
#define SET_RESUME_END   32
#define SPV_RMS   33
#define WAKEUP_SLEEPING   34
#define CHANGE_TASK_PRIO   35
#define SET_RESUME_TIME   36
#define SET_PERIOD   37
#define HARD_TIMER_RUNNING   38
#define TYPED_SEM_INIT   39
#define SEM_DELETE   40
#define NAMED_SEM_INIT   41
#define NAMED_SEM_DELETE   42
#define SEM_SIGNAL   43
#define SEM_WAIT   44
#define SEM_WAIT_IF   45
#define SEM_WAIT_UNTIL   46
#define SEM_WAIT_TIMED   47
#define SEM_BROADCAST   48
#define SEM_WAIT_BARRIER   49
#define SEM_COUNT   50
#define COND_WAIT   51
#define COND_WAIT_UNTIL   52
#define COND_WAIT_TIMED   53
#define RWL_INIT   54
#define RWL_DELETE   55
#define NAMED_RWL_INIT   56
#define NAMED_RWL_DELETE   57
#define RWL_RDLOCK   58
#define RWL_RDLOCK_IF   59
#define RWL_RDLOCK_UNTIL   60
#define RWL_RDLOCK_TIMED   61
#define RWL_WRLOCK   62
#define RWL_WRLOCK_IF   63
#define RWL_WRLOCK_UNTIL   64
#define RWL_WRLOCK_TIMED   65
#define RWL_UNLOCK   66
#define SPL_INIT   67
#define SPL_DELETE   68
#define NAMED_SPL_INIT   69
#define NAMED_SPL_DELETE   70
#define SPL_LOCK   71
#define SPL_LOCK_IF   72
#define SPL_LOCK_TIMED   73
#define SPL_UNLOCK   74
#define TYPED_MBX_INIT   75
#define MBX_DELETE   76
#define NAMED_MBX_INIT   77
#define NAMED_MBX_DELETE   78
#define MBX_SEND   79
#define MBX_SEND_WP   80
#define MBX_SEND_IF   81
#define MBX_SEND_UNTIL   82
#define MBX_SEND_TIMED   83
#define MBX_RECEIVE   84
#define MBX_RECEIVE_WP   85
#define MBX_RECEIVE_IF   86
#define MBX_RECEIVE_UNTIL   87
#define MBX_RECEIVE_TIMED   88
#define MBX_EVDRP   89
#define MBX_OVRWR_SEND   90
#define SENDMSG   91
#define SEND_IF   92
#define SEND_UNTIL   93
#define SEND_TIMED   94
#define RECEIVEMSG   95
#define RECEIVE_IF   96
#define RECEIVE_UNTIL   97
#define RECEIVE_TIMED   98
#define RPCMSG   99
#define RPC_IF   100
#define RPC_UNTIL   101
#define RPC_TIMED   102
#define EVDRP   103
#define ISRPC   104
#define RETURNMSG   105
#define RPCX   106
#define RPCX_IF   107
#define RPCX_UNTIL   108
#define RPCX_TIMED   109
#define SENDX   110
#define SENDX_IF   111
#define SENDX_UNTIL   112
#define SENDX_TIMED   113
#define RETURNX   114
#define RECEIVEX   115
#define RECEIVEX_IF   116
#define RECEIVEX_UNTIL   117
#define RECEIVEX_TIMED   118
#define EVDRPX   119
#define PROXY_ATTACH   120
#define PROXY_DETACH   121
#define PROXY_TRIGGER   122
#define RT_SEND   123
#define RT_RECEIVE   124
#define RT_CRECEIVE   125
#define RT_REPLY   126
#define RT_PROXY_ATTACH   127
#define RT_PROXY_DETACH   128
#define RT_TRIGGER   129
#define RT_NAME_ATTACH   130
#define RT_NAME_DETACH   131
#define RT_NAME_LOCATE   132
#define BITS_INIT   133
#define BITS_DELETE   134
#define NAMED_BITS_INIT   135
#define NAMED_BITS_DELETE   136
#define BITS_GET   137
#define BITS_RESET   138
#define BITS_SIGNAL   139
#define BITS_WAIT   140
#define BITS_WAIT_IF   141
#define BITS_WAIT_UNTIL   142
#define BITS_WAIT_TIMED   143
#define TBX_INIT   144
#define TBX_DELETE   145
#define NAMED_TBX_INIT   146
#define NAMED_TBX_DELETE   147
#define TBX_SEND   148
#define TBX_SEND_IF   149
#define TBX_SEND_UNTIL   150
#define TBX_SEND_TIMED   151
#define TBX_RECEIVE   152
#define TBX_RECEIVE_IF   153
#define TBX_RECEIVE_UNTIL   154
#define TBX_RECEIVE_TIMED   155
#define TBX_BROADCAST   156
#define TBX_BROADCAST_IF   157
#define TBX_BROADCAST_UNTIL   158
#define TBX_BROADCAST_TIMED   159
#define TBX_URGENT   160
#define TBX_URGENT_IF   161
#define TBX_URGENT_UNTIL   162
#define TBX_URGENT_TIMED   163
#define MQ_OPEN   164
#define MQ_RECEIVE   165
#define MQ_SEND   166
#define MQ_CLOSE   167
#define MQ_GETATTR   168
#define MQ_SETATTR   169
#define MQ_NOTIFY   170
#define MQ_UNLINK   171
#define MQ_TIMEDRECEIVE   172
#define MQ_TIMEDSEND   173
#define NAMED_TASK_INIT   174
#define NAMED_TASK_INIT_CPUID   175
#define NAMED_TASK_DELETE   176
#define GET_ADR   177
#define GET_NAME   178
#define NETRPC   179
#define SEND_REQ_REL_PORT   180
#define DDN2NL   181
#define SET_THIS_NODE   182
#define FIND_ASGN_STUB   183
#define REL_STUB   184
#define WAITING_RETURN   185
#define COND_SIGNAL   186
#define SHM_ALLOC   187
#define SHM_FREE   188
#define SHM_SIZE   189
#define HEAP_SET   190
#define HEAP_ALLOC   191
#define HEAP_FREE   192
#define HEAP_NAMED_ALLOC   193
#define HEAP_NAMED_FREE   194
#define MALLOC   195
#define FREE   196
#define NAMED_MALLOC   197
#define NAMED_FREE   198
#define SUSPEND_IF   199
#define SUSPEND_UNTIL   200
#define SUSPEND_TIMED   201
#define IRQ_WAIT   202
#define IRQ_WAIT_IF   203
#define IRQ_WAIT_UNTIL   204
#define IRQ_WAIT_TIMED   205
#define IRQ_SIGNAL   206
#define REQUEST_IRQ_TASK   207
#define RELEASE_IRQ_TASK   208
#define SCHED_LOCK   209
#define SCHED_UNLOCK   210
#define PEND_LINUX_IRQ   211
#define RECEIVE_LINUX_SYSCALL   212
#define RETURN_LINUX_SYSCALL   213
#define REQUEST_RTC   214
#define RELEASE_RTC   215
#define MAX_LXRT_FUN   220
#define RT_INITTICKQUEUE   69
#define RT_RELEASETICKQUEUE   70
#define RT_QDYNALLOC   71
#define RT_QDYNFREE   72
#define RT_QDYNINIT   73
#define RT_QBLKWAIT   74
#define RT_QBLKREPEAT   75
#define RT_QBLKSOON   76
#define RT_QBLKDEQUEUE   77
#define RT_QBLKCANCEL   78
#define RT_QSYNC   79
#define RT_QRECEIVE   80
#define RT_QLOOP   81
#define RT_QSTEP   82
#define RT_QBLKBEFORE   83
#define RT_QBLKAFTER   84
#define RT_QBLKUNHOOK   85
#define RT_QBLKRELEASE   86
#define RT_QBLKCOMPLETE   87
#define RT_QHOOKFLUSH   88
#define RT_QBLKATHEAD   89
#define RT_QBLKATTAIL   90
#define RT_QHOOKINIT   91
#define RT_QHOOKRELEASE   92
#define RT_QBLKSCHEDULE   93
#define RT_GETTICKQUEUEHOOK   94
#define RT_BOOM   95
#define RTAI_MALLOC   96
#define RT_FREE   97
#define RT_MMGR_STATS   98
#define RT_STOMP   99
#define RT_VC_ATTACH   100
#define RT_VC_RELEASE   101
#define RT_VC_RESERVE   102
#define RT_GET_LINUX_SIGNAL   103
#define RT_GET_ERRNO   104
#define RT_SET_LINUX_SIGNAL_HANDLER   105
#define LXRT_GET_ADR   1000
#define LXRT_GET_NAME   1001
#define LXRT_TASK_INIT   1002
#define LXRT_TASK_DELETE   1003
#define LXRT_SEM_INIT   1004
#define LXRT_SEM_DELETE   1005
#define LXRT_MBX_INIT   1006
#define LXRT_MBX_DELETE   1007
#define MAKE_SOFT_RT   1008
#define MAKE_HARD_RT   1009
#define PRINT_TO_SCREEN   1010
#define NONROOT_HRT   1011
#define RT_BUDDY   1012
#define HRT_USE_FPU   1013
#define USP_SIGHDL   1014
#define GET_USP_FLAGS   1015
#define SET_USP_FLAGS   1016
#define GET_USP_FLG_MSK   1017
#define SET_USP_FLG_MSK   1018
#define IS_HARD   1019
#define LINUX_SERVER_INIT   1020
#define ALLOC_REGISTER   1021
#define DELETE_DEREGISTER   1022
#define FORCE_TASK_SOFT   1023
#define PRINTK   1024
#define GET_EXECTIME   1025
#define GET_TIMEORIG   1026
#define LXRT_RWL_INIT   1027
#define LXRT_RWL_DELETE   1028
#define LXRT_SPL_INIT   1029
#define LXRT_SPL_DELETE   1030
#define FORCE_SOFT   0x80000000
#define GT_NR_SYSCALLS   (1 << 11)
#define ENCODE_LXRT_REQ(dynx, srq, lsize)   (((dynx) << 24) | ((srq) << 12) | GT_NR_SYSCALLS | (lsize))
#define SRQ(x)   (((x) >> 12) & 0xFFF)
#define NARG(x)   ((x) & (GT_NR_SYSCALLS - 1))
#define INDX(x)   (((x) >> 24) & 0xF)
#define rt_grow_and_lock_stack(incr)
#define BIDX   0
#define SIZARG   sizeof(arg)
#define RT_THREAD_STACK_MIN   64*1024
#define rt_named_task_init(task_name, thread, data, stack_size, prio, uses_fpu, signal)   rt_task_init(nam2num(task_name), thread, data, stack_size, prio, uses_fpu, signal)
#define rt_named_task_init_cpuid(task_name, thread, data, stack_size, prio, uses_fpu, signal, run_on_cpu)   rt_task_init_cpuid(nam2num(task_name), thread, data, stack_size, prio, uses_fpu, signal, run_on_cpu)
#define rt_buddy()   rt_agent()
#define rt_is_soft_real_time(rt_task)   (!rt_is_hard_real_time((rt_task)))
#define rt_task_wakeup_sleeping(task, mask)   rt_task_masked_unblock(task, RT_SCHED_DELAYED)
#define rt_mbx_init(name, size)   rt_typed_mbx_init(name, size, FIFO_Q)
#define rt_sem_init(name, value)   rt_typed_sem_init(name, value, CNT_SEM)
#define rt_cond_init(name)   rt_typed_sem_init(name, 0, BIN_SEM)

Functions

void * rt_get_adr (unsigned long name)
 Get an object address by its name.
unsigned long rt_get_name (void *adr)
 Get an object name by its address.
RT_TASKrt_task_init_schmod (unsigned long name, int priority, int stack_size, int max_msg_size, int policy, int cpus_allowed)
int rt_clone (void *fun, void *args, long stack_size, unsigned long flags)
int rt_thread_create (void *fun, void *args, int stack_size)
int rt_thread_join (int thread)
RT_TASKrt_receive_linux_syscall (RT_TASK *task, struct pt_regs *regs)
void rt_return_linux_syscall (RT_TASK *task, unsigned long retval)
void linux_syscall_server_fun (RT_TASK *task)
int rt_linux_syscall_server_create (RT_TASK *task)
RT_TASKrt_thread_init (unsigned long name, int priority, int max_msg_size, int policy, int cpus_allowed)
RT_TASKrt_task_init (unsigned long name, int priority, int stack_size, int max_msg_size)
 Create a new real time task in user space.
void rt_set_sched_policy (RT_TASK *task, int policy, int rr_quantum_ns)
int rt_change_prio (RT_TASK *task, int priority)
void rt_make_soft_real_time (void)
 Return a hard real time Linux process, or pthread to the standard Linux behavior.
int rt_task_delete (RT_TASK *task)
int rt_task_yield (void)
int rt_task_suspend (RT_TASK *task)
int rt_task_suspend_if (RT_TASK *task)
int rt_task_suspend_until (RT_TASK *task, RTIME time)
int rt_task_suspend_timed (RT_TASK *task, RTIME delay)
int rt_task_resume (RT_TASK *task)
void rt_sched_lock (void)
void rt_sched_unlock (void)
void rt_pend_linux_irq (unsigned irq)
int rt_irq_wait (unsigned irq)
int rt_irq_wait_if (unsigned irq)
int rt_irq_wait_until (unsigned irq, RTIME time)
int rt_irq_wait_timed (unsigned irq, RTIME delay)
int rt_irq_signal (unsigned irq)
int rt_request_irq_task (unsigned irq, void *handler, int type, int affine2task)
int rt_release_irq_task (unsigned irq)
int rt_task_make_periodic (RT_TASK *task, RTIME start_time, RTIME period)
int rt_task_make_periodic_relative_ns (RT_TASK *task, RTIME start_delay, RTIME period)
int rt_task_wait_period (void)
int rt_sleep (RTIME delay)
int rt_sleep_until (RTIME time)
int rt_is_hard_timer_running (void)
RTIME start_rt_timer (int period)
void stop_rt_timer (void)
void rt_request_rtc (int rtc_freq, void *handler)
void rt_release_rtc (void)
RTIME rt_get_time (void)
RTIME count2nano (RTIME count)
RTIME nano2count (RTIME nanos)
void rt_busy_sleep (int ns)
void rt_set_periodic_mode (void)
void rt_set_oneshot_mode (void)
int rt_task_signal_handler (RT_TASK *task, void(*handler)(void))
int rt_task_use_fpu (RT_TASK *task, int use_fpu_flag)
int rt_buddy_task_use_fpu (RT_TASK *task, int use_fpu_flag)
int rt_linux_use_fpu (int use_fpu_flag)
int rt_hard_timer_tick (void)
RTIME rt_get_time_ns (void)
RTIME rt_get_cpu_time_ns (void)
void rt_set_runnable_on_cpus (RT_TASK *task, unsigned long cpu_mask)
void rt_set_runnable_on_cpuid (RT_TASK *task, unsigned int cpuid)
int rt_get_timer_cpu (void)
void start_rt_apic_timers (struct apic_timer_setup_data *setup_mode, unsigned int rcvr_jiffies_cpuid)
int rt_hard_timer_tick_cpuid (int cpuid)
RTIME count2nano_cpuid (RTIME count, unsigned int cpuid)
RTIME nano2count_cpuid (RTIME nanos, unsigned int cpuid)
RTIME rt_get_time_cpuid (unsigned int cpuid)
RTIME rt_get_time_ns_cpuid (unsigned int cpuid)
void rt_boom (void)
void rt_mmgr_stats (void)
void rt_stomp (void)
int rt_get_linux_signal (RT_TASK *task)
int rt_get_errno (RT_TASK *task)
int rt_set_linux_signal_handler (RT_TASK *task, void(*handler)(int sig))
int rtai_print_to_screen (const char *format,...)
int rt_printk (const char *format,...)
int rt_usp_signal_handler (void(*handler)(void))
unsigned long rt_get_usp_flags (RT_TASK *rt_task)
unsigned long rt_get_usp_flags_mask (RT_TASK *rt_task)
void rt_set_usp_flags (RT_TASK *rt_task, unsigned long flags)
void rt_set_usp_flags_mask (unsigned long flags_mask)
RT_TASKrt_force_task_soft (int pid)
RT_TASKrt_agent (void)
void rt_make_hard_real_time (void)
 Give a Linux process, or pthread, hard real time execution capabilities allowing full kernel preemption.
void rt_allow_nonroot_hrt (void)
 Allows a non root user to use the Linux POSIX soft real time process management and memory lock functions, and allows it to do any input-output operation from user space.
int rt_is_hard_real_time (RT_TASK *rt_task)
void rt_task_set_resume_end_times (RTIME resume, RTIME end)
int rt_set_resume_time (RT_TASK *rt_task, RTIME new_resume_time)
int rt_set_period (RT_TASK *rt_task, RTIME new_period)
void rt_spv_RMS (int cpuid)
int rt_task_masked_unblock (RT_TASK *task, unsigned long mask)
void rt_get_exectime (RT_TASK *task, RTIME *exectime)
void rt_gettimeorig (RTIME time_orig[])
RT_TASKftask_init (unsigned long name, int priority)
RTIME start_ftimer (long period, long ftick_freq)
RTIME stop_ftimer (void)
int rt_register (unsigned long name, void *adr, int type, struct task_struct *t)
int rt_drg_on_name (unsigned long name)
int rt_drg_on_adr (void *adr)


Define Documentation

#define ALLOC_REGISTER   1021
 

Definition at line 387 of file rtai_lxrt.h.

#define BIDX   0
 

Definition at line 557 of file rtai_lxrt.h.

Referenced by _rt_shm_alloc(), count2nano(), count2nano_cpuid(), ftask_init(), linux_syscall_server_fun(), nano2count(), nano2count_cpuid(), pthread_cond_broadcast_rt(), pthread_cond_signal_rt(), pthread_cond_timedwait_rt(), pthread_cond_wait_rt(), pthread_mutex_close_rt(), pthread_mutex_init_rt(), pthread_mutex_open_rt(), pthread_rwlock_close_rt(), pthread_rwlock_init_rt(), pthread_rwlock_rdlock_rt(), pthread_rwlock_tryrdlock_rt(), pthread_rwlock_trywrlock_rt(), pthread_rwlock_unlock_rt(), pthread_rwlock_wrlock_rt(), pthread_yield_rt(), rt_agent(), rt_Alias_attach(), rt_allow_nonroot_hrt(), rt_boom(), rt_buddy_task_use_fpu(), rt_busy_sleep(), rt_change_prio(), rt_cond_signal(), rt_cond_wait(), rt_cond_wait_timed(), rt_cond_wait_until(), rt_Creceive(), rt_evdrp(), rt_evdrpx(), rt_force_task_soft(), rt_free(), rt_get_adr(), rt_get_cpu_time_ns(), rt_get_errno(), rt_get_exectime(), rt_get_linux_signal(), rt_get_name(), rt_get_time(), rt_get_time_cpuid(), rt_get_time_ns(), rt_get_time_ns_cpuid(), rt_get_timer_cpu(), rt_get_usp_flags(), rt_get_usp_flags_mask(), rt_GetTickQueueHook(), rt_gettimeorig(), rt_halloc(), rt_hard_timer_tick(), rt_hard_timer_tick_cpuid(), rt_hfree(), rt_InitTickQueue(), rt_irq_signal(), rt_irq_wait(), rt_irq_wait_if(), rt_irq_wait_timed(), rt_irq_wait_until(), rt_is_hard_real_time(), rt_is_hard_timer_running(), rt_isrpc(), rt_linux_syscall_server_create(), rt_linux_use_fpu(), rt_make_hard_real_time(), rt_make_soft_real_time(), rt_malloc(), rt_mbx_delete(), rt_mbx_evdrp(), rt_mbx_ovrwr_send(), rt_mbx_receive(), rt_mbx_receive_if(), rt_mbx_receive_timed(), rt_mbx_receive_until(), rt_mbx_receive_wp(), rt_mbx_send(), rt_mbx_send_if(), rt_mbx_send_timed(), rt_mbx_send_until(), rt_mbx_send_wp(), rt_mmgr_stats(), rt_msg_broadcast(), rt_msg_broadcast_if(), rt_msg_broadcast_timed(), rt_msg_broadcast_until(), rt_msg_evdrp(), rt_msg_receive(), rt_msg_receive_if(), rt_msg_receive_timed(), rt_msg_receive_until(), rt_msg_send(), rt_msg_send_if(), rt_msg_send_timed(), rt_msg_send_until(), rt_msgq_delete(), rt_msgq_init(), rt_Name_detach(), rt_Name_locate(), rt_named_free(), rt_named_halloc(), rt_named_hfree(), rt_named_malloc(), rt_named_mbx_delete(), rt_named_msgq_delete(), rt_named_msgq_init(), rt_named_rwl_delete(), rt_named_rwl_init(), rt_named_sem_delete(), rt_named_spl_delete(), rt_named_spl_init(), rt_pend_linux_irq(), rt_printk(), rt_Proxy_attach(), rt_proxy_attach(), rt_Proxy_detach(), rt_proxy_detach(), rt_qBlkAfter(), rt_qBlkAtHead(), rt_qBlkAtTail(), rt_qBlkBefore(), rt_qBlkCancel(), rt_qBlkComplete(), rt_qBlkDequeue(), rt_qBlkRelease(), rt_qBlkRepeat(), rt_qBlkSchedule(), rt_qBlkSoon(), rt_qBlkUnhook(), rt_qBlkWait(), rt_qDynAlloc(), rt_qDynFree(), rt_qDynInit(), rt_qHookFlush(), rt_qHookInit(), rt_qHookRelease(), rt_qLoop(), rt_qReceive(), rt_qStep(), rt_qSync(), rt_Receive(), rt_receive(), rt_receive_if(), rt_receive_linux_syscall(), rt_receive_timed(), rt_receive_until(), rt_receivex(), rt_receivex_if(), rt_receivex_timed(), rt_receivex_until(), rt_release_irq_task(), rt_release_rtc(), rt_ReleaseTickQueue(), rt_Reply(), rt_request_irq_task(), rt_request_rtc(), rt_return(), rt_return_linux_syscall(), rt_returnx(), rt_rpc(), rt_rpc_if(), rt_rpc_timed(), rt_rpc_until(), rt_rpcx(), rt_rpcx_if(), rt_rpcx_timed(), rt_rpcx_until(), rt_rwl_delete(), rt_rwl_init(), rt_rwl_rdlock(), rt_rwl_rdlock_if(), rt_rwl_rdlock_timed(), rt_rwl_rdlock_until(), rt_rwl_unlock(), rt_rwl_wrlock(), rt_rwl_wrlock_if(), rt_rwl_wrlock_timed(), rt_rwl_wrlock_until(), rt_sched_lock(), rt_sched_unlock(), rt_sem_broadcast(), rt_sem_count(), rt_sem_delete(), rt_sem_signal(), rt_sem_wait(), rt_sem_wait_barrier(), rt_sem_wait_if(), rt_sem_wait_timed(), rt_sem_wait_until(), rt_Send(), rt_send(), rt_send_if(), rt_send_timed(), rt_send_until(), rt_sendx(), rt_sendx_if(), rt_sendx_timed(), rt_sendx_until(), rt_set_linux_signal_handler(), rt_set_oneshot_mode(), rt_set_period(), rt_set_periodic_mode(), rt_set_resume_time(), rt_set_runnable_on_cpuid(), rt_set_runnable_on_cpus(), rt_set_sched_policy(), rt_set_usp_flags(), rt_set_usp_flags_mask(), rt_shm_free(), rt_sleep(), rt_sleep_until(), rt_spl_delete(), rt_spl_init(), rt_spl_lock(), rt_spl_lock_if(), rt_spl_lock_timed(), rt_spl_unlock(), rt_spv_RMS(), rt_stomp(), rt_task_delete(), rt_task_init_schmod(), rt_task_make_periodic(), rt_task_make_periodic_relative_ns(), rt_task_masked_unblock(), rt_task_resume(), rt_task_set_resume_end_times(), rt_task_signal_handler(), rt_task_suspend(), rt_task_suspend_if(), rt_task_suspend_timed(), rt_task_suspend_until(), rt_task_use_fpu(), rt_task_wait_period(), rt_task_yield(), rt_Trigger(), rt_trigger(), rt_typed_mbx_init(), rt_typed_named_mbx_init(), rt_typed_named_sem_init(), rt_typed_sem_init(), rt_usp_signal_handler(), rt_vc_attach(), rt_vc_release(), rt_vc_reserve(), rtai_print_to_screen(), sem_close_rt(), sem_getvalue_rt(), sem_init_rt(), sem_open_rt(), sem_post_rt(), sem_timedwait_rt(), sem_trywait_rt(), sem_wait_rt(), start_ftimer(), start_rt_apic_timers(), start_rt_timer(), stop_ftimer(), and stop_rt_timer().

#define BITS_DELETE   134
 

Definition at line 222 of file rtai_lxrt.h.

Referenced by rt_bits_delete().

#define BITS_GET   137
 

Definition at line 225 of file rtai_lxrt.h.

Referenced by rt_get_bits().

#define BITS_INIT   133
 

Definition at line 221 of file rtai_lxrt.h.

Referenced by rt_bits_init().

#define BITS_RESET   138
 

Definition at line 226 of file rtai_lxrt.h.

Referenced by rt_bits_reset().

#define BITS_SIGNAL   139
 

Definition at line 227 of file rtai_lxrt.h.

Referenced by rt_bits_signal().

#define BITS_WAIT   140
 

Definition at line 228 of file rtai_lxrt.h.

Referenced by rt_bits_wait().

#define BITS_WAIT_IF   141
 

Definition at line 229 of file rtai_lxrt.h.

Referenced by rt_bits_wait_if().

#define BITS_WAIT_TIMED   143
 

Definition at line 231 of file rtai_lxrt.h.

Referenced by rt_bits_wait_timed().

#define BITS_WAIT_UNTIL   142
 

Definition at line 230 of file rtai_lxrt.h.

Referenced by rt_bits_wait_until().

#define BUSY_SLEEP   12
 

Definition at line 85 of file rtai_lxrt.h.

Referenced by rt_busy_sleep().

#define CHANGE_TASK_PRIO   35
 

Definition at line 108 of file rtai_lxrt.h.

Referenced by rt_change_prio().

#define COND_SIGNAL   186
 

Definition at line 286 of file rtai_lxrt.h.

Referenced by pthread_cond_signal_rt(), and rt_cond_signal().

#define COND_WAIT   51
 

Definition at line 126 of file rtai_lxrt.h.

Referenced by pthread_cond_wait_rt(), and rt_cond_wait().

#define COND_WAIT_TIMED   53
 

Definition at line 128 of file rtai_lxrt.h.

Referenced by rt_cond_wait_timed().

#define COND_WAIT_UNTIL   52
 

Definition at line 127 of file rtai_lxrt.h.

Referenced by pthread_cond_timedwait_rt(), and rt_cond_wait_until().

#define COUNT2NANO   10
 

Definition at line 83 of file rtai_lxrt.h.

Referenced by count2nano().

#define COUNT2NANO_CPUID   26
 

Definition at line 99 of file rtai_lxrt.h.

Referenced by count2nano_cpuid().

#define DDN2NL   181
 

Definition at line 279 of file rtai_lxrt.h.

Referenced by ddn2nl().

#define DELETE_DEREGISTER   1022
 

Definition at line 388 of file rtai_lxrt.h.

#define ENCODE_LXRT_REQ dynx,
srq,
lsize   )     (((dynx) << 24) | ((srq) << 12) | GT_NR_SYSCALLS | (lsize))
 

Definition at line 403 of file rtai_lxrt.h.

Referenced by rtai_lxrt().

#define EVDRP   103
 

Definition at line 182 of file rtai_lxrt.h.

Referenced by rt_evdrp().

#define EVDRPX   119
 

Definition at line 200 of file rtai_lxrt.h.

Referenced by rt_evdrpx().

#define FIND_ASGN_STUB   183
 

Definition at line 281 of file rtai_lxrt.h.

Referenced by rt_find_asgn_stub().

#define FORCE_SOFT   0x80000000
 

Definition at line 398 of file rtai_lxrt.h.

Referenced by force_soft(), and handle_lxrt_request().

#define FORCE_TASK_SOFT   1023
 

Definition at line 389 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_force_task_soft().

#define FREE   196
 

Definition at line 298 of file rtai_lxrt.h.

Referenced by rt_free().

#define GET_ADR   177
 

Definition at line 273 of file rtai_lxrt.h.

Referenced by RT_get_adr().

#define GET_CPU_TIME_NS   20
 

Definition at line 93 of file rtai_lxrt.h.

Referenced by RT_get_cpu_time_ns(), and rt_get_cpu_time_ns().

#define GET_EXECTIME   1025
 

Definition at line 391 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_get_exectime().

#define GET_NAME   178
 

Definition at line 274 of file rtai_lxrt.h.

#define GET_TIME   9
 

Definition at line 82 of file rtai_lxrt.h.

Referenced by rt_get_time().

#define GET_TIME_CPUID   28
 

Definition at line 101 of file rtai_lxrt.h.

Referenced by rt_get_time_cpuid().

#define GET_TIME_NS   19
 

Definition at line 92 of file rtai_lxrt.h.

Referenced by RT_get_time_ns(), and rt_get_time_ns().

#define GET_TIME_NS_CPUID   29
 

Definition at line 102 of file rtai_lxrt.h.

Referenced by RT_get_time_ns_cpuid(), and rt_get_time_ns_cpuid().

#define GET_TIMEORIG   1026
 

Definition at line 392 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_gettimeorig().

#define GET_TIMER_CPU   23
 

Definition at line 96 of file rtai_lxrt.h.

Referenced by rt_get_timer_cpu().

#define GET_USP_FLAGS   1015
 

Definition at line 381 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_get_usp_flags().

#define GET_USP_FLG_MSK   1017
 

Definition at line 383 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_get_usp_flags_mask().

#define GT_NR_SYSCALLS   (1 << 11)
 

Definition at line 402 of file rtai_lxrt.h.

#define HARD_TIMER_COUNT   18
 

Definition at line 91 of file rtai_lxrt.h.

Referenced by rt_hard_timer_tick().

#define HARD_TIMER_COUNT_CPUID   25
 

Definition at line 98 of file rtai_lxrt.h.

Referenced by rt_hard_timer_tick_cpuid().

#define HARD_TIMER_RUNNING   38
 

Definition at line 111 of file rtai_lxrt.h.

Referenced by rt_is_hard_timer_running().

#define HEAP_ALLOC   191
 

Definition at line 293 of file rtai_lxrt.h.

Referenced by rt_halloc().

#define HEAP_FREE   192
 

Definition at line 294 of file rtai_lxrt.h.

Referenced by rt_hfree().

#define HEAP_NAMED_ALLOC   193
 

Definition at line 295 of file rtai_lxrt.h.

Referenced by rt_named_halloc().

#define HEAP_NAMED_FREE   194
 

Definition at line 296 of file rtai_lxrt.h.

Referenced by rt_named_hfree().

#define HEAP_SET   190
 

Definition at line 292 of file rtai_lxrt.h.

Referenced by _rt_shm_alloc(), and rtai_shm_f_ioctl().

#define HRT_USE_FPU   1013
 

Definition at line 379 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_task_use_fpu().

#define INDX  )     (((x) >> 24) & 0xF)
 

Definition at line 407 of file rtai_lxrt.h.

Referenced by handle_lxrt_request().

#define IRQ_SIGNAL   206
 

Definition at line 309 of file rtai_lxrt.h.

Referenced by rt_irq_signal().

#define IRQ_WAIT   202
 

Definition at line 305 of file rtai_lxrt.h.

Referenced by rt_irq_wait().

#define IRQ_WAIT_IF   203
 

Definition at line 306 of file rtai_lxrt.h.

Referenced by rt_irq_wait_if().

#define IRQ_WAIT_TIMED   205
 

Definition at line 308 of file rtai_lxrt.h.

Referenced by rt_irq_wait_timed().

#define IRQ_WAIT_UNTIL   204
 

Definition at line 307 of file rtai_lxrt.h.

Referenced by rt_irq_wait_until().

#define IS_HARD   1019
 

Definition at line 385 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_is_hard_real_time().

#define ISRPC   104
 

Definition at line 183 of file rtai_lxrt.h.

Referenced by RT_isrpc(), and rt_isrpc().

#define LINUX_SERVER_INIT   1020
 

Definition at line 386 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and linux_syscall_server_fun().

#define LINUX_USE_FPU   17
 

Definition at line 90 of file rtai_lxrt.h.

Referenced by rt_linux_use_fpu().

#define LXRT_GET_ADR   1000
 

Definition at line 366 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_get_adr().

#define LXRT_GET_NAME   1001
 

Definition at line 367 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_get_name().

#define LXRT_MBX_DELETE   1007
 

Definition at line 373 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_mbx_delete().

#define LXRT_MBX_INIT   1006
 

Definition at line 372 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_typed_mbx_init().

#define LXRT_RWL_DELETE   1028
 

Definition at line 394 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), pthread_rwlock_close_rt(), and rt_rwl_delete().

#define LXRT_RWL_INIT   1027
 

Definition at line 393 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), pthread_rwlock_init_rt(), and rt_rwl_init().

#define LXRT_SEM_DELETE   1005
 

Definition at line 371 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), pthread_mutex_close_rt(), rt_sem_delete(), and sem_close_rt().

#define LXRT_SEM_INIT   1004
 

Definition at line 370 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), pthread_mutex_init_rt(), pthread_mutex_open_rt(), rt_typed_sem_init(), sem_init_rt(), and sem_open_rt().

#define LXRT_SPL_DELETE   1030
 

Definition at line 396 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_spl_delete().

#define LXRT_SPL_INIT   1029
 

Definition at line 395 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_spl_init().

#define LXRT_TASK_DELETE   1003
 

Definition at line 369 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_task_delete().

#define LXRT_TASK_INIT   1002
 

Definition at line 368 of file rtai_lxrt.h.

Referenced by ftask_init(), handle_lxrt_request(), and rt_task_init_schmod().

#define MAKE_HARD_RT   1009
 

Definition at line 375 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_make_hard_real_time().

#define MAKE_PERIODIC   3
 

Definition at line 76 of file rtai_lxrt.h.

Referenced by rt_task_make_periodic().

#define MAKE_PERIODIC_NS   30
 

Definition at line 103 of file rtai_lxrt.h.

Referenced by rt_task_make_periodic_relative_ns().

#define MAKE_SOFT_RT   1008
 

Definition at line 374 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_make_soft_real_time().

#define MALLOC   195
 

Definition at line 297 of file rtai_lxrt.h.

Referenced by rt_malloc().

#define MAX_LXRT_FUN   220
 

Definition at line 320 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), lxrt_init(), reset_rt_fun_entries(), and set_rt_fun_entries().

#define MBX_DELETE   76
 

Definition at line 153 of file rtai_lxrt.h.

#define MBX_EVDRP   89
 

Definition at line 166 of file rtai_lxrt.h.

Referenced by RT_mbx_evdrp(), and rt_mbx_evdrp().

#define MBX_OVRWR_SEND   90
 

Definition at line 167 of file rtai_lxrt.h.

Referenced by RT_mbx_ovrwr_send(), and rt_mbx_ovrwr_send().

#define MBX_RECEIVE   84
 

Definition at line 161 of file rtai_lxrt.h.

Referenced by rt_get_net_rpc_ret(), RT_mbx_receive(), and rt_mbx_receive().

#define MBX_RECEIVE_IF   86
 

Definition at line 163 of file rtai_lxrt.h.

Referenced by rt_get_net_rpc_ret(), RT_mbx_receive_if(), and rt_mbx_receive_if().

#define MBX_RECEIVE_TIMED   88
 

Definition at line 165 of file rtai_lxrt.h.

Referenced by rt_get_net_rpc_ret(), RT_mbx_receive_timed(), and rt_mbx_receive_timed().

#define MBX_RECEIVE_UNTIL   87
 

Definition at line 164 of file rtai_lxrt.h.

Referenced by rt_get_net_rpc_ret(), RT_mbx_receive_until(), and rt_mbx_receive_until().

#define MBX_RECEIVE_WP   85
 

Definition at line 162 of file rtai_lxrt.h.

Referenced by rt_get_net_rpc_ret(), RT_mbx_receive_wp(), and rt_mbx_receive_wp().

#define MBX_SEND   79
 

Definition at line 156 of file rtai_lxrt.h.

Referenced by RT_mbx_send(), and rt_mbx_send().

#define MBX_SEND_IF   81
 

Definition at line 158 of file rtai_lxrt.h.

Referenced by RT_mbx_send_if(), and rt_mbx_send_if().

#define MBX_SEND_TIMED   83
 

Definition at line 160 of file rtai_lxrt.h.

Referenced by RT_mbx_send_timed(), and rt_mbx_send_timed().

#define MBX_SEND_UNTIL   82
 

Definition at line 159 of file rtai_lxrt.h.

Referenced by RT_mbx_send_until(), and rt_mbx_send_until().

#define MBX_SEND_WP   80
 

Definition at line 157 of file rtai_lxrt.h.

Referenced by RT_mbx_send_wp(), and rt_mbx_send_wp().

#define MQ_CLOSE   167
 

Definition at line 259 of file rtai_lxrt.h.

Referenced by mq_close().

#define MQ_GETATTR   168
 

Definition at line 260 of file rtai_lxrt.h.

Referenced by mq_getattr().

#define MQ_NOTIFY   170
 

Definition at line 262 of file rtai_lxrt.h.

Referenced by mq_notify().

#define MQ_OPEN   164
 

Definition at line 256 of file rtai_lxrt.h.

Referenced by mq_open().

#define MQ_RECEIVE   165
 

Definition at line 257 of file rtai_lxrt.h.

Referenced by mq_receive().

#define MQ_SEND   166
 

Definition at line 258 of file rtai_lxrt.h.

Referenced by mq_send().

#define MQ_SETATTR   169
 

Definition at line 261 of file rtai_lxrt.h.

Referenced by mq_setattr().

#define MQ_TIMEDRECEIVE   172
 

Definition at line 264 of file rtai_lxrt.h.

Referenced by mq_timedreceive().

#define MQ_TIMEDSEND   173
 

Definition at line 265 of file rtai_lxrt.h.

Referenced by mq_timedsend().

#define MQ_UNLINK   171
 

Definition at line 263 of file rtai_lxrt.h.

Referenced by mq_unlink().

#define NAMED_BITS_DELETE   136
 

Definition at line 224 of file rtai_lxrt.h.

#define NAMED_BITS_INIT   135
 

Definition at line 223 of file rtai_lxrt.h.

#define NAMED_FREE   198
 

Definition at line 300 of file rtai_lxrt.h.

Referenced by rt_named_free().

#define NAMED_MALLOC   197
 

Definition at line 299 of file rtai_lxrt.h.

Referenced by rt_named_malloc().

#define NAMED_MBX_DELETE   78
 

Definition at line 155 of file rtai_lxrt.h.

Referenced by krtai_objects_release(), RT_named_mbx_delete(), and rt_named_mbx_delete().

#define NAMED_MBX_INIT   77
 

Definition at line 154 of file rtai_lxrt.h.

Referenced by RT_typed_named_mbx_init(), and rt_typed_named_mbx_init().

#define NAMED_RWL_DELETE   57
 

Definition at line 132 of file rtai_lxrt.h.

Referenced by krtai_objects_release(), and rt_named_rwl_delete().

#define NAMED_RWL_INIT   56
 

Definition at line 131 of file rtai_lxrt.h.

Referenced by rt_named_rwl_init().

#define NAMED_SEM_DELETE   42
 

Definition at line 117 of file rtai_lxrt.h.

Referenced by krtai_objects_release(), rt_named_sem_delete(), and RT_named_sem_delete().

#define NAMED_SEM_INIT   41
 

Definition at line 116 of file rtai_lxrt.h.

Referenced by rt_typed_named_sem_init(), and RT_typed_named_sem_init().

#define NAMED_SPL_DELETE   70
 

Definition at line 145 of file rtai_lxrt.h.

Referenced by krtai_objects_release(), and rt_named_spl_delete().

#define NAMED_SPL_INIT   69
 

Definition at line 144 of file rtai_lxrt.h.

Referenced by rt_named_spl_init().

#define NAMED_TASK_DELETE   176
 

Definition at line 270 of file rtai_lxrt.h.

#define NAMED_TASK_INIT   174
 

Definition at line 268 of file rtai_lxrt.h.

#define NAMED_TASK_INIT_CPUID   175
 

Definition at line 269 of file rtai_lxrt.h.

#define NAMED_TBX_DELETE   147
 

Definition at line 237 of file rtai_lxrt.h.

#define NAMED_TBX_INIT   146
 

Definition at line 236 of file rtai_lxrt.h.

#define NANO2COUNT   11
 

Definition at line 84 of file rtai_lxrt.h.

Referenced by nano2count().

#define NANO2COUNT_CPUID   27
 

Definition at line 100 of file rtai_lxrt.h.

Referenced by nano2count_cpuid().

#define NARG  )     ((x) & (GT_NR_SYSCALLS - 1))
 

Definition at line 406 of file rtai_lxrt.h.

Referenced by handle_lxrt_request().

#define NETRPC   179
 

Definition at line 277 of file rtai_lxrt.h.

Referenced by RT_get_adr(), RT_get_cpu_time_ns(), RT_get_time_ns(), RT_get_time_ns_cpuid(), RT_isrpc(), RT_mbx_evdrp(), RT_mbx_ovrwr_send(), RT_mbx_receive(), RT_mbx_receive_if(), RT_mbx_receive_timed(), RT_mbx_receive_until(), RT_mbx_receive_wp(), RT_mbx_send(), RT_mbx_send_if(), RT_mbx_send_timed(), RT_mbx_send_until(), RT_mbx_send_wp(), RT_named_mbx_delete(), RT_named_sem_delete(), RT_rpc(), RT_rpc_if(), RT_rpc_timed(), RT_rpc_until(), RT_rpcx(), RT_rpcx_if(), RT_rpcx_timed(), RT_rpcx_until(), RT_sem_broadcast(), RT_sem_signal(), RT_sem_wait(), RT_sem_wait_if(), RT_sem_wait_timed(), RT_sem_wait_until(), RT_send(), RT_send_if(), RT_send_timed(), RT_send_until(), RT_sendx(), RT_sendx_if(), RT_sendx_timed(), RT_sendx_until(), RT_sleep(), RT_sleep_until(), rt_sync_net_rpc(), RT_task_resume(), RT_task_suspend(), RT_typed_named_mbx_init(), and RT_typed_named_sem_init().

#define NONROOT_HRT   1011
 

Definition at line 377 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_allow_nonroot_hrt().

#define PEND_LINUX_IRQ   211
 

Definition at line 314 of file rtai_lxrt.h.

Referenced by rt_pend_linux_irq().

#define PRINT_TO_SCREEN   1010
 

Definition at line 376 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rtai_print_to_screen().

#define PRINTK   1024
 

Definition at line 390 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_printk().

#define PROXY_ATTACH   120
 

Definition at line 203 of file rtai_lxrt.h.

Referenced by rt_proxy_attach().

#define PROXY_DETACH   121
 

Definition at line 204 of file rtai_lxrt.h.

Referenced by krtai_objects_release(), lxrt_Proxy_detach(), and rt_proxy_detach().

#define PROXY_TRIGGER   122
 

Definition at line 205 of file rtai_lxrt.h.

Referenced by rt_trigger().

#define RECEIVE_IF   96
 

Definition at line 175 of file rtai_lxrt.h.

Referenced by rt_receive_if().

#define RECEIVE_LINUX_SYSCALL   212
 

Definition at line 315 of file rtai_lxrt.h.

Referenced by rt_receive_linux_syscall().

#define RECEIVE_TIMED   98
 

Definition at line 177 of file rtai_lxrt.h.

Referenced by rt_receive_timed().

#define RECEIVE_UNTIL   97
 

Definition at line 176 of file rtai_lxrt.h.

Referenced by rt_receive_until().

#define RECEIVEMSG   95
 

Definition at line 174 of file rtai_lxrt.h.

Referenced by rt_receive().

#define RECEIVEX   115
 

Definition at line 196 of file rtai_lxrt.h.

Referenced by rt_receivex().

#define RECEIVEX_IF   116
 

Definition at line 197 of file rtai_lxrt.h.

Referenced by rt_receivex_if().

#define RECEIVEX_TIMED   118
 

Definition at line 199 of file rtai_lxrt.h.

Referenced by rt_receivex_timed().

#define RECEIVEX_UNTIL   117
 

Definition at line 198 of file rtai_lxrt.h.

Referenced by rt_receivex_until().

#define REL_STUB   184
 

Definition at line 282 of file rtai_lxrt.h.

Referenced by rt_rel_stub().

#define RELEASE_IRQ_TASK   208
 

Definition at line 311 of file rtai_lxrt.h.

Referenced by rt_release_irq_task().

#define RELEASE_RTC   215
 

Definition at line 318 of file rtai_lxrt.h.

Referenced by rt_release_rtc(), and stop_ftimer().

#define REQUEST_IRQ_TASK   207
 

Definition at line 310 of file rtai_lxrt.h.

Referenced by rt_request_irq_task().

#define REQUEST_RTC   214
 

Definition at line 317 of file rtai_lxrt.h.

Referenced by rt_request_rtc(), and start_ftimer().

#define RESUME   2
 

Definition at line 75 of file rtai_lxrt.h.

Referenced by RT_task_resume(), and rt_task_resume().

#define RETURN_LINUX_SYSCALL   213
 

Definition at line 316 of file rtai_lxrt.h.

Referenced by rt_return_linux_syscall().

#define RETURNMSG   105
 

Definition at line 184 of file rtai_lxrt.h.

Referenced by rt_return().

#define RETURNX   114
 

Definition at line 195 of file rtai_lxrt.h.

Referenced by rt_returnx().

#define RPC_IF   100
 

Definition at line 179 of file rtai_lxrt.h.

Referenced by RT_rpc_if(), and rt_rpc_if().

#define RPC_TIMED   102
 

Definition at line 181 of file rtai_lxrt.h.

Referenced by RT_rpc_timed(), and rt_rpc_timed().

#define RPC_UNTIL   101
 

Definition at line 180 of file rtai_lxrt.h.

Referenced by RT_rpc_until(), and rt_rpc_until().

#define RPCMSG   99
 

Definition at line 178 of file rtai_lxrt.h.

Referenced by RT_rpc(), and rt_rpc().

#define RPCX   106
 

Definition at line 187 of file rtai_lxrt.h.

Referenced by RT_rpcx(), and rt_rpcx().

#define RPCX_IF   107
 

Definition at line 188 of file rtai_lxrt.h.

Referenced by RT_rpcx_if(), and rt_rpcx_if().

#define RPCX_TIMED   109
 

Definition at line 190 of file rtai_lxrt.h.

Referenced by RT_rpcx_timed(), and rt_rpcx_timed().

#define RPCX_UNTIL   108
 

Definition at line 189 of file rtai_lxrt.h.

Referenced by RT_rpcx_until(), and rt_rpcx_until().

#define RT_BOOM   95
 

Definition at line 351 of file rtai_lxrt.h.

Referenced by rt_boom().

 
#define rt_buddy  )     rt_agent()
 

Definition at line 1218 of file rtai_lxrt.h.

Referenced by MAKE_SOFT(), pthread_exit_rt(), pthread_testcancel_rt(), pthread_yield_rt(), and rt_request_signal().

#define RT_BUDDY   1012
 

Definition at line 378 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), rt_agent(), rt_linux_syscall_server_create(), and rt_task_use_fpu().

#define rt_cond_init name   )     rt_typed_sem_init(name, 0, BIN_SEM)
 

Initialize a condition variable.

Allocates and initializes a condition variable to be referred by name.

Parameters:
name name of the condition variable.
It is important to remark that the returned pointer cannot be used directly, it is for kernel space data, but just passed as arguments when needed.

Returns:
a pointer to the condition variable to be used in related calls or 0 if an error has occured.
Definition at line 341 of file rtai_sem.h.

#define RT_CRECEIVE   125
 

Definition at line 211 of file rtai_lxrt.h.

Referenced by rt_Creceive().

#define RT_FREE   97
 

Definition at line 353 of file rtai_lxrt.h.

#define RT_GET_ERRNO   104
 

Definition at line 362 of file rtai_lxrt.h.

Referenced by rt_get_errno().

#define RT_GET_LINUX_SIGNAL   103
 

Definition at line 361 of file rtai_lxrt.h.

Referenced by rt_get_linux_signal().

#define RT_GETTICKQUEUEHOOK   94
 

Definition at line 349 of file rtai_lxrt.h.

Referenced by rt_GetTickQueueHook().

#define rt_grow_and_lock_stack incr   ) 
 

Value:

do { \ char buf[incr]; \ memset(buf, 0, incr); \ mlockall(MCL_CURRENT | MCL_FUTURE); \ } while (0)
Definition at line 550 of file rtai_lxrt.h.

#define RT_INITTICKQUEUE   69
 

Definition at line 324 of file rtai_lxrt.h.

Referenced by rt_InitTickQueue().

#define rt_is_soft_real_time rt_task   )     (!rt_is_hard_real_time((rt_task)))
 

Definition at line 1268 of file rtai_lxrt.h.

#define rt_mbx_init name,
size   )     rt_typed_mbx_init(name, size, FIFO_Q)
 

Initialize mailbox.

Initializes a mailbox referred to by name of size size.

It is important to remark that the returned task pointer cannot be used directly, they are for kernel space data, but just passed as arguments when needed.

Returns:
On success a pointer to the mail box to be used in related calls.

A 0 value is returned if it was not possible to setup the semaphore or something using the same name was found.

Definition at line 179 of file rtai_mbx.h.

#define RT_MMGR_STATS   98
 

Definition at line 354 of file rtai_lxrt.h.

Referenced by rt_mmgr_stats().

#define RT_NAME_ATTACH   130
 

Definition at line 216 of file rtai_lxrt.h.

Referenced by rt_Alias_attach().

#define RT_NAME_DETACH   131
 

Definition at line 217 of file rtai_lxrt.h.

Referenced by rt_Name_detach().

#define RT_NAME_LOCATE   132
 

Definition at line 218 of file rtai_lxrt.h.

Referenced by rt_Name_locate().

#define rt_named_task_init task_name,
thread,
data,
stack_size,
prio,
uses_fpu,
signal   )     rt_task_init(nam2num(task_name), thread, data, stack_size, prio, uses_fpu, signal)
 

Definition at line 1054 of file rtai_lxrt.h.

#define rt_named_task_init_cpuid task_name,
thread,
data,
stack_size,
prio,
uses_fpu,
signal,
run_on_cpu   )     rt_task_init_cpuid(nam2num(task_name), thread, data, stack_size, prio, uses_fpu, signal, run_on_cpu)
 

Definition at line 1057 of file rtai_lxrt.h.

#define RT_PROXY_ATTACH   127
 

Definition at line 213 of file rtai_lxrt.h.

Referenced by rt_Proxy_attach().

#define RT_PROXY_DETACH   128
 

Definition at line 214 of file rtai_lxrt.h.

Referenced by rt_Proxy_detach().

#define RT_QBLKAFTER   84
 

Definition at line 339 of file rtai_lxrt.h.

Referenced by rt_qBlkAfter().

#define RT_QBLKATHEAD   89
 

Definition at line 344 of file rtai_lxrt.h.

Referenced by rt_qBlkAtHead().

#define RT_QBLKATTAIL   90
 

Definition at line 345 of file rtai_lxrt.h.

Referenced by rt_qBlkAtTail().

#define RT_QBLKBEFORE   83
 

Definition at line 338 of file rtai_lxrt.h.

Referenced by rt_qBlkBefore().

#define RT_QBLKCANCEL   78
 

Definition at line 333 of file rtai_lxrt.h.

Referenced by rt_qBlkCancel().

#define RT_QBLKCOMPLETE   87
 

Definition at line 342 of file rtai_lxrt.h.

Referenced by rt_qBlkComplete().

#define RT_QBLKDEQUEUE   77
 

Definition at line 332 of file rtai_lxrt.h.

Referenced by rt_qBlkDequeue().

#define RT_QBLKRELEASE   86
 

Definition at line 341 of file rtai_lxrt.h.

Referenced by rt_qBlkRelease().

#define RT_QBLKREPEAT   75
 

Definition at line 330 of file rtai_lxrt.h.

Referenced by rt_qBlkRepeat().

#define RT_QBLKSCHEDULE   93
 

Definition at line 348 of file rtai_lxrt.h.

Referenced by rt_qBlkSchedule().

#define RT_QBLKSOON   76
 

Definition at line 331 of file rtai_lxrt.h.

Referenced by rt_qBlkSoon().

#define RT_QBLKUNHOOK   85
 

Definition at line 340 of file rtai_lxrt.h.

Referenced by rt_qBlkUnhook().

#define RT_QBLKWAIT   74
 

Definition at line 329 of file rtai_lxrt.h.

Referenced by rt_qBlkWait().

#define RT_QDYNALLOC   71
 

Definition at line 326 of file rtai_lxrt.h.

Referenced by rt_qDynAlloc().

#define RT_QDYNFREE   72
 

Definition at line 327 of file rtai_lxrt.h.

Referenced by rt_qDynFree().

#define RT_QDYNINIT   73
 

Definition at line 328 of file rtai_lxrt.h.

Referenced by rt_qDynInit().

#define RT_QHOOKFLUSH   88
 

Definition at line 343 of file rtai_lxrt.h.

Referenced by rt_qHookFlush().

#define RT_QHOOKINIT   91
 

Definition at line 346 of file rtai_lxrt.h.

Referenced by rt_qHookInit().

#define RT_QHOOKRELEASE   92
 

Definition at line 347 of file rtai_lxrt.h.

Referenced by rt_qHookRelease().

#define RT_QLOOP   81
 

Definition at line 336 of file rtai_lxrt.h.

Referenced by rt_qLoop().

#define RT_QRECEIVE   80
 

Definition at line 335 of file rtai_lxrt.h.

Referenced by rt_qReceive().

#define RT_QSTEP   82
 

Definition at line 337 of file rtai_lxrt.h.

Referenced by rt_qStep().

#define RT_QSYNC   79
 

Definition at line 334 of file rtai_lxrt.h.

Referenced by rt_qSync().

#define RT_RECEIVE   124
 

Definition at line 210 of file rtai_lxrt.h.

Referenced by rt_Receive().

#define RT_RELEASETICKQUEUE   70
 

Definition at line 325 of file rtai_lxrt.h.

Referenced by rt_ReleaseTickQueue().

#define RT_REPLY   126
 

Definition at line 212 of file rtai_lxrt.h.

Referenced by rt_Reply().

#define rt_sem_init name,
value   )     rt_typed_sem_init(name, value, CNT_SEM)
 

Initialize a counting semaphore.

Allocates and initializes a semaphore to be referred by name.

Parameters:
name name of the semaphore.
value is the initial value of the semaphore
It is important to remark that the returned task pointer cannot be used directly, they are for kernel space data, but just passed as arguments when needed.

Returns:
a pointer to the semaphore to be used in related calls or 0 if an error has occured.
Definition at line 255 of file rtai_sem.h.

#define RT_SEND   123
 

Definition at line 209 of file rtai_lxrt.h.

Referenced by rt_Send().

#define RT_SET_LINUX_SIGNAL_HANDLER   105
 

Definition at line 363 of file rtai_lxrt.h.

Referenced by rt_set_linux_signal_handler().

#define RT_STOMP   99
 

Definition at line 355 of file rtai_lxrt.h.

Referenced by rt_stomp().

#define rt_task_wakeup_sleeping task,
mask   )     rt_task_masked_unblock(task, RT_SCHED_DELAYED)
 

Definition at line 1300 of file rtai_lxrt.h.

#define RT_THREAD_STACK_MIN   64*1024
 

Definition at line 619 of file rtai_lxrt.h.

Referenced by rt_thread_create().

#define RT_TRIGGER   129
 

Definition at line 215 of file rtai_lxrt.h.

Referenced by rt_Trigger().

#define RT_VC_ATTACH   100
 

Definition at line 357 of file rtai_lxrt.h.

Referenced by rt_vc_attach().

#define RT_VC_RELEASE   101
 

Definition at line 358 of file rtai_lxrt.h.

Referenced by rt_vc_release().

#define RT_VC_RESERVE   102
 

Definition at line 359 of file rtai_lxrt.h.

Referenced by rt_vc_reserve().

#define RTAI_MALLOC   96
 

Definition at line 352 of file rtai_lxrt.h.

#define RWL_DELETE   55
 

Definition at line 130 of file rtai_lxrt.h.

#define RWL_INIT   54
 

Definition at line 129 of file rtai_lxrt.h.

Referenced by lxrt_rwl_init().

#define RWL_RDLOCK   58
 

Definition at line 133 of file rtai_lxrt.h.

Referenced by pthread_rwlock_rdlock_rt(), and rt_rwl_rdlock().

#define RWL_RDLOCK_IF   59
 

Definition at line 134 of file rtai_lxrt.h.

Referenced by pthread_rwlock_close_rt(), pthread_rwlock_tryrdlock_rt(), and rt_rwl_rdlock_if().

#define RWL_RDLOCK_TIMED   61
 

Definition at line 136 of file rtai_lxrt.h.

Referenced by rt_rwl_rdlock_timed().

#define RWL_RDLOCK_UNTIL   60
 

Definition at line 135 of file rtai_lxrt.h.

Referenced by rt_rwl_rdlock_until().

#define RWL_UNLOCK   66
 

Definition at line 141 of file rtai_lxrt.h.

Referenced by pthread_rwlock_close_rt(), pthread_rwlock_unlock_rt(), and rt_rwl_unlock().

#define RWL_WRLOCK   62
 

Definition at line 137 of file rtai_lxrt.h.

Referenced by pthread_rwlock_wrlock_rt(), and rt_rwl_wrlock().

#define RWL_WRLOCK_IF   63
 

Definition at line 138 of file rtai_lxrt.h.

Referenced by pthread_rwlock_close_rt(), pthread_rwlock_trywrlock_rt(), and rt_rwl_wrlock_if().

#define RWL_WRLOCK_TIMED   65
 

Definition at line 140 of file rtai_lxrt.h.

Referenced by rt_rwl_wrlock_timed().

#define RWL_WRLOCK_UNTIL   64
 

Definition at line 139 of file rtai_lxrt.h.

Referenced by rt_rwl_wrlock_until().

#define SCHED_LOCK   209
 

Definition at line 312 of file rtai_lxrt.h.

Referenced by rt_sched_lock().

#define SCHED_UNLOCK   210
 

Definition at line 313 of file rtai_lxrt.h.

Referenced by rt_sched_unlock().

#define SEM_BROADCAST   48
 

Definition at line 123 of file rtai_lxrt.h.

Referenced by pthread_cond_broadcast_rt(), rt_sem_broadcast(), and RT_sem_broadcast().

#define SEM_COUNT   50
 

Definition at line 125 of file rtai_lxrt.h.

Referenced by rt_sem_count(), and sem_getvalue_rt().

#define SEM_DELETE   40
 

Definition at line 115 of file rtai_lxrt.h.

#define SEM_SIGNAL   43
 

Definition at line 118 of file rtai_lxrt.h.

Referenced by rt_sem_signal(), RT_sem_signal(), sched_sem_signal(), and sem_post_rt().

#define SEM_WAIT   44
 

Definition at line 119 of file rtai_lxrt.h.

Referenced by rt_sem_wait(), RT_sem_wait(), and sem_wait_rt().

#define SEM_WAIT_BARRIER   49
 

Definition at line 124 of file rtai_lxrt.h.

Referenced by rt_sem_wait_barrier().

#define SEM_WAIT_IF   45
 

Definition at line 120 of file rtai_lxrt.h.

Referenced by pthread_mutex_close_rt(), rt_sem_wait_if(), RT_sem_wait_if(), sem_close_rt(), and sem_trywait_rt().

#define SEM_WAIT_TIMED   47
 

Definition at line 122 of file rtai_lxrt.h.

Referenced by rt_sem_wait_timed(), and RT_sem_wait_timed().

#define SEM_WAIT_UNTIL   46
 

Definition at line 121 of file rtai_lxrt.h.

Referenced by rt_sem_wait_until(), RT_sem_wait_until(), and sem_timedwait_rt().

#define SEND_IF   92
 

Definition at line 171 of file rtai_lxrt.h.

Referenced by RT_send_if(), and rt_send_if().

#define SEND_REQ_REL_PORT   180
 

Definition at line 278 of file rtai_lxrt.h.

Referenced by rt_send_req_rel_port().

#define SEND_TIMED   94
 

Definition at line 173 of file rtai_lxrt.h.

Referenced by RT_send_timed(), and rt_send_timed().

#define SEND_UNTIL   93
 

Definition at line 172 of file rtai_lxrt.h.

Referenced by RT_send_until(), and rt_send_until().

#define SENDMSG   91
 

Definition at line 170 of file rtai_lxrt.h.

Referenced by RT_send(), and rt_send().

#define SENDX   110
 

Definition at line 191 of file rtai_lxrt.h.

Referenced by RT_sendx(), and rt_sendx().

#define SENDX_IF   111
 

Definition at line 192 of file rtai_lxrt.h.

Referenced by RT_sendx_if(), and rt_sendx_if().

#define SENDX_TIMED   113
 

Definition at line 194 of file rtai_lxrt.h.

Referenced by RT_sendx_timed(), and rt_sendx_timed().

#define SENDX_UNTIL   112
 

Definition at line 193 of file rtai_lxrt.h.

Referenced by RT_sendx_until(), and rt_sendx_until().

#define SET_ONESHOT_MODE   14
 

Definition at line 87 of file rtai_lxrt.h.

Referenced by rt_set_oneshot_mode(), and start_ftimer().

#define SET_PERIOD   37
 

Definition at line 110 of file rtai_lxrt.h.

Referenced by rt_set_period().

#define SET_PERIODIC_MODE   13
 

Definition at line 86 of file rtai_lxrt.h.

Referenced by rt_set_periodic_mode(), and start_ftimer().

#define SET_RESUME_END   32
 

Definition at line 105 of file rtai_lxrt.h.

Referenced by rt_task_set_resume_end_times().

#define SET_RESUME_TIME   36
 

Definition at line 109 of file rtai_lxrt.h.

Referenced by rt_set_resume_time().

#define SET_RUNNABLE_ON_CPUID   22
 

Definition at line 95 of file rtai_lxrt.h.

Referenced by rt_set_runnable_on_cpuid().

#define SET_RUNNABLE_ON_CPUS   21
 

Definition at line 94 of file rtai_lxrt.h.

Referenced by rt_set_runnable_on_cpus().

#define SET_SCHED_POLICY   31
 

Definition at line 104 of file rtai_lxrt.h.

Referenced by rt_set_sched_policy().

#define SET_THIS_NODE   182
 

Definition at line 280 of file rtai_lxrt.h.

Referenced by rt_set_this_node().

#define SET_USP_FLAGS   1016
 

Definition at line 382 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_set_usp_flags().

#define SET_USP_FLG_MSK   1018
 

Definition at line 384 of file rtai_lxrt.h.

Referenced by handle_lxrt_request(), and rt_set_usp_flags_mask().

#define SHM_ALLOC   187
 

Definition at line 289 of file rtai_lxrt.h.

Referenced by _rt_shm_alloc(), and rtai_shm_f_ioctl().

#define SHM_FREE   188
 

Definition at line 290 of file rtai_lxrt.h.

Referenced by _rt_shm_alloc(), and rtai_shm_f_ioctl().

#define SHM_SIZE   189
 

Definition at line 291 of file rtai_lxrt.h.

Referenced by rt_shm_free(), and rtai_shm_f_ioctl().

#define SIGNAL_HANDLER   15
 

Definition at line 88 of file rtai_lxrt.h.

Referenced by rt_task_signal_handler().

#define SIZARG   sizeof(arg)
 

Definition at line 558 of file rtai_lxrt.h.

Referenced by _rt_shm_alloc(), count2nano(), count2nano_cpuid(), ftask_init(), mq_close(), mq_getattr(), mq_notify(), mq_open(), mq_receive(), mq_send(), mq_setattr(), mq_timedreceive(), mq_timedsend(), mq_unlink(), nano2count(), nano2count_cpuid(), pthread_cond_broadcast_rt(), pthread_cond_signal_rt(), pthread_cond_timedwait_rt(), pthread_cond_wait_rt(), pthread_mutex_close_rt(), pthread_mutex_init_rt(), pthread_mutex_open_rt(), pthread_rwlock_close_rt(), pthread_rwlock_init_rt(), pthread_rwlock_rdlock_rt(), pthread_rwlock_tryrdlock_rt(), pthread_rwlock_trywrlock_rt(), pthread_rwlock_unlock_rt(), pthread_rwlock_wrlock_rt(), pthread_yield_rt(), rt_agent(), rt_Alias_attach(), rt_allow_nonroot_hrt(), rt_bits_delete(), rt_bits_init(), rt_bits_reset(), rt_bits_signal(), rt_bits_wait(), rt_bits_wait_if(), rt_bits_wait_timed(), rt_bits_wait_until(), rt_boom(), rt_buddy_task_use_fpu(), rt_busy_sleep(), rt_change_prio(), rt_cond_signal(), rt_cond_wait(), rt_cond_wait_timed(), rt_cond_wait_until(), rt_Creceive(), rt_delete_tasklet(), rt_disable_signal(), rt_enable_signal(), rt_evdrp(), rt_evdrpx(), rt_exec_tasklet(), rt_force_task_soft(), rt_free(), RT_get_adr(), rt_get_adr(), rt_get_bits(), RT_get_cpu_time_ns(), rt_get_cpu_time_ns(), rt_get_errno(), rt_get_exectime(), rt_get_linux_signal(), rt_get_name(), rt_get_time(), rt_get_time_cpuid(), RT_get_time_ns(), rt_get_time_ns(), RT_get_time_ns_cpuid(), rt_get_time_ns_cpuid(), rt_get_timer_cpu(), rt_get_usp_flags(), rt_get_usp_flags_mask(), rt_GetTickQueueHook(), rt_gettimeorig(), rt_halloc(), rt_hard_timer_tick(), rt_hard_timer_tick_cpuid(), rt_hfree(), rt_init_tasklet(), rt_InitTickQueue(), rt_insert_tasklet(), rt_insert_timer(), rt_irq_signal(), rt_irq_wait(), rt_irq_wait_if(), rt_irq_wait_timed(), rt_irq_wait_until(), rt_is_hard_real_time(), rt_is_hard_timer_running(), RT_isrpc(), rt_isrpc(), rt_linux_use_fpu(), rt_make_hard_real_time(), rt_make_soft_real_time(), rt_malloc(), rt_mbx_delete(), RT_mbx_evdrp(), rt_mbx_evdrp(), RT_mbx_ovrwr_send(), rt_mbx_ovrwr_send(), RT_mbx_receive(), rt_mbx_receive(), RT_mbx_receive_if(), rt_mbx_receive_if(), RT_mbx_receive_timed(), rt_mbx_receive_timed(), RT_mbx_receive_until(), rt_mbx_receive_until(), RT_mbx_receive_wp(), rt_mbx_receive_wp(), RT_mbx_send(), rt_mbx_send(), RT_mbx_send_if(), rt_mbx_send_if(), RT_mbx_send_timed(), rt_mbx_send_timed(), RT_mbx_send_until(), rt_mbx_send_until(), RT_mbx_send_wp(), rt_mbx_send_wp(), rt_mmgr_stats(), rt_msg_broadcast(), rt_msg_broadcast_if(), rt_msg_broadcast_timed(), rt_msg_broadcast_until(), rt_msg_evdrp(), rt_msg_receive(), rt_msg_receive_if(), rt_msg_receive_timed(), rt_msg_receive_until(), rt_msg_send(), rt_msg_send_if(), rt_msg_send_timed(), rt_msg_send_until(), rt_msgq_delete(), rt_msgq_init(), rt_Name_detach(), rt_Name_locate(), rt_named_free(), rt_named_halloc(), rt_named_hfree(), rt_named_malloc(), RT_named_mbx_delete(), rt_named_mbx_delete(), rt_named_msgq_delete(), rt_named_msgq_init(), rt_named_rwl_delete(), rt_named_rwl_init(), rt_named_sem_delete(), RT_named_sem_delete(), rt_named_spl_delete(), rt_named_spl_init(), rt_pend_linux_irq(), rt_printk(), rt_Proxy_attach(), rt_proxy_attach(), rt_Proxy_detach(), rt_proxy_detach(), rt_qBlkAfter(), rt_qBlkAtHead(), rt_qBlkAtTail(), rt_qBlkBefore(), rt_qBlkCancel(), rt_qBlkComplete(), rt_qBlkDequeue(), rt_qBlkRelease(), rt_qBlkRepeat(), rt_qBlkSchedule(), rt_qBlkSoon(), rt_qBlkUnhook(), rt_qBlkWait(), rt_qDynAlloc(), rt_qDynFree(), rt_qDynInit(), rt_qHookFlush(), rt_qHookInit(), rt_qHookRelease(), rt_qLoop(), rt_qReceive(), rt_qStep(), rt_qSync(), rt_Receive(), rt_receive(), rt_receive_if(), rt_receive_linux_syscall(), rt_receive_timed(), rt_receive_until(), rt_receivex(), rt_receivex_if(), rt_receivex_timed(), rt_receivex_until(), rt_release_irq_task(), rt_release_rtc(), rt_release_signal(), rt_ReleaseTickQueue(), rt_remove_tasklet(), rt_remove_timer(), rt_Reply(), rt_request_irq_task(), rt_request_rtc(), rt_return(), rt_return_linux_syscall(), rt_returnx(), RT_rpc(), rt_rpc(), RT_rpc_if(), rt_rpc_if(), RT_rpc_timed(), rt_rpc_timed(), RT_rpc_until(), rt_rpc_until(), RT_rpcx(), rt_rpcx(), RT_rpcx_if(), rt_rpcx_if(), RT_rpcx_timed(), rt_rpcx_timed(), RT_rpcx_until(), rt_rpcx_until(), rt_rwl_delete(), rt_rwl_init(), rt_rwl_rdlock(), rt_rwl_rdlock_if(), rt_rwl_rdlock_timed(), rt_rwl_rdlock_until(), rt_rwl_unlock(), rt_rwl_wrlock(), rt_rwl_wrlock_if(), rt_rwl_wrlock_timed(), rt_rwl_wrlock_until(), rt_sched_lock(), rt_sched_unlock(), rt_sem_broadcast(), RT_sem_broadcast(), rt_sem_count(), rt_sem_delete(), rt_sem_signal(), RT_sem_signal(), rt_sem_wait(), RT_sem_wait(), rt_sem_wait_barrier(), rt_sem_wait_if(), RT_sem_wait_if(), rt_sem_wait_timed(), RT_sem_wait_timed(), rt_sem_wait_until(), RT_sem_wait_until(), RT_send(), rt_Send(), rt_send(), RT_send_if(), rt_send_if(), RT_send_timed(), rt_send_timed(), RT_send_until(), rt_send_until(), RT_sendx(), rt_sendx(), RT_sendx_if(), rt_sendx_if(), RT_sendx_timed(), rt_sendx_timed(), RT_sendx_until(), rt_sendx_until(), rt_set_linux_signal_handler(), rt_set_oneshot_mode(), rt_set_period(), rt_set_periodic_mode(), rt_set_resume_time(), rt_set_runnable_on_cpuid(), rt_set_runnable_on_cpus(), rt_set_sched_policy(), rt_set_tasklet_data(), rt_set_tasklet_handler(), rt_set_tasklet_priority(), rt_set_timer_firing_time(), rt_set_timer_period(), rt_set_timer_priority(), rt_set_usp_flags(), rt_set_usp_flags_mask(), rt_shm_free(), RT_sleep(), rt_sleep(), RT_sleep_until(), rt_sleep_until(), rt_spl_delete(), rt_spl_init(), rt_spl_lock(), rt_spl_lock_if(), rt_spl_lock_timed(), rt_spl_unlock(), rt_spv_RMS(), rt_stomp(), rt_sync_net_rpc(), rt_task_delete(), rt_task_init_schmod(), rt_task_make_periodic(), rt_task_make_periodic_relative_ns(), rt_task_masked_unblock(), RT_task_resume(), rt_task_resume(), rt_task_set_resume_end_times(), rt_task_signal_handler(), RT_task_suspend(), rt_task_suspend(), rt_task_suspend_if(), rt_task_suspend_timed(), rt_task_suspend_until(), rt_task_use_fpu(), rt_task_wait_period(), rt_task_yield(), rt_tasklet_use_fpu(), rt_Trigger(), rt_trigger(), rt_trigger_signal(), rt_typed_mbx_init(), RT_typed_named_mbx_init(), rt_typed_named_mbx_init(), rt_typed_named_sem_init(), RT_typed_named_sem_init(), rt_typed_sem_init(), rt_usp_signal_handler(), rt_vc_attach(), rt_vc_release(), rt_vc_reserve(), rtai_print_to_screen(), rtf_create(), rtf_create_named_lxrt(), rtf_destroy(), rtf_get(), rtf_get_if(), rtf_getfifobyname_lxrt(), rtf_named_create_lxrt(), rtf_ovrwr_put(), rtf_put(), rtf_put_if(), rtf_reset_lxrt(), rtf_resize_lxrt(), rtf_sem_destroy_lxrt(), rtf_sem_init_lxrt(), rtf_sem_post_lxrt(), rtf_sem_trywait_lxrt(), sem_close_rt(), sem_getvalue_rt(), sem_init_rt(), sem_open_rt(), sem_post_rt(), sem_timedwait_rt(), sem_trywait_rt(), sem_wait_rt(), start_ftimer(), start_rt_apic_timers(), start_rt_timer(), stop_ftimer(), stop_rt_timer(), and support_tasklet().

#define SLEEP   5
 

Definition at line 78 of file rtai_lxrt.h.

Referenced by RT_sleep(), and rt_sleep().

#define SLEEP_UNTIL   6
 

Definition at line 79 of file rtai_lxrt.h.

Referenced by RT_sleep_until(), and rt_sleep_until().

#define SPL_DELETE   68
 

Definition at line 143 of file rtai_lxrt.h.

#define SPL_INIT   67
 

Definition at line 142 of file rtai_lxrt.h.

Referenced by lxrt_spl_init().

#define SPL_LOCK   71
 

Definition at line 146 of file rtai_lxrt.h.

Referenced by rt_spl_lock().

#define SPL_LOCK_IF   72
 

Definition at line 147 of file rtai_lxrt.h.

Referenced by rt_spl_lock_if().

#define SPL_LOCK_TIMED   73
 

Definition at line 148 of file rtai_lxrt.h.

Referenced by rt_spl_lock_timed().

#define SPL_UNLOCK   74
 

Definition at line 149 of file rtai_lxrt.h.

Referenced by rt_spl_unlock().

#define SPV_RMS   33
 

Definition at line 106 of file rtai_lxrt.h.

Referenced by rt_spv_RMS().

#define SRQ  )     (((x) >> 12) & 0xFFF)
 

Definition at line 405 of file rtai_lxrt.h.

Referenced by handle_lxrt_request().

#define START_RT_APIC_TIMERS   24
 

Definition at line 97 of file rtai_lxrt.h.

Referenced by start_rt_apic_timers().

#define START_TIMER   7
 

Definition at line 80 of file rtai_lxrt.h.

Referenced by start_ftimer(), and start_rt_timer().

#define STOP_TIMER   8
 

Definition at line 81 of file rtai_lxrt.h.

Referenced by stop_ftimer(), and stop_rt_timer().

#define SUSPEND   1
 

Definition at line 74 of file rtai_lxrt.h.

Referenced by rt_linux_syscall_server_create(), RT_task_suspend(), and rt_task_suspend().

#define SUSPEND_IF   199
 

Definition at line 302 of file rtai_lxrt.h.

Referenced by rt_task_suspend_if().

#define SUSPEND_TIMED   201
 

Definition at line 304 of file rtai_lxrt.h.

Referenced by rt_task_suspend_timed(), and rtf_ioctl().

#define SUSPEND_UNTIL   200
 

Definition at line 303 of file rtai_lxrt.h.

Referenced by rt_task_suspend_until().

#define TASK_USE_FPU   16
 

Definition at line 89 of file rtai_lxrt.h.

Referenced by rt_buddy_task_use_fpu(), and rt_task_use_fpu().

#define TBX_BROADCAST   156
 

Definition at line 246 of file rtai_lxrt.h.

#define TBX_BROADCAST_IF   157
 

Definition at line 247 of file rtai_lxrt.h.

#define TBX_BROADCAST_TIMED   159
 

Definition at line 249 of file rtai_lxrt.h.

#define TBX_BROADCAST_UNTIL   158
 

Definition at line 248 of file rtai_lxrt.h.

#define TBX_DELETE   145
 

Definition at line 235 of file rtai_lxrt.h.

#define TBX_INIT   144
 

Definition at line 234 of file rtai_lxrt.h.

#define TBX_RECEIVE   152
 

Definition at line 242 of file rtai_lxrt.h.

#define TBX_RECEIVE_IF   153
 

Definition at line 243 of file rtai_lxrt.h.

#define TBX_RECEIVE_TIMED   155
 

Definition at line 245 of file rtai_lxrt.h.

#define TBX_RECEIVE_UNTIL   154
 

Definition at line 244 of file rtai_lxrt.h.

#define TBX_SEND   148
 

Definition at line 238 of file rtai_lxrt.h.

#define TBX_SEND_IF   149
 

Definition at line 239 of file rtai_lxrt.h.

#define TBX_SEND_TIMED   151
 

Definition at line 241 of file rtai_lxrt.h.

#define TBX_SEND_UNTIL   150
 

Definition at line 240 of file rtai_lxrt.h.

#define TBX_URGENT   160
 

Definition at line 250 of file rtai_lxrt.h.

#define TBX_URGENT_IF   161
 

Definition at line 251 of file rtai_lxrt.h.

#define TBX_URGENT_TIMED   163
 

Definition at line 253 of file rtai_lxrt.h.

#define TBX_URGENT_UNTIL   162
 

Definition at line 252 of file rtai_lxrt.h.

#define TYPED_MBX_INIT   75
 

Definition at line 152 of file rtai_lxrt.h.

Referenced by lxrt_typed_mbx_init().

#define TYPED_SEM_INIT   39
 

Definition at line 114 of file rtai_lxrt.h.

Referenced by lxrt_typed_sem_init().

#define USP_SIGHDL   1014
 

Definition at line 380 of file rtai_lxrt.h.

Referenced by rt_usp_signal_handler().

#define WAIT_PERIOD   4
 

Definition at line 77 of file rtai_lxrt.h.

Referenced by rt_task_wait_period().

#define WAITING_RETURN   185
 

Definition at line 283 of file rtai_lxrt.h.

Referenced by rt_waiting_return().

#define WAKEUP_SLEEPING   34
 

Definition at line 107 of file rtai_lxrt.h.

Referenced by rt_task_masked_unblock().

#define YIELD   0
 

Definition at line 73 of file rtai_lxrt.h.

Referenced by pthread_yield_rt(), and rt_task_yield().


Function Documentation

RTIME count2nano RTIME  count  )  [inline]
 

Definition at line 974 of file rtai_lxrt.h.

References BIDX, count, COUNT2NANO, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, and SIZARG.

Here is the call graph for this function:

RTIME count2nano_cpuid RTIME  count,
unsigned int  cpuid
[inline]
 

Definition at line 1090 of file rtai_lxrt.h.

References BIDX, count, COUNT2NANO_CPUID, cpuid, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, and SIZARG.

Here is the call graph for this function:

RT_TASK* ftask_init unsigned long  name,
int  priority
[inline]
 

Definition at line 1316 of file rtai_lxrt.h.

References BIDX, LOW, LXRT_TASK_INIT, RT_TASK, rtai_lxrt(), SIZARG, and rtai_lxrt_t::v.

Here is the call graph for this function:

void linux_syscall_server_fun RT_TASK task  )  [static]
 

Definition at line 684 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LINUX_SERVER_INIT, LOW, rt_receive_linux_syscall(), rt_return_linux_syscall(), RT_TASK, rtai_lxrt(), and task.

Referenced by rt_linux_syscall_server_create().

Here is the call graph for this function:

RTIME nano2count RTIME  nanos  )  [inline]
 

Definition at line 980 of file rtai_lxrt.h.

References BIDX, NANO2COUNT, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, and SIZARG.

Here is the call graph for this function:

RTIME nano2count_cpuid RTIME  nanos,
unsigned int  cpuid
[inline]
 

Definition at line 1096 of file rtai_lxrt.h.

References BIDX, cpuid, NANO2COUNT_CPUID, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, and SIZARG.

Here is the call graph for this function:

RT_TASK* rt_agent void   )  [inline]
 

Definition at line 1212 of file rtai_lxrt.h.

References BIDX, LOW, RT_BUDDY, RT_TASK, rtai_lxrt(), SIZARG, and rtai_lxrt_t::v.

Here is the call graph for this function:

void rt_allow_nonroot_hrt void   )  [inline]
 

Allows a non root user to use the Linux POSIX soft real time process management and memory lock functions, and allows it to do any input-output operation from user space.

Only the process itself can use this functions, it is not possible to impose the related transition from another process. Definition at line 1256 of file rtai_lxrt.h.

References BIDX, NONROOT_HRT, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

void rt_boom void   )  [inline]
 

Definition at line 1114 of file rtai_lxrt.h.

References BIDX, RT_BOOM, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

int rt_buddy_task_use_fpu RT_TASK task,
int  use_fpu_flag
[inline]
 

Definition at line 1024 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), SIZARG, task, and TASK_USE_FPU.

Here is the call graph for this function:

void rt_busy_sleep int  ns  )  [inline]
 

Definition at line 986 of file rtai_lxrt.h.

References BIDX, BUSY_SLEEP, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

int rt_change_prio RT_TASK task,
int  priority
[inline]
 

Definition at line 780 of file rtai_lxrt.h.

References BIDX, CHANGE_TASK_PRIO, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), SIZARG, and task.

Here is the call graph for this function:

int rt_clone void *  fun,
void *  args,
long  stack_size,
unsigned long  flags
[inline, static]
 

Definition at line 608 of file rtai_lxrt.h.

References flags.

Referenced by rt_request_signal().

int rt_drg_on_adr void *  adr  ) 
 

Deregister an object by its address.

rt_drg_on_adr deregisters the object identified by its adr.

Returns:
a positive number on success, 0 on failure.
Definition at line 1662 of file api.c.

References drg_on_adr().

Referenced by __task_delete(), handle_lxrt_request(), krtai_objects_release(), linux_process_termination(), rt_bits_delete_u(), rt_named_bits_delete(), and rt_named_task_delete().

Here is the call graph for this function:

int rt_drg_on_name unsigned long  name  ) 
 

Deregister an object by its name.

rt_drg_on_name deregisters the object identified by its name.

Returns:
a positive number on success, 0 on failure.
Definition at line 1649 of file api.c.

References drg_on_name().

Here is the call graph for this function:

RT_TASK* rt_force_task_soft int  pid  )  [inline]
 

Definition at line 1206 of file rtai_lxrt.h.

References BIDX, FORCE_TASK_SOFT, LOW, pid, RT_TASK, rtai_lxrt(), SIZARG, and rtai_lxrt_t::v.

Here is the call graph for this function:

void* rt_get_adr unsigned long  name  )  [inline]
 

Get an object address by its name.

rt_get_adr returns the address associated to name.

Returns:
the address associated to name on success, 0 on failure
Definition at line 571 of file rtai_lxrt.h.

RTIME rt_get_cpu_time_ns void   )  [inline]
 

Definition at line 1048 of file rtai_lxrt.h.

References BIDX, GET_CPU_TIME_NS, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, and SIZARG.

Referenced by RT_get_cpu_time_ns().

Here is the call graph for this function:

int rt_get_errno RT_TASK task  )  [inline]
 

Definition at line 1138 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_GET_ERRNO, RT_TASK, rtai_lxrt(), SIZARG, and task.

Here is the call graph for this function:

void rt_get_exectime RT_TASK task,
RTIME exectime
[inline]
 

Definition at line 1302 of file rtai_lxrt.h.

References BIDX, GET_EXECTIME, RT_TASK, rtai_lxrt(), RTIME, SIZARG, and task.

Here is the call graph for this function:

int rt_get_linux_signal RT_TASK task  )  [inline]
 

Definition at line 1132 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_GET_LINUX_SIGNAL, RT_TASK, rtai_lxrt(), SIZARG, and task.

Here is the call graph for this function:

unsigned long rt_get_name void *  adr  )  [inline]
 

Get an object name by its address.

rt_get_name returns the name pointed by the address adr.

Returns:
the identifier pointed by the address adr on success, 0 on failure.
Definition at line 585 of file rtai_lxrt.h.

RTIME rt_get_time void   )  [inline]
 

Definition at line 968 of file rtai_lxrt.h.

References BIDX, GET_TIME, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, and SIZARG.

Referenced by clock_gettime_rt(), main(), nanosleep_rt(), rt_nanosleep(), spv(), and user_srq().

Here is the call graph for this function:

RTIME rt_get_time_cpuid unsigned int  cpuid  )  [inline]
 

Definition at line 1102 of file rtai_lxrt.h.

References BIDX, cpuid, GET_TIME_CPUID, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, and SIZARG.

Here is the call graph for this function:

RTIME rt_get_time_ns void   )  [inline]
 

Definition at line 1042 of file rtai_lxrt.h.

References BIDX, GET_TIME_NS, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, and SIZARG.

Referenced by RT_get_time_ns().

Here is the call graph for this function:

RTIME rt_get_time_ns_cpuid unsigned int  cpuid  )  [inline]
 

Definition at line 1108 of file rtai_lxrt.h.

References BIDX, cpuid, GET_TIME_NS_CPUID, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, and SIZARG.

Here is the call graph for this function:

int rt_get_timer_cpu void   )  [inline]
 

Definition at line 1072 of file rtai_lxrt.h.

References BIDX, GET_TIMER_CPU, rtai_lxrt_t::i, LOW, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

unsigned long rt_get_usp_flags RT_TASK rt_task  )  [inline]
 

Definition at line 1182 of file rtai_lxrt.h.

References BIDX, GET_USP_FLAGS, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), SIZARG, and task.

Here is the call graph for this function:

unsigned long rt_get_usp_flags_mask RT_TASK rt_task  )  [inline]
 

Definition at line 1188 of file rtai_lxrt.h.

References BIDX, GET_USP_FLG_MSK, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), SIZARG, and task.

Here is the call graph for this function:

void rt_gettimeorig RTIME  time_orig[]  )  [inline]
 

Definition at line 1310 of file rtai_lxrt.h.

References BIDX, GET_TIMEORIG, rtai_lxrt(), RTIME, and SIZARG.

Here is the call graph for this function:

int rt_hard_timer_tick void   )  [inline]
 

Definition at line 1036 of file rtai_lxrt.h.

References BIDX, HARD_TIMER_COUNT, rtai_lxrt_t::i, LOW, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

int rt_hard_timer_tick_cpuid int  cpuid  )  [inline]
 

Definition at line 1084 of file rtai_lxrt.h.

References BIDX, cpuid, HARD_TIMER_COUNT_CPUID, rtai_lxrt_t::i, LOW, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

int rt_irq_signal unsigned  irq  )  [inline]
 

Definition at line 889 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, IRQ_SIGNAL, LOW, rtai_lxrt(), and SIZARG.

Referenced by usp_request_rtc().

Here is the call graph for this function:

int rt_irq_wait unsigned  irq  )  [inline]
 

Definition at line 865 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, IRQ_WAIT, LOW, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

int rt_irq_wait_if unsigned  irq  )  [inline]
 

Definition at line 871 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, IRQ_WAIT_IF, LOW, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

int rt_irq_wait_timed unsigned  irq,
RTIME  delay
[inline]
 

Definition at line 883 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, IRQ_WAIT_TIMED, LOW, rtai_lxrt(), RTIME, and SIZARG.

Here is the call graph for this function:

int rt_irq_wait_until unsigned  irq,
RTIME  time
[inline]
 

Definition at line 877 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, IRQ_WAIT_UNTIL, LOW, rtai_lxrt(), RTIME, and SIZARG.

Here is the call graph for this function:

int rt_is_hard_real_time RT_TASK rt_task  )  [inline]
 

Definition at line 1262 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, IS_HARD, LOW, RT_TASK, rtai_lxrt(), SIZARG, and task.

Referenced by MAKE_SOFT(), and pthread_yield_rt().

Here is the call graph for this function:

int rt_is_hard_timer_running void   )  [inline]
 

Definition at line 938 of file rtai_lxrt.h.

References BIDX, HARD_TIMER_RUNNING, rtai_lxrt_t::i, LOW, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

int rt_linux_syscall_server_create RT_TASK task  )  [inline]
 

Definition at line 699 of file rtai_lxrt.h.

References BIDX, linux_syscall_server_fun(), LOW, RT_BUDDY, RT_TASK, rt_thread_create(), rtai_lxrt(), SUSPEND, task, and rtai_lxrt_t::v.

Here is the call graph for this function:

int rt_linux_use_fpu int  use_fpu_flag  )  [inline]
 

Definition at line 1030 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LINUX_USE_FPU, LOW, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

void rt_make_hard_real_time void   )  [inline]
 

Give a Linux process, or pthread, hard real time execution capabilities allowing full kernel preemption.

rt_make_hard_real_time makes the soft Linux POSIX real time process, from which it is called, a hard real time LXRT process. It is important to remark that this function must be used only with soft Linux POSIX processes having their memory locked in memory. See Linux man pages.

Only the process itself can use this functions, it is not possible to impose the related transition from another process.

Note that processes made hard real time should avoid making any Linux System call that can lead to a task switch as Linux cannot run anymore processes that are made hard real time. To interact with Linux you should couple the process that was made hard real time with a Linux buddy server, either standard or POSIX soft real time. To communicate and synchronize with the buddy you can use the wealth of available RTAI, and its schedulers, services.

After all it is pure nonsense to use a non hard real time Operating System, i.e. Linux, from within hard real time processes. Definition at line 1242 of file rtai_lxrt.h.

References BIDX, MAKE_HARD_RT, rtai_lxrt(), and SIZARG.

Referenced by main(), signal_suprt_fun(), and support_tasklet().

Here is the call graph for this function:

void rt_make_soft_real_time void   )  [inline]
 

Return a hard real time Linux process, or pthread to the standard Linux behavior.

rt_make_soft_real_time returns to soft Linux POSIX real time a process, from which it is called, that was made hard real time by a call to rt_make_hard_real_time.

Only the process itself can use this functions, it is not possible to impose the related transition from another process. Definition at line 798 of file rtai_lxrt.h.

References BIDX, MAKE_SOFT_RT, rtai_lxrt(), and SIZARG.

Referenced by main(), MAKE_SOFT(), rt_task_delete(), signal_suprt_fun(), and support_tasklet().

Here is the call graph for this function:

void rt_mmgr_stats void   )  [inline]
 

Definition at line 1120 of file rtai_lxrt.h.

References BIDX, RT_MMGR_STATS, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

void rt_pend_linux_irq unsigned  irq  )  [inline]
 

Definition at line 859 of file rtai_lxrt.h.

References BIDX, PEND_LINUX_IRQ, rtai_lxrt(), and SIZARG.

Referenced by calibrate(), rt_request_timer(), and rt_timer_tick_ext().

Here is the call graph for this function:

int rt_printk const char *  format,
  ...
[inline]
 

Definition at line 1163 of file rtai_lxrt.h.

References BIDX, PRINTK, rtai_lxrt(), and SIZARG.

Referenced by __rtai_shm_exit(), __rtai_wd_init(), handle_lxrt_request(), krtai_objects_release(), linux_process_termination(), lxrt_handle_trap(), lxrt_intercept_syscall_epilogue(), lxrt_intercept_syscall_prologue(), reset_rt_fun_entries(), rtai_domain_entry(), set_rt_fun_entries(), and set_rtext().

Here is the call graph for this function:

RT_TASK* rt_receive_linux_syscall RT_TASK task,
struct pt_regs *  regs
[inline, static]
 

Definition at line 671 of file rtai_lxrt.h.

References BIDX, LOW, RECEIVE_LINUX_SYSCALL, RT_TASK, rtai_lxrt(), SIZARG, task, and rtai_lxrt_t::v.

Here is the call graph for this function:

int rt_register unsigned long  name,
void *  adr,
int  type,
struct task_struct *  t
 

Register an object.

rt_register registers the object to be identified with name, which is pointed by adr.

Returns:
a positive number on success, 0 on failure.
Definition at line 1632 of file api.c.

References get_adr(), and registr().

Referenced by __rtai_shm_init(), __task_init(), _rt_named_msgq_init(), _rt_named_rwl_init(), _rt_named_spl_init(), _rt_shm_alloc(), _rt_typed_named_mbx_init(), _rt_typed_named_sem_init(), handle_lxrt_request(), rt_bits_init_u(), rt_named_bits_init(), rt_named_halloc_typed(), rt_named_task_init(), and rt_named_task_init_cpuid().

Here is the call graph for this function:

int rt_release_irq_task unsigned  irq  )  [inline]
 

Definition at line 902 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RELEASE_IRQ_TASK, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

void rt_release_rtc void   )  [inline]
 

Definition at line 962 of file rtai_lxrt.h.

References BIDX, RELEASE_RTC, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

int rt_request_irq_task unsigned  irq,
void *  handler,
int  type,
int  affine2task
[inline]
 

Definition at line 895 of file rtai_lxrt.h.

References BIDX, handler, rtai_lxrt_t::i, LOW, REQUEST_IRQ_TASK, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

void rt_request_rtc int  rtc_freq,
void *  handler
[inline]
 

Definition at line 956 of file rtai_lxrt.h.

References BIDX, handler, REQUEST_RTC, rtai_lxrt(), and SIZARG.

Referenced by usp_request_rtc().

Here is the call graph for this function:

void rt_return_linux_syscall RT_TASK task,
unsigned long  retval
[inline, static]
 

Definition at line 677 of file rtai_lxrt.h.

References BIDX, RETURN_LINUX_SYSCALL, RT_TASK, rtai_lxrt(), SIZARG, and task.

Here is the call graph for this function:

void rt_sched_lock void   )  [inline]
 

Definition at line 847 of file rtai_lxrt.h.

References BIDX, rtai_lxrt(), SCHED_LOCK, and SIZARG.

Here is the call graph for this function:

void rt_sched_unlock void   )  [inline]
 

Definition at line 853 of file rtai_lxrt.h.

References BIDX, rtai_lxrt(), SCHED_UNLOCK, and SIZARG.

Here is the call graph for this function:

int rt_set_linux_signal_handler RT_TASK task,
void(*  handler)(int sig)
[inline]
 

Definition at line 1144 of file rtai_lxrt.h.

References BIDX, handler, rtai_lxrt_t::i, LOW, RT_SET_LINUX_SIGNAL_HANDLER, RT_TASK, rtai_lxrt(), SIZARG, and task.

Here is the call graph for this function:

void rt_set_oneshot_mode void   )  [inline]
 

Definition at line 998 of file rtai_lxrt.h.

References BIDX, rtai_lxrt(), SET_ONESHOT_MODE, and SIZARG.

Referenced by __rtai_wd_init(), main(), start_rt_apic_timers(), start_rt_timer(), and user_srq().

Here is the call graph for this function:

int rt_set_period RT_TASK rt_task,
RTIME  new_period
[inline]
 

Definition at line 1282 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), RTIME, SET_PERIOD, and SIZARG.

Here is the call graph for this function:

void rt_set_periodic_mode void   )  [inline]
 

Definition at line 992 of file rtai_lxrt.h.

References BIDX, rtai_lxrt(), SET_PERIODIC_MODE, and SIZARG.

Referenced by __rtai_wd_init().

Here is the call graph for this function:

int rt_set_resume_time RT_TASK rt_task,
RTIME  new_resume_time
[inline]
 

Definition at line 1276 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), RTIME, SET_RESUME_TIME, and SIZARG.

Here is the call graph for this function:

void rt_set_runnable_on_cpuid RT_TASK task,
unsigned int  cpuid
[inline]
 

Definition at line 1066 of file rtai_lxrt.h.

References BIDX, cpuid, RT_TASK, rtai_lxrt(), SET_RUNNABLE_ON_CPUID, SIZARG, and task.

Here is the call graph for this function:

void rt_set_runnable_on_cpus RT_TASK task,
unsigned long  cpu_mask
[inline]
 

Definition at line 1060 of file rtai_lxrt.h.

References BIDX, RT_TASK, rtai_lxrt(), SET_RUNNABLE_ON_CPUS, SIZARG, and task.

Here is the call graph for this function:

void rt_set_sched_policy RT_TASK task,
int  policy,
int  rr_quantum_ns
[inline]
 

Definition at line 774 of file rtai_lxrt.h.

References BIDX, RT_TASK, rtai_lxrt(), SET_SCHED_POLICY, SIZARG, and task.

Here is the call graph for this function:

void rt_set_usp_flags RT_TASK rt_task,
unsigned long  flags
[inline]
 

Definition at line 1194 of file rtai_lxrt.h.

References BIDX, flags, RT_TASK, rtai_lxrt(), SET_USP_FLAGS, SIZARG, and task.

Here is the call graph for this function:

void rt_set_usp_flags_mask unsigned long  flags_mask  )  [inline]
 

Definition at line 1200 of file rtai_lxrt.h.

References BIDX, rtai_lxrt(), SET_USP_FLG_MSK, and SIZARG.

Here is the call graph for this function:

int rt_sleep RTIME  delay  )  [inline]
 

Definition at line 926 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, rtai_lxrt(), RTIME, SIZARG, and SLEEP.

Here is the call graph for this function:

int rt_sleep_until RTIME  time  )  [inline]
 

Definition at line 932 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, rtai_lxrt(), RTIME, SIZARG, and SLEEP_UNTIL.

Here is the call graph for this function:

void rt_spv_RMS int  cpuid  )  [inline]
 

Definition at line 1288 of file rtai_lxrt.h.

References BIDX, cpuid, rtai_lxrt(), SIZARG, and SPV_RMS.

Here is the call graph for this function:

void rt_stomp void   )  [inline]
 

Definition at line 1126 of file rtai_lxrt.h.

References BIDX, RT_STOMP, rtai_lxrt(), and SIZARG.

Here is the call graph for this function:

int rt_task_delete RT_TASK task  )  [inline]
 

Definition at line 804 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, LXRT_TASK_DELETE, rt_make_soft_real_time(), RT_TASK, rtai_lxrt(), SIZARG, and task.

Here is the call graph for this function:

RT_TASK* rt_task_init unsigned long  name,
int  priority,
int  stack_size,
int  max_msg_size
[inline]
 

Create a new real time task in user space.

rt_task_init provides a real time buddy, also called proxy, task to the Linux process that wants to access RTAI scheduler services. It needs no task function as none is used, but it does need to setup a task structure and initialize it appropriately as the provided services are carried out as if the Linux process has become an RTAI task. Because of that it requires less arguments and returns the pointer to the task that is to be used in related calls.

Parameters:
name is a unique identifier that is possibly used by easing referencing the buddy RTAItask, and thus its peer Linux process.
priority is the priority of the buddys priority.
stack_size is just what is implied by such a name and refers to the stack size used by the buddy.
max_msg_size is a hint for the size of the most lengthy message than is likely to be exchanged.
stack_size and max_msg_size can be zero, in which case the default internal values are used. The assignment of a different value should be required only if you want to use task signal functions. In such a case note that these signal functions are intended to catch asyncrounous events in kernel space and, as such, must be programmed into a companion module and interfaced to their parent Linux process through the available services.

Keep an eye on the default stack (512) and message (256) sizes as they seem to be acceptable, but this API has not been used extensively with complex interrupt service routines. Since the latter are served on the stack of any task being interrupted, and more than one can pile up on the same stack, it can be possible that a larger stack is required. In such a case either recompile lxrt.c with macros STACK_SIZE and MSG_SIZE set appropriately, or explicitly assign larger values at your buddy tasks inits. Note that while the stack size can be critical the message size will not. In fact the module reassigns it, appropriately sized, whenever it is needed. The cost is a kmalloc with GFP_KERNEL that can block, but within the Linux environment. Note also that max_msg_size is for a buffer to be used to copy whatever message, either mailbox or inter task, from user to kernel space, as messages are not necessarily copied immediately, and has nothing to do directly with what you are doing.

It is important to remark that the returned task pointers cannot be used directly, they are for kernel space data, but just passed as arguments when needed.

Returns:
On success a pointer to the task structure initialized in kernel space.

On failure a 0 value is returned if it was not possible to setup the buddy task or something using the same name was found.

Definition at line 769 of file rtai_lxrt.h.

References RT_TASK, and rt_task_init_schmod().

Here is the call graph for this function:

RT_TASK* rt_task_init_schmod unsigned long  name,
int  priority,
int  stack_size,
int  max_msg_size,
int  policy,
int  cpus_allowed
[inline]
 

Definition at line 591 of file rtai_lxrt.h.

References BIDX, LOW, LXRT_TASK_INIT, RT_TASK, rtai_iopl, rtai_lxrt(), SIZARG, and rtai_lxrt_t::v.

Referenced by main(), rt_task_init(), and rt_thread_init().

Here is the call graph for this function:

int rt_task_make_periodic RT_TASK task,
RTIME  start_time,
RTIME  period
[inline]
 

Definition at line 908 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, MAKE_PERIODIC, RT_TASK, rtai_lxrt(), RTIME, SIZARG, and task.

Here is the call graph for this function:

int rt_task_make_periodic_relative_ns RT_TASK task,
RTIME  start_delay,
RTIME  period
[inline]
 

Definition at line 914 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, MAKE_PERIODIC_NS, RT_TASK, rtai_lxrt(), RTIME, SIZARG, and task.

Here is the call graph for this function:

int rt_task_masked_unblock RT_TASK task,
unsigned long  mask
[inline]
 

Definition at line 1294 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), SIZARG, task, and WAKEUP_SLEEPING.

Here is the call graph for this function:

int rt_task_resume RT_TASK task  )  [inline]
 

Definition at line 841 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RESUME, RT_TASK, rtai_lxrt(), SIZARG, and task.

Here is the call graph for this function:

void rt_task_set_resume_end_times RTIME  resume,
RTIME  end
[inline]
 

Definition at line 1270 of file rtai_lxrt.h.

References BIDX, rtai_lxrt(), RTIME, SET_RESUME_END, and SIZARG.

Here is the call graph for this function:

int rt_task_signal_handler RT_TASK task,
void(*  handler)(void)
[inline]
 

Definition at line 1004 of file rtai_lxrt.h.

References BIDX, handler, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), SIGNAL_HANDLER, SIZARG, and task.

Here is the call graph for this function:

int rt_task_suspend RT_TASK task  )  [inline]
 

Definition at line 817 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), SIZARG, SUSPEND, and task.

Referenced by thread_fun().

Here is the call graph for this function:

int rt_task_suspend_if RT_TASK task  )  [inline]
 

Definition at line 823 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), SIZARG, SUSPEND_IF, and task.

Here is the call graph for this function:

int rt_task_suspend_timed RT_TASK task,
RTIME  delay
[inline]
 

Definition at line 835 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), RTIME, SIZARG, SUSPEND_TIMED, and task.

Here is the call graph for this function:

int rt_task_suspend_until RT_TASK task,
RTIME  time
[inline]
 

Definition at line 829 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, RT_TASK, rtai_lxrt(), RTIME, SIZARG, SUSPEND_UNTIL, and task.

Here is the call graph for this function:

int rt_task_use_fpu RT_TASK task,
int  use_fpu_flag
[inline]
 

Definition at line 1010 of file rtai_lxrt.h.

References BIDX, HRT_USE_FPU, rtai_lxrt_t::i, LOW, RT_BUDDY, RT_TASK, rtai_lxrt(), SIZARG, task, TASK_USE_FPU, and rtai_lxrt_t::v.

Here is the call graph for this function:

int rt_task_wait_period void   )  [inline]
 

Definition at line 920 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, rtai_lxrt(), SIZARG, and WAIT_PERIOD.

Referenced by main(), spv(), and watchdog().

Here is the call graph for this function:

int rt_task_yield void   )  [inline]
 

Definition at line 811 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::i, LOW, rtai_lxrt(), SIZARG, and YIELD.

Here is the call graph for this function:

int rt_thread_create void *  fun,
void *  args,
int  stack_size
[inline]
 

Definition at line 624 of file rtai_lxrt.h.

References RT_THREAD_STACK_MIN.

Referenced by rt_init_tasklet(), and rt_linux_syscall_server_create().

RT_TASK* rt_thread_init unsigned long  name,
int  priority,
int  max_msg_size,
int  policy,
int  cpus_allowed
[inline]
 

Definition at line 711 of file rtai_lxrt.h.

References RT_TASK, and rt_task_init_schmod().

Referenced by signal_suprt_fun(), and support_tasklet().

Here is the call graph for this function:

int rt_thread_join int  thread  )  [inline]
 

Definition at line 638 of file rtai_lxrt.h.

Referenced by rt_delete_tasklet().

int rt_usp_signal_handler void(*  handler)(void)  )  [inline]
 

Definition at line 1176 of file rtai_lxrt.h.

References BIDX, handler, rtai_lxrt_t::i, rtai_lxrt(), SIZARG, and USP_SIGHDL.

Here is the call graph for this function:

int rtai_print_to_screen const char *  format,
  ...
[inline]
 

Definition at line 1150 of file rtai_lxrt.h.

References BIDX, PRINT_TO_SCREEN, rtai_lxrt(), and SIZARG.

Referenced by dump_malloc_stats(), and handle_lxrt_request().

Here is the call graph for this function:

RTIME start_ftimer long  period,
long  ftick_freq
[inline]
 

Definition at line 1322 of file rtai_lxrt.h.

References BIDX, handler, REQUEST_RTC, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, SET_ONESHOT_MODE, SET_PERIODIC_MODE, SIZARG, and START_TIMER.

Here is the call graph for this function:

void start_rt_apic_timers struct apic_timer_setup_data *  setup_mode,
unsigned int  rcvr_jiffies_cpuid
[inline]
 

Definition at line 1078 of file rtai_lxrt.h.

References BIDX, rtai_lxrt(), SIZARG, and START_RT_APIC_TIMERS.

Here is the call graph for this function:

RTIME start_rt_timer int  period  )  [inline]
 

Definition at line 944 of file rtai_lxrt.h.

References BIDX, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, SIZARG, and START_TIMER.

Here is the call graph for this function:

RTIME stop_ftimer void   )  [inline]
 

Definition at line 1334 of file rtai_lxrt.h.

References BIDX, RELEASE_RTC, rtai_lxrt_t::rt, rtai_lxrt(), RTIME, SIZARG, and STOP_TIMER.

Here is the call graph for this function:

void stop_rt_timer void   )  [inline]
 

Definition at line 950 of file rtai_lxrt.h.

References BIDX, rtai_lxrt(), SIZARG, and STOP_TIMER.

Referenced by __rtai_wd_exit(), lxrt_killall(), main(), rt_set_oneshot_mode(), rt_set_periodic_mode(), and user_srq().

Here is the call graph for this function:


Generated on Thu Nov 20 11:58:12 2008 for RTAI API by doxygen 1.3.8