• Hans-Jürgen Koch's avatar
    UIO: Hilscher CIF card driver · bc4c4f45
    Hans-Jürgen Koch authored
    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: default avatarHans-Jürgen Koch <hjk@linutronix.de>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
    bc4c4f45
Kconfig 889 Bytes
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