linux/drivers/uio
Damian Hobson-Garcia 0a0c3b5a24 Add new uio device for dynamic memory allocation
This device extends the uio_pdrv_genirq driver to provide limited
dynamic memory allocation for UIO devices.  This allows UIO devices
to use CMA and IOMMU allocated memory regions. This driver is based
on the uio_pdrv_genirq driver and provides the same generic interrupt
handling capabilities.  Like uio_prdv_genirq,
a fixed number of memory regions, defined in the platform device's
.resources field are exported to userpace. This driver adds the ability
to export additional regions whose number and size are known at boot time,
but whose memory is not allocated until the uio device file is opened for
the first time.  When the device file is closed, the allocated memory block
is freed.  Physical (DMA) addresses for the dynamic regions are provided to
the userspace via /sys/class/uio/uioX/maps/mapY/addr in the same way as
static addresses are when the uio device file is open, when no processes
are holding the device file open, the address returned to userspace is
DMA_ERROR_CODE.

Signed-off-by: Damian Hobson-Garcia <dhobsong@igel.co.jp>
Signed-off-by: "Hans J. Koch" <hjk@hansjkoch.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-10-24 15:39:08 -07:00
..
Kconfig Add new uio device for dynamic memory allocation 2012-10-24 15:39:08 -07:00
Makefile Add new uio device for dynamic memory allocation 2012-10-24 15:39:08 -07:00
uio_aec.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
uio_cif.c uio: Change mail address of Hans J. Koch 2010-11-10 16:57:11 -08:00
uio_dmem_genirq.c Add new uio device for dynamic memory allocation 2012-10-24 15:39:08 -07:00
uio_netx.c uio_netx: Add support for netPLC cards 2011-04-19 16:56:02 -07:00
uio_pci_generic.c uio: Convert uio_generic_pci to new intx masking API 2012-01-06 12:10:35 -08:00
uio_pdrv_genirq.c uio_pdrv_genirq: get irq through platform resource if not set otherwise 2012-05-15 08:44:58 -07:00
uio_pdrv.c uio: convert drivers/uio/* to use module_platform_driver() 2011-11-26 20:12:48 -08:00
uio_pruss.c uio: convert drivers/uio/* to use module_platform_driver() 2011-11-26 20:12:48 -08:00
uio_sercos3.c uio: Remove IRQF_DISABLED from uio_sercos3.c 2010-08-05 13:53:33 -07:00
uio.c mm: kill vma flag VM_RESERVED and mm->reserved_vm counter 2012-10-09 16:22:19 +09:00