• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 menuconfig UIO
2 	tristate "Userspace I/O drivers"
3 	depends on MMU
4 	help
5 	  Enable this to allow the userspace driver core code to be
6 	  built.  This code allows userspace programs easy access to
7 	  kernel interrupts and memory locations, allowing some drivers
8 	  to be written in userspace.  Note that a small kernel driver
9 	  is also required for interrupt handling to work properly.
10 
11 	  If you don't know what to do here, say N.
12 
13 if UIO
14 
15 config UIO_CIF
16 	tristate "generic Hilscher CIF Card driver"
17 	depends on PCI
18 	help
19 	  Driver for Hilscher CIF DeviceNet and Profibus cards.  This
20   	  driver requires a userspace component called cif that handles
21 	  all of the heavy lifting and can be found at:
22 	        <http://www.osadl.org/projects/downloads/UIO/user/>
23 
24 	  To compile this driver as a module, choose M here: the module
25 	  will be called uio_cif.
26 
27 config UIO_PDRV_GENIRQ
28 	tristate "Userspace I/O platform driver with generic IRQ handling"
29 	help
30 	  Platform driver for Userspace I/O devices, including generic
31 	  interrupt handling code. Shared interrupts are not supported.
32 
33 	  This kernel driver requires that the matching userspace driver
34 	  handles interrupts in a special way. Userspace is responsible
35 	  for acknowledging the hardware device if needed, and re-enabling
36 	  interrupts in the interrupt controller using the write() syscall.
37 
38 	  If you don't know what to do here, say N.
39 
40 config UIO_DMEM_GENIRQ
41 	tristate "Userspace platform driver with generic irq and dynamic memory"
42 	depends on HAS_DMA
43 	help
44 	  Platform driver for Userspace I/O devices, including generic
45 	  interrupt handling code. Shared interrupts are not supported.
46 
47 	  Memory regions can be specified with the same platform device
48 	  resources as the UIO_PDRV drivers, but dynamic regions can also
49 	  be specified.
50 	  The number and size of these regions is static,
51 	  but the memory allocation is not performed until
52 	  the associated device file is opened. The
53 	  memory is freed once the uio device is closed.
54 
55 	  If you don't know what to do here, say N.
56 
57 config UIO_AEC
58 	tristate "AEC video timestamp device"
59 	depends on PCI
60 	help
61 
62 	  UIO driver for the Adrienne Electronics Corporation PCI time
63 	  code device.
64 
65 	  This device differs from other UIO devices since it uses I/O
66 	  ports instead of memory mapped I/O. In order to make it
67 	  possible for UIO to work with this device a utility, uioport,
68 	  can be used to read and write the ports:
69 
70 	    git clone git://ifup.org/philips/uioport.git
71 
72 	  If you compile this as a module, it will be called uio_aec.
73 
74 config UIO_SERCOS3
75 	tristate "Automata Sercos III PCI card driver"
76 	depends on PCI
77 	help
78 	  Userspace I/O interface for the Sercos III PCI card from
79 	  Automata GmbH. The userspace part of this driver will be
80 	  available for download from the Automata GmbH web site.
81 
82 	  Automata GmbH:        http://www.automataweb.com
83 	  Sercos III interface: http://www.sercos.com
84 
85 	  If you compile this as a module, it will be called uio_sercos3.
86 
87 config UIO_PCI_GENERIC
88 	tristate "Generic driver for PCI 2.3 and PCI Express cards"
89 	depends on PCI
90 	help
91 	  Generic driver that you can bind, dynamically, to any
92 	  PCI 2.3 compliant and PCI Express card. It is useful,
93 	  primarily, for virtualization scenarios.
94 	  If you compile this as a module, it will be called uio_pci_generic.
95 
96 config UIO_NETX
97 	tristate "Hilscher NetX Card driver"
98 	depends on PCI
99 	help
100 	  Driver for Hilscher NetX based fieldbus cards (cifX, comX).
101 	  This driver requires a userspace component that comes with the card
102 	  or is available from Hilscher (http://www.hilscher.com).
103 
104 	  To compile this driver as a module, choose M here; the module
105 	  will be called uio_netx.
106 
107 config UIO_FSL_ELBC_GPCM
108 	tristate "eLBC/GPCM driver"
109 	depends on FSL_LBC
110 	help
111 	  Generic driver for accessing a peripheral connected to an eLBC port
112 	  that is running in GPCM mode. GPCM is an interface for simple lower
113 	  performance memories and memory-mapped devices. For devices using
114 	  FCM or UPM eLBC modes, other device-specific drivers are available.
115 
116 config UIO_FSL_ELBC_GPCM_NETX5152
117 	bool "eLBC/GPCM netX 51/52 support"
118 	depends on UIO_FSL_ELBC_GPCM
119 	help
120 	  This will add support for netX 51/52 devices connected via eLBC/GPCM.
121 	  In particular, it implements interrupt handling. This can be used
122 	  together with the userspace netX stack from Hilscher.
123 
124 	  Information about this hardware can be found at:
125 	  http://www.hilscher.com/netx
126 
127 config UIO_PRUSS
128 	tristate "Texas Instruments PRUSS driver"
129 	select GENERIC_ALLOCATOR
130 	depends on HAS_IOMEM && HAS_DMA
131 	help
132 	  PRUSS driver for OMAPL138/DA850/AM18XX devices
133 	  PRUSS driver requires user space components, examples and user space
134 	  driver is available from below SVN repo - you may use anonymous login
135 
136 	  https://gforge.ti.com/gf/project/pru_sw/
137 
138 	  More info on API is available at below wiki
139 
140 	  http://processors.wiki.ti.com/index.php/PRU_Linux_Application_Loader
141 
142 	  To compile this driver as a module, choose M here: the module
143 	  will be called uio_pruss.
144 
145 config UIO_MF624
146 	tristate "Humusoft MF624 DAQ PCI card driver"
147 	depends on PCI
148 	help
149 	  Userspace I/O interface for the Humusoft MF624 PCI card.
150 	  A sample userspace application using this driver is available
151 	  (among other MF624 related information and software components)
152 	  for download in a git repository:
153 
154 	    git clone git://rtime.felk.cvut.cz/mf6xx.git
155 
156 	  If you compile this as a module, it will be called uio_mf624.
157 
158 config UIO_HV_GENERIC
159 	tristate "Generic driver for Hyper-V VMBus"
160 	depends on HYPERV
161 	help
162 	  Generic driver that you can bind, dynamically, to any
163 	  Hyper-V VMBus device. It is useful to provide direct access
164 	  to network and storage devices from userspace.
165 
166 	  If you compile this as a module, it will be called uio_hv_generic.
167 endif
168