base/ipc/tbx/tbx.c File Reference

Include dependency graph for tbx.c:

Go to the source code of this file.

Defines

#define TBX_RET(msg_size, retval)   (CONFIG_RTAI_USE_NEWERR ? retval : msg_size)

Functions

 MODULE_LICENSE ("GPL")
static void enq_msg (RT_MSGQ *q, RT_MSGH *msg)
RTAI_SYSCALL_MODE int rt_msgq_init (RT_MSGQ *mq, int nmsg, int msg_size)
RTAI_SYSCALL_MODE int rt_msgq_delete (RT_MSGQ *mq)
RTAI_SYSCALL_MODE RT_MSGQ_rt_named_msgq_init (unsigned long msgq_name, int nmsg, int msg_size)
RTAI_SYSCALL_MODE int rt_named_msgq_delete (RT_MSGQ *msgq)
static int _send (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, int space)
RTAI_SYSCALL_MODE int _rt_msg_send (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, int space)
RTAI_SYSCALL_MODE int _rt_msg_send_if (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, int space)
RTAI_SYSCALL_MODE int _rt_msg_send_until (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, RTIME until, int space)
RTAI_SYSCALL_MODE int _rt_msg_send_timed (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, RTIME delay, int space)
static int _receive (RT_MSGQ *mq, void *msg, int msg_size, int *msgpri, int space)
RTAI_SYSCALL_MODE int _rt_msg_receive (RT_MSGQ *mq, void *msg, int msg_size, int *msgpri, int space)
RTAI_SYSCALL_MODE int _rt_msg_receive_if (RT_MSGQ *mq, void *msg, int msg_size, int *msgpri, int space)
RTAI_SYSCALL_MODE int _rt_msg_receive_until (RT_MSGQ *mq, void *msg, int msg_size, int *msgpri, RTIME until, int space)
RTAI_SYSCALL_MODE int _rt_msg_receive_timed (RT_MSGQ *mq, void *msg, int msg_size, int *msgpri, RTIME delay, int space)
RTAI_SYSCALL_MODE int _rt_msg_evdrp (RT_MSGQ *mq, void *msg, int msg_size, int *msgpri, int space)
static int _broadcast (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, int broadcast, int space)
RTAI_SYSCALL_MODE int _rt_msg_broadcast (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, int space)
RTAI_SYSCALL_MODE int _rt_msg_broadcast_if (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, int space)
RTAI_SYSCALL_MODE int _rt_msg_broadcast_until (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, RTIME until, int space)
RTAI_SYSCALL_MODE int _rt_msg_broadcast_timed (RT_MSGQ *mq, void *msg, int msg_size, int msgpri, RTIME delay, int space)
int set_rt_fun_entries (struct rt_native_fun_entry *entry)
void reset_rt_fun_entries (struct rt_native_fun_entry *entry)
int __rtai_msg_queue_init (void)
void __rtai_msg_queue_exit (void)
 module_init (__rtai_msg_queue_init)
 module_exit (__rtai_msg_queue_exit)
 EXPORT_SYMBOL (rt_msgq_init)
 EXPORT_SYMBOL (rt_msgq_delete)
 EXPORT_SYMBOL (_rt_named_msgq_init)
 EXPORT_SYMBOL (rt_named_msgq_delete)
 EXPORT_SYMBOL (_rt_msg_send)
 EXPORT_SYMBOL (_rt_msg_send_if)
 EXPORT_SYMBOL (_rt_msg_send_until)
 EXPORT_SYMBOL (_rt_msg_send_timed)
 EXPORT_SYMBOL (_rt_msg_receive)
 EXPORT_SYMBOL (_rt_msg_receive_if)
 EXPORT_SYMBOL (_rt_msg_receive_until)
 EXPORT_SYMBOL (_rt_msg_receive_timed)
 EXPORT_SYMBOL (_rt_msg_broadcast)
 EXPORT_SYMBOL (_rt_msg_broadcast_if)
 EXPORT_SYMBOL (_rt_msg_broadcast_until)
 EXPORT_SYMBOL (_rt_msg_broadcast_timed)
 EXPORT_SYMBOL (_rt_msg_evdrp)

