Xenomai API  2.5.6.1
include/analogy/driver.h
Go to the documentation of this file.
00001 
00023 #ifndef __ANALOGY_DRIVER__
00024 #define __ANALOGY_DRIVER__
00025 
00026 #ifdef __KERNEL__
00027 
00028 #include <linux/list.h>
00029 
00030 struct a4l_link_desc;
00031 struct a4l_device;
00032 
00037 /* Analogy driver descriptor */
00038 struct a4l_driver {
00039 
00040         /* List stuff */
00041         struct list_head list;
00044         /* Visible description stuff */
00045         struct module *owner;
00047         unsigned int flags;
00049         char *board_name;
00051         int privdata_size;
00054         /* Init/destroy procedures */
00055         int (*attach) (struct a4l_device *, struct a4l_link_desc *);
00057         int (*detach) (struct a4l_device *);
00060 };
00061 typedef struct a4l_driver a4l_drv_t;
00062 
00063 #ifndef DOXYGEN_CPP
00064 
00065 /* Driver list related functions */
00066 
00067 int a4l_register_drv(a4l_drv_t * drv);
00068 int a4l_unregister_drv(a4l_drv_t * drv);
00069 int a4l_lct_drv(char *pin, a4l_drv_t ** pio);
00070 #ifdef CONFIG_PROC_FS
00071 int a4l_rdproc_drvs(char *page,
00072                     char **start,
00073                     off_t off, int count, int *eof, void *data);
00074 #endif /* CONFIG_PROC_FS */
00075 
00076 #endif /* !DOXYGEN_CPP */
00077 
00078 #endif /* __KERNEL__ */
00079 
00080 #endif /* __ANALOGY_DRIVER__ */
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines