cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

Kconfig (6360B)


      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.
    168
    169config UIO_DFL
    170	tristate "Generic driver for DFL (Device Feature List) bus"
    171	depends on FPGA_DFL
    172	help
    173	  Generic DFL (Device Feature List) driver for Userspace I/O devices.
    174	  It is useful to provide direct access to DFL devices from userspace.
    175	  A sample userspace application using this driver is available for
    176	  download in a git repository:
    177
    178	    git clone https://github.com/OPAE/opae-sdk.git
    179
    180	  It could be found at:
    181
    182	    opae-sdk/tools/libopaeuio/
    183
    184	  If you compile this as a module, it will be called uio_dfl.
    185endif