Denis Cheng | ae210f1 | 2008-02-02 17:51:35 +0800 | [diff] [blame] | 1 | menuconfig UIO |
Hans J. Koch | beafc54 | 2006-12-07 10:58:29 +0100 | [diff] [blame] | 2 | tristate "Userspace I/O drivers" |
Chen Gang | 3cc1f95 | 2013-08-30 13:01:45 +0800 | [diff] [blame] | 3 | depends on MMU |
Hans J. Koch | beafc54 | 2006-12-07 10:58:29 +0100 | [diff] [blame] | 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 | |
Denis Cheng | ae210f1 | 2008-02-02 17:51:35 +0800 | [diff] [blame] | 13 | if UIO |
| 14 | |
Hans-Jürgen Koch | bc4c4f4 | 2007-03-02 13:03:12 +0100 | [diff] [blame] | 15 | config UIO_CIF |
| 16 | tristate "generic Hilscher CIF Card driver" |
Uwe Kleine-König | 934da47 | 2008-05-31 11:37:27 +0200 | [diff] [blame] | 17 | depends on PCI |
Hans-Jürgen Koch | bc4c4f4 | 2007-03-02 13:03:12 +0100 | [diff] [blame] | 18 | help |
| 19 | Driver for Hilscher CIF DeviceNet and Profibus cards. This |
Justin P. Mattock | 631dd1a | 2010-10-18 11:03:14 +0200 | [diff] [blame] | 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/> |
Hans-Jürgen Koch | bc4c4f4 | 2007-03-02 13:03:12 +0100 | [diff] [blame] | 23 | |
| 24 | To compile this driver as a module, choose M here: the module |
| 25 | will be called uio_cif. |
| 26 | |
Magnus Damm | c767db0 | 2008-07-11 18:55:27 +0900 | [diff] [blame] | 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 | |
Damian Hobson-Garcia | 0a0c3b5 | 2012-09-25 15:09:11 +0900 | [diff] [blame] | 40 | config UIO_DMEM_GENIRQ |
| 41 | tristate "Userspace platform driver with generic irq and dynamic memory" |
Geert Uytterhoeven | 89fb9e7 | 2013-05-09 23:04:51 +0200 | [diff] [blame] | 42 | depends on HAS_DMA |
Damian Hobson-Garcia | 0a0c3b5 | 2012-09-25 15:09:11 +0900 | [diff] [blame] | 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 | |
Brandon Philips | 1bafeb3 | 2009-01-27 13:00:04 -0800 | [diff] [blame] | 57 | config UIO_AEC |
| 58 | tristate "AEC video timestamp device" |
| 59 | depends on PCI |
Brandon Philips | 1bafeb3 | 2009-01-27 13:00:04 -0800 | [diff] [blame] | 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 | |
John Ogness | a6030fcc | 2008-09-18 11:57:15 +0200 | [diff] [blame] | 74 | config UIO_SERCOS3 |
| 75 | tristate "Automata Sercos III PCI card driver" |
John Ogness | 0a965eb | 2010-02-11 15:38:53 +0100 | [diff] [blame] | 76 | depends on PCI |
John Ogness | a6030fcc | 2008-09-18 11:57:15 +0200 | [diff] [blame] | 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 | |
Michael S. Tsirkin | ccb86a6 | 2009-07-20 10:29:34 +0300 | [diff] [blame] | 87 | config UIO_PCI_GENERIC |
| 88 | tristate "Generic driver for PCI 2.3 and PCI Express cards" |
| 89 | depends on PCI |
Michael S. Tsirkin | ccb86a6 | 2009-07-20 10:29:34 +0300 | [diff] [blame] | 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 | |
Hans J. Koch | 8f314cf | 2010-02-09 20:13:49 +0100 | [diff] [blame] | 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 | |
John Ogness | fbc4a8a | 2014-12-09 17:43:10 +0100 | [diff] [blame] | 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 | |
Pratheesh Gangadhar | f1a304e | 2011-03-05 04:30:17 +0530 | [diff] [blame] | 127 | config UIO_PRUSS |
| 128 | tristate "Texas Instruments PRUSS driver" |
Matt Porter | 2eb2478 | 2012-10-05 13:04:40 -0400 | [diff] [blame] | 129 | select GENERIC_ALLOCATOR |
Geert Uytterhoeven | 686079c | 2015-06-29 09:12:38 +0200 | [diff] [blame] | 130 | depends on HAS_IOMEM && HAS_DMA |
Pratheesh Gangadhar | f1a304e | 2011-03-05 04:30:17 +0530 | [diff] [blame] | 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 | |
Rostislav Lisovy | 06849fa | 2013-08-30 14:58:02 +0200 | [diff] [blame] | 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 | |
Stephen Hemminger | 95096f2 | 2016-12-03 12:34:40 -0800 | [diff] [blame] | 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. |
Denis Cheng | ae210f1 | 2008-02-02 17:51:35 +0800 | [diff] [blame] | 167 | endif |