Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

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