2008-02-02 12:51:35 +03:00
menuconfig UIO
2006-12-07 12:58:29 +03:00
tristate "Userspace I/O drivers"
help
Enable this to allow the userspace driver core code to be
built. This code allows userspace programs easy access to
kernel interrupts and memory locations, allowing some drivers
to be written in userspace. Note that a small kernel driver
is also required for interrupt handling to work properly.
If you don't know what to do here, say N.
2008-02-02 12:51:35 +03:00
if UIO
UIO: Hilscher CIF card driver
this is a patch that adds support for Hilscher CIF DeviceNet and
Profibus cards. I tested it on a Kontron CPX board, and Thomas reviewed
it.
You can find the user space part here:
http://www.osadl.org/projects/downloads/UIO/user/cif-0.1.0.tar.gz
Notes: cif_api.c is the main file you want to look at. It contains the
functions to open, close, mmap and so on. cif_dps.c adds functions
specific to Profibus cards, and cif_dn.c contains functions for
DeviceNet cards. cif.c is a universal playground, it's just a small
test program. The user space part of this UIO driver is still work in
progress, and not everything is tested yet. At the moment, the thread in
cif_api.c contains some code that artificially makes the card generate
interrupts, this was added for testing and will be removed later. But
the driver already contains all the functions needed for useful
operation, so it gives a good idea of how such a thing looks like.
For comparison, here's what you get from the manufacturer
(www.hilscher.com) when you ask for a Linux 2.6 driver:
http://www.tglx.de/private/hjk/cif-orig-2.6.tar.bz2
WARNING: Don't look at the code for too long, you might become sick :-)
Signed-off-by: Hans-Jürgen Koch <hjk@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-03-02 15:03:12 +03:00
config UIO_CIF
tristate "generic Hilscher CIF Card driver"
2008-05-31 13:37:27 +04:00
depends on PCI
UIO: Hilscher CIF card driver
this is a patch that adds support for Hilscher CIF DeviceNet and
Profibus cards. I tested it on a Kontron CPX board, and Thomas reviewed
it.
You can find the user space part here:
http://www.osadl.org/projects/downloads/UIO/user/cif-0.1.0.tar.gz
Notes: cif_api.c is the main file you want to look at. It contains the
functions to open, close, mmap and so on. cif_dps.c adds functions
specific to Profibus cards, and cif_dn.c contains functions for
DeviceNet cards. cif.c is a universal playground, it's just a small
test program. The user space part of this UIO driver is still work in
progress, and not everything is tested yet. At the moment, the thread in
cif_api.c contains some code that artificially makes the card generate
interrupts, this was added for testing and will be removed later. But
the driver already contains all the functions needed for useful
operation, so it gives a good idea of how such a thing looks like.
For comparison, here's what you get from the manufacturer
(www.hilscher.com) when you ask for a Linux 2.6 driver:
http://www.tglx.de/private/hjk/cif-orig-2.6.tar.bz2
WARNING: Don't look at the code for too long, you might become sick :-)
Signed-off-by: Hans-Jürgen Koch <hjk@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-03-02 15:03:12 +03:00
help
Driver for Hilscher CIF DeviceNet and Profibus cards. This
2010-10-18 13:03:14 +04:00
driver requires a userspace component called cif that handles
all of the heavy lifting and can be found at:
<http://www.osadl.org/projects/downloads/UIO/user/>
UIO: Hilscher CIF card driver
this is a patch that adds support for Hilscher CIF DeviceNet and
Profibus cards. I tested it on a Kontron CPX board, and Thomas reviewed
it.
You can find the user space part here:
http://www.osadl.org/projects/downloads/UIO/user/cif-0.1.0.tar.gz
Notes: cif_api.c is the main file you want to look at. It contains the
functions to open, close, mmap and so on. cif_dps.c adds functions
specific to Profibus cards, and cif_dn.c contains functions for
DeviceNet cards. cif.c is a universal playground, it's just a small
test program. The user space part of this UIO driver is still work in
progress, and not everything is tested yet. At the moment, the thread in
cif_api.c contains some code that artificially makes the card generate
interrupts, this was added for testing and will be removed later. But
the driver already contains all the functions needed for useful
operation, so it gives a good idea of how such a thing looks like.
For comparison, here's what you get from the manufacturer
(www.hilscher.com) when you ask for a Linux 2.6 driver:
http://www.tglx.de/private/hjk/cif-orig-2.6.tar.bz2
WARNING: Don't look at the code for too long, you might become sick :-)
Signed-off-by: Hans-Jürgen Koch <hjk@linutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-03-02 15:03:12 +03:00
To compile this driver as a module, choose M here: the module
will be called uio_cif.
2008-05-31 13:37:27 +04:00
config UIO_PDRV
tristate "Userspace I/O platform driver"
help
Generic platform driver for Userspace I/O devices.
If you don't know what to do here, say N.
2008-07-11 13:55:27 +04:00
config UIO_PDRV_GENIRQ
tristate "Userspace I/O platform driver with generic IRQ handling"
help
Platform driver for Userspace I/O devices, including generic
interrupt handling code. Shared interrupts are not supported.
This kernel driver requires that the matching userspace driver
handles interrupts in a special way. Userspace is responsible
for acknowledging the hardware device if needed, and re-enabling
interrupts in the interrupt controller using the write() syscall.
If you don't know what to do here, say N.
2012-09-25 10:09:11 +04:00
config UIO_DMEM_GENIRQ
tristate "Userspace platform driver with generic irq and dynamic memory"
help
Platform driver for Userspace I/O devices, including generic
interrupt handling code. Shared interrupts are not supported.
Memory regions can be specified with the same platform device
resources as the UIO_PDRV drivers, but dynamic regions can also
be specified.
The number and size of these regions is static,
but the memory allocation is not performed until
the associated device file is opened. The
memory is freed once the uio device is closed.
If you don't know what to do here, say N.
2009-01-28 00:00:04 +03:00
config UIO_AEC
tristate "AEC video timestamp device"
depends on PCI
help
UIO driver for the Adrienne Electronics Corporation PCI time
code device.
This device differs from other UIO devices since it uses I/O
ports instead of memory mapped I/O. In order to make it
possible for UIO to work with this device a utility, uioport,
can be used to read and write the ports:
git clone git://ifup.org/philips/uioport.git
If you compile this as a module, it will be called uio_aec.
2008-09-18 13:57:15 +04:00
config UIO_SERCOS3
tristate "Automata Sercos III PCI card driver"
2010-02-11 17:38:53 +03:00
depends on PCI
2008-09-18 13:57:15 +04:00
help
Userspace I/O interface for the Sercos III PCI card from
Automata GmbH. The userspace part of this driver will be
available for download from the Automata GmbH web site.
Automata GmbH: http://www.automataweb.com
Sercos III interface: http://www.sercos.com
If you compile this as a module, it will be called uio_sercos3.
2009-07-20 11:29:34 +04:00
config UIO_PCI_GENERIC
tristate "Generic driver for PCI 2.3 and PCI Express cards"
depends on PCI
help
Generic driver that you can bind, dynamically, to any
PCI 2.3 compliant and PCI Express card. It is useful,
primarily, for virtualization scenarios.
If you compile this as a module, it will be called uio_pci_generic.
2010-02-09 22:13:49 +03:00
config UIO_NETX
tristate "Hilscher NetX Card driver"
depends on PCI
help
Driver for Hilscher NetX based fieldbus cards (cifX, comX).
This driver requires a userspace component that comes with the card
or is available from Hilscher (http://www.hilscher.com).
To compile this driver as a module, choose M here; the module
will be called uio_netx.
2011-03-05 02:00:17 +03:00
config UIO_PRUSS
tristate "Texas Instruments PRUSS driver"
depends on ARCH_DAVINCI_DA850
2012-10-05 21:04:40 +04:00
select GENERIC_ALLOCATOR
2011-03-05 02:00:17 +03:00
help
PRUSS driver for OMAPL138/DA850/AM18XX devices
PRUSS driver requires user space components, examples and user space
driver is available from below SVN repo - you may use anonymous login
https://gforge.ti.com/gf/project/pru_sw/
More info on API is available at below wiki
http://processors.wiki.ti.com/index.php/PRU_Linux_Application_Loader
To compile this driver as a module, choose M here: the module
will be called uio_pruss.
2008-02-02 12:51:35 +03:00
endif