Variables

rt_native_fun_entry rt_msg_queue_entries []


Define Documentation

#define TBX_RET ( msg_size,
retval   )     (CONFIG_RTAI_USE_NEWERR ? retval : msg_size)

Definition at line 148 of file tbx.c.

Referenced by _rt_msg_broadcast(), _rt_msg_broadcast_until(), _rt_msg_receive(), _rt_msg_receive_until(), _rt_msg_send(), and _rt_msg_send_until().


Function Documentation

void __rtai_msg_queue_exit ( void   ) 

Definition at line 426 of file tbx.c.

References printk(), reset_rt_fun_entries(), and rt_msg_queue_entries.

Here is the call graph for this function:

int __rtai_msg_queue_init ( void   ) 

Definition at line 420 of file tbx.c.

References printk(), rt_msg_queue_entries, and set_rt_fun_entries().

Here is the call graph for this function:

static int _broadcast ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
int  broadcast,
int  space 
) [static]

Definition at line 302 of file tbx.c.

References CNT_SEM, enq_msg(), flags, PRIO_Q, rt_malloc(), rt_sem_signal(), rt_sem_wait_barrier(), rt_spin_lock_irqsave(), rt_spin_unlock_irqrestore, and rt_typed_sem_init().

Referenced by _rt_msg_broadcast(), _rt_msg_broadcast_if(), and _rt_msg_broadcast_until().

Here is the call graph for this function:

static int _receive ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int *  msgpri,
int  space 
) [static]

Definition at line 195 of file tbx.c.

References flags, rt_free(), rt_sem_signal(), rt_sem_wait_barrier(), rt_spin_lock_irqsave(), and rt_spin_unlock_irqrestore.

Referenced by _rt_msg_receive(), _rt_msg_receive_if(), and _rt_msg_receive_until().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_broadcast ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
int  space 
)

Definition at line 339 of file tbx.c.

References _broadcast(), rt_sem_signal(), rt_sem_wait(), RTE_LOWERR, and TBX_RET.

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_broadcast_if ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
int  space 
)

Definition at line 357 of file tbx.c.

References _broadcast(), rt_sem_signal(), and rt_sem_wait_if().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_broadcast_timed ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
RTIME  delay,
int  space 
)

Definition at line 391 of file tbx.c.

References _rt_msg_broadcast_until().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_broadcast_until ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
RTIME  until,
int  space 
)

Definition at line 373 of file tbx.c.

References _broadcast(), rt_sem_signal(), rt_sem_wait_until(), RTE_LOWERR, and TBX_RET.

Referenced by _rt_msg_broadcast_timed().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_evdrp ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int *  msgpri,
int  space 
)

Definition at line 281 of file tbx.c.

RTAI_SYSCALL_MODE int _rt_msg_receive ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int *  msgpri,
int  space 
)

Definition at line 238 of file tbx.c.

References _receive(), rt_sem_signal(), rt_sem_wait(), RTE_LOWERR, and TBX_RET.

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_receive_if ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int *  msgpri,
int  space 
)

Definition at line 251 of file tbx.c.

References _receive(), rt_sem_signal(), and rt_sem_wait_if().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_receive_timed ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int *  msgpri,
RTIME  delay,
int  space 
)

Definition at line 276 of file tbx.c.

References _rt_msg_receive_until().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_receive_until ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int *  msgpri,
RTIME  until,
int  space 
)

Definition at line 263 of file tbx.c.

References _receive(), rt_sem_signal(), rt_sem_wait_until(), RTE_LOWERR, and TBX_RET.

Referenced by _rt_msg_receive_timed().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_send ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
int  space 
)

Definition at line 151 of file tbx.c.

References _send(), rt_sem_signal(), rt_sem_wait(), RTE_LOWERR, and TBX_RET.

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_send_if ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
int  space 
)

Definition at line 165 of file tbx.c.

References _send(), rt_sem_signal(), and rt_sem_wait_if().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_send_timed ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
RTIME  delay,
int  space 
)

Definition at line 190 of file tbx.c.

References _rt_msg_send_until().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int _rt_msg_send_until ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
RTIME  until,
int  space 
)

Definition at line 177 of file tbx.c.

References _send(), rt_sem_signal(), rt_sem_wait_until(), RTE_LOWERR, and TBX_RET.

Referenced by _rt_msg_send_timed().

Here is the call graph for this function:

RTAI_SYSCALL_MODE RT_MSGQ* _rt_named_msgq_init ( unsigned long  msgq_name,
int  nmsg,
int  msg_size 
)

Definition at line 81 of file tbx.c.

References IS_MBX, rt_free(), rt_get_adr_cnt(), rt_malloc(), rt_msgq_delete(), rt_msgq_init(), and rt_register().

Here is the call graph for this function:

static int _send ( RT_MSGQ mq,
void *  msg,
int  msg_size,
int  msgpri,
int  space 
) [static]

Definition at line 113 of file tbx.c.

References enq_msg(), flags, rt_malloc(), rt_sem_signal(), rt_spin_lock_irqsave(), and rt_spin_unlock_irqrestore.

Referenced by _rt_msg_send(), _rt_msg_send_if(), and _rt_msg_send_until().

Here is the call graph for this function:

static void enq_msg ( RT_MSGQ q,
RT_MSGH *  msg 
) [inline, static]

Definition at line 32 of file tbx.c.

Referenced by _broadcast(), and _send().

EXPORT_SYMBOL ( _rt_msg_evdrp   ) 

EXPORT_SYMBOL ( _rt_msg_broadcast_timed   ) 

EXPORT_SYMBOL ( _rt_msg_broadcast_until   ) 

EXPORT_SYMBOL ( _rt_msg_broadcast_if   ) 

EXPORT_SYMBOL ( _rt_msg_broadcast   ) 

EXPORT_SYMBOL ( _rt_msg_receive_timed   ) 

EXPORT_SYMBOL ( _rt_msg_receive_until   ) 

EXPORT_SYMBOL ( _rt_msg_receive_if   ) 

EXPORT_SYMBOL ( _rt_msg_receive   ) 

EXPORT_SYMBOL ( _rt_msg_send_timed   ) 

EXPORT_SYMBOL ( _rt_msg_send_until   ) 

EXPORT_SYMBOL ( _rt_msg_send_if   ) 

EXPORT_SYMBOL ( _rt_msg_send   ) 

EXPORT_SYMBOL ( rt_named_msgq_delete   ) 

EXPORT_SYMBOL ( _rt_named_msgq_init   ) 

EXPORT_SYMBOL ( rt_msgq_delete   ) 

EXPORT_SYMBOL ( rt_msgq_init   ) 

module_exit ( __rtai_msg_queue_exit   ) 

module_init ( __rtai_msg_queue_init   ) 

MODULE_LICENSE ( "GPL"   ) 

RTAI_SYSCALL_MODE int rt_msgq_delete ( RT_MSGQ mq  ) 

Definition at line 72 of file tbx.c.

References rt_free(), and rt_sem_delete().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int rt_msgq_init ( RT_MSGQ mq,
int  nmsg,
int  msg_size 
)

Definition at line 46 of file tbx.c.

References CNT_SEM, RES_SEM, rt_malloc(), and rt_typed_sem_init().

Here is the call graph for this function:

RTAI_SYSCALL_MODE int rt_named_msgq_delete ( RT_MSGQ msgq  ) 

Definition at line 99 of file tbx.c.

References rt_drg_on_adr_cnt(), rt_free(), and rt_msgq_delete().

Here is the call graph for this function:


Variable Documentation

struct rt_native_fun_entry rt_msg_queue_entries[]

Initial value:

Definition at line 396 of file tbx.c.

Referenced by __rtai_msg_queue_exit(), and __rtai_msg_queue_init().


Generated on Tue Feb 2 17:47:44 2010 for RTAI API by  doxygen 1.4.7