mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-18 09:44:18 +08:00
bc4c4f45ac
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>
30 lines
889 B
Plaintext
30 lines
889 B
Plaintext
menu "Userspace I/O"
|
|
depends on !S390
|
|
|
|
config UIO
|
|
tristate "Userspace I/O drivers"
|
|
default n
|
|
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.
|
|
|
|
config UIO_CIF
|
|
tristate "generic Hilscher CIF Card driver"
|
|
depends on UIO && PCI
|
|
default n
|
|
help
|
|
Driver for Hilscher CIF DeviceNet and Profibus cards. This
|
|
driver requires a userspace component that handles all of the
|
|
heavy lifting and can be found at:
|
|
http://www.osadl.org/projects/downloads/UIO/user/cif-*
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called uio_cif.
|
|
|
|
endmenu
|