Linux Audio

Check our new training course

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