21 #ifndef _COBALT_RTDM_ANALOGY_TRANSFER_H 22 #define _COBALT_RTDM_ANALOGY_TRANSFER_H 24 #include <rtdm/analogy/buffer.h> 27 #define A4L_IRQ_DISABLED 0 30 #define A4L_IRQ_UNUSED (unsigned int)((unsigned short)(~0)) 31 #define A4L_IDX_UNUSED (unsigned int)(~0) 44 unsigned int default_bufsize;
48 struct a4l_irq_descriptor irq_desc;
53 int a4l_rdproc_transfer(
struct seq_file *p,
void *data);
57 void a4l_presetup_transfer(
struct a4l_device_context * cxt);
58 int a4l_setup_transfer(
struct a4l_device_context * cxt);
59 int a4l_precleanup_transfer(
struct a4l_device_context * cxt);
60 int a4l_cleanup_transfer(
struct a4l_device_context * cxt);
61 int a4l_reserve_transfer(
struct a4l_device_context * cxt,
int idx_subd);
62 int a4l_init_transfer(
struct a4l_device_context * cxt,
struct a4l_cmd_desc * cmd);
63 int a4l_cancel_transfer(
struct a4l_device_context * cxt,
int idx_subd);
64 int a4l_cancel_transfers(
struct a4l_device_context * cxt);
66 ssize_t a4l_put(
struct a4l_device_context * cxt,
void *buf,
size_t nbytes);
67 ssize_t a4l_get(
struct a4l_device_context * cxt,
void *buf,
size_t nbytes);
71 a4l_irq_hdlr_t handler,
72 unsigned long flags,
void *cookie);
73 int a4l_free_irq(
struct a4l_device *dev,
unsigned int irq);
76 int a4l_ioctl_cancel(
struct a4l_device_context * cxt,
void *arg);
int a4l_request_irq(struct a4l_device *dev, unsigned int irq, a4l_irq_hdlr_t handler, unsigned long flags, void *cookie)
Register an interrupt handler for a specific device.
Definition: transfer.c:151
Structure describing the asynchronous instruction.
Definition: analogy.h:289
unsigned int a4l_get_irq(struct a4l_device *dev)
Get the interrupt number in use for a specific device.
Definition: transfer.c:189
Structure describing the subdevice.
Definition: subdevice.h:40
int a4l_free_irq(struct a4l_device *dev, unsigned int irq)
Release an interrupt handler for a specific device.
Definition: transfer.c:171