struct uio_info — UIO device capabilities
struct uio_info { struct uio_device * uio_dev; const char * name; const char * version; struct uio_mem mem[MAX_UIO_MAPS]; struct uio_port port[MAX_UIO_PORT_REGIONS]; long irq; unsigned long irq_flags; void * priv; irqreturn_t (* handler) (int irq, struct uio_info *dev_info); int (* mmap) (struct uio_info *info, struct vm_area_struct *vma); int (* open) (struct uio_info *info, struct inode *inode); int (* release) (struct uio_info *info, struct inode *inode); int (* irqcontrol) (struct uio_info *info, s32 irq_on); };
the UIO device this info belongs to
device name
device driver version
list of mappable memory regions, size==0 for end of list
list of port regions, size==0 for end of list
interrupt number or UIO_IRQ_CUSTOM
flags for request_irq
optional private data
the device's irq handler
mmap operation for this uio device
open operation for this uio device
release operation for this uio device
disable/enable irqs when 0/1 is written to /dev/uioX