Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

irmod.h File Reference

#include <linux/skbuff.h>
#include <linux/miscdevice.h>
#include <net/irda/irqueue.h>

Include dependency graph for irmod.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define IRMGR_IOC_MAGIC   'm'
#define IRMGR_IOCTNPC   _IO(IRMGR_IOC_MAGIC, 1)
#define IRMGR_IOC_MAXNR   1

Typedefs

typedef void(* TODO_CALLBACK )(void *self, __u32 param)

Enumerations

enum  IRMGR_EVENT {
  EVENT_DEVICE_DISCOVERED = 0, EVENT_REQUEST_MODULE, EVENT_IRLAN_START, EVENT_IRLAN_STOP,
  EVENT_IRLPT_START, EVENT_IRLPT_STOP, EVENT_IROBEX_START, EVENT_IROBEX_STOP,
  EVENT_IRDA_STOP, EVENT_NEED_PROCESS_CONTEXT
}

Functions

int irmod_init_module (void)
void irmod_cleanup_module (void)
static int irda_lock (int *lock)
int irda_unlock (int *lock)
void irda_notify_init (notify_t *notify)
void irda_execute_as_process (void *self, TODO_CALLBACK callback, __u32 param)
void irmanager_notify (struct irmanager_event *event)
void irda_proc_modcount (struct inode *, int)
void irda_mod_inc_use_count (void)
void irda_mod_dec_use_count (void)


Define Documentation

#define IRMGR_IOC_MAGIC   'm'
 

Definition at line 33 of file irmod.h.

#define IRMGR_IOC_MAXNR   1
 

Definition at line 35 of file irmod.h.

#define IRMGR_IOCTNPC   _IO(IRMGR_IOC_MAGIC, 1)
 

Definition at line 34 of file irmod.h.

Referenced by irda_ioctl().


Typedef Documentation

typedef void(* TODO_CALLBACK)(void *self, __u32 param)
 

Definition at line 65 of file irmod.h.


Enumeration Type Documentation

enum IRMGR_EVENT
 

Enumeration values:
EVENT_DEVICE_DISCOVERED 
EVENT_REQUEST_MODULE 
EVENT_IRLAN_START 
EVENT_IRLAN_STOP 
EVENT_IRLPT_START 
EVENT_IRLPT_STOP 
EVENT_IROBEX_START 
EVENT_IROBEX_STOP 
EVENT_IRDA_STOP 
EVENT_NEED_PROCESS_CONTEXT 

Definition at line 40 of file irmod.h.


Function Documentation

void irda_execute_as_process void *  self,
TODO_CALLBACK  callback,
__u32  param
 

Definition at line 326 of file irmod.c.

References enqueue_last(), irmanager_event::event, EVENT_NEED_PROCESS_CONTEXT, irda_cb::in_use, irmanager_notify(), kmalloc(), memset, NULL, and irda_cb::todo_queue.

Here is the call graph for this function:

static int irda_lock int *  lock  )  [inline, static]
 

Definition at line 110 of file irmod.h.

References FALSE, IRDA_DEBUG, test_and_set_bit, and TRUE.

Referenced by ircc_hard_xmit(), irlan_run_ctrl_tx_queue(), irport_hard_xmit(), irttp_run_rx_queue(), irttp_run_tx_queue(), irtty_hard_xmit(), nsc_ircc_hard_xmit_fir(), nsc_ircc_hard_xmit_sir(), toshoboe_hard_xmit(), and w83977af_hard_xmit().

void irda_mod_dec_use_count void   ) 
 

Definition at line 516 of file irmod.c.

References MOD_DEC_USE_COUNT.

Referenced by irda_destroy_socket().

void irda_mod_inc_use_count void   ) 
 

Definition at line 509 of file irmod.c.

References MOD_INC_USE_COUNT.

Referenced by irda_create().

void irda_notify_init notify_t notify  ) 
 

Definition at line 306 of file irmod.c.

References notify_t::connect_confirm, notify_t::connect_indication, notify_t::data_indication, notify_t::disconnect_indication, notify_t::flow_indication, notify_t::instance, notify_t::name, NOTIFY_MAX_NAME, NULL, strncpy, and notify_t::udata_indication.

Referenced by ircomm_open_lsap(), ircomm_open_tsap(), ircomm_tty_startup(), irda_open_tsap(), iriap_register_lsap(), irlan_client_open_ctrl_tsap(), irlan_open_data_tsap(), irlan_provider_open_ctrl_tsap(), irlmp_register_link(), and irttp_open_tsap().

void irda_proc_modcount struct inode *  ,
int 
 

Definition at line 529 of file irmod.c.

References MOD_DEC_USE_COUNT, and MOD_INC_USE_COUNT.

Referenced by irda_proc_register().

int irda_unlock int *  lock  )  [inline]
 

Definition at line 291 of file irmod.c.

References FALSE, printk, test_and_clear_bit, and TRUE.

void irmanager_notify struct irmanager_event event  ) 
 

Definition at line 362 of file irmod.c.

References enqueue_last(), irda_cb::event_queue, irda_cb::in_use, IRDA_DEBUG, kmalloc(), memset, NULL, and irda_cb::wait_queue.

Referenced by irda_execute_as_process().

Here is the call graph for this function:

void irmod_cleanup_module void   ) 
 

int irmod_init_module void   )