Kconfig 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. #
  2. # FPGA framework configuration
  3. #
  4. menuconfig FPGA
  5. tristate "FPGA Configuration Framework"
  6. help
  7. Say Y here if you want support for configuring FPGAs from the
  8. kernel. The FPGA framework adds a FPGA manager class and FPGA
  9. manager drivers.
  10. if FPGA
  11. config FPGA_MGR_SOCFPGA
  12. tristate "Altera SOCFPGA FPGA Manager"
  13. depends on ARCH_SOCFPGA || COMPILE_TEST
  14. help
  15. FPGA manager driver support for Altera SOCFPGA.
  16. config FPGA_MGR_SOCFPGA_A10
  17. tristate "Altera SoCFPGA Arria10"
  18. depends on ARCH_SOCFPGA || COMPILE_TEST
  19. select REGMAP_MMIO
  20. help
  21. FPGA manager driver support for Altera Arria10 SoCFPGA.
  22. config ALTERA_PR_IP_CORE
  23. tristate "Altera Partial Reconfiguration IP Core"
  24. help
  25. Core driver support for Altera Partial Reconfiguration IP component
  26. config ALTERA_PR_IP_CORE_PLAT
  27. tristate "Platform support of Altera Partial Reconfiguration IP Core"
  28. depends on ALTERA_PR_IP_CORE && OF && HAS_IOMEM
  29. help
  30. Platform driver support for Altera Partial Reconfiguration IP
  31. component
  32. config FPGA_MGR_ALTERA_PS_SPI
  33. tristate "Altera FPGA Passive Serial over SPI"
  34. depends on SPI
  35. select BITREVERSE
  36. help
  37. FPGA manager driver support for Altera Arria/Cyclone/Stratix
  38. using the passive serial interface over SPI.
  39. config FPGA_MGR_ALTERA_CVP
  40. tristate "Altera Arria-V/Cyclone-V/Stratix-V CvP FPGA Manager"
  41. depends on PCI
  42. help
  43. FPGA manager driver support for Arria-V, Cyclone-V, Stratix-V
  44. and Arria 10 Altera FPGAs using the CvP interface over PCIe.
  45. config FPGA_MGR_ZYNQ_FPGA
  46. tristate "Xilinx Zynq FPGA"
  47. depends on ARCH_ZYNQ || COMPILE_TEST
  48. help
  49. FPGA manager driver support for Xilinx Zynq FPGAs.
  50. config FPGA_MGR_XILINX_SPI
  51. tristate "Xilinx Configuration over Slave Serial (SPI)"
  52. depends on SPI
  53. help
  54. FPGA manager driver support for Xilinx FPGA configuration
  55. over slave serial interface.
  56. config FPGA_MGR_ICE40_SPI
  57. tristate "Lattice iCE40 SPI"
  58. depends on OF && SPI
  59. help
  60. FPGA manager driver support for Lattice iCE40 FPGAs over SPI.
  61. config FPGA_MGR_MACHXO2_SPI
  62. tristate "Lattice MachXO2 SPI"
  63. depends on SPI
  64. help
  65. FPGA manager driver support for Lattice MachXO2 configuration
  66. over slave SPI interface.
  67. config FPGA_MGR_TS73XX
  68. tristate "Technologic Systems TS-73xx SBC FPGA Manager"
  69. depends on ARCH_EP93XX && MACH_TS72XX
  70. help
  71. FPGA manager driver support for the Altera Cyclone II FPGA
  72. present on the TS-73xx SBC boards.
  73. config FPGA_BRIDGE
  74. tristate "FPGA Bridge Framework"
  75. help
  76. Say Y here if you want to support bridges connected between host
  77. processors and FPGAs or between FPGAs.
  78. config SOCFPGA_FPGA_BRIDGE
  79. tristate "Altera SoCFPGA FPGA Bridges"
  80. depends on ARCH_SOCFPGA && FPGA_BRIDGE
  81. help
  82. Say Y to enable drivers for FPGA bridges for Altera SOCFPGA
  83. devices.
  84. config ALTERA_FREEZE_BRIDGE
  85. tristate "Altera FPGA Freeze Bridge"
  86. depends on ARCH_SOCFPGA && FPGA_BRIDGE
  87. help
  88. Say Y to enable drivers for Altera FPGA Freeze bridges. A
  89. freeze bridge is a bridge that exists in the FPGA fabric to
  90. isolate one region of the FPGA from the busses while that
  91. region is being reprogrammed.
  92. config XILINX_PR_DECOUPLER
  93. tristate "Xilinx LogiCORE PR Decoupler"
  94. depends on FPGA_BRIDGE
  95. depends on HAS_IOMEM
  96. help
  97. Say Y to enable drivers for Xilinx LogiCORE PR Decoupler.
  98. The PR Decoupler exists in the FPGA fabric to isolate one
  99. region of the FPGA from the busses while that region is
  100. being reprogrammed during partial reconfig.
  101. config FPGA_REGION
  102. tristate "FPGA Region"
  103. depends on FPGA_BRIDGE
  104. help
  105. FPGA Region common code. A FPGA Region controls a FPGA Manager
  106. and the FPGA Bridges associated with either a reconfigurable
  107. region of an FPGA or a whole FPGA.
  108. config OF_FPGA_REGION
  109. tristate "FPGA Region Device Tree Overlay Support"
  110. depends on OF && FPGA_REGION
  111. help
  112. Support for loading FPGA images by applying a Device Tree
  113. overlay.
  114. config FPGA_DFL
  115. tristate "FPGA Device Feature List (DFL) support"
  116. select FPGA_BRIDGE
  117. select FPGA_REGION
  118. help
  119. Device Feature List (DFL) defines a feature list structure that
  120. creates a linked list of feature headers within the MMIO space
  121. to provide an extensible way of adding features for FPGA.
  122. Driver can walk through the feature headers to enumerate feature
  123. devices (e.g. FPGA Management Engine, Port and Accelerator
  124. Function Unit) and their private features for target FPGA devices.
  125. Select this option to enable common support for Field-Programmable
  126. Gate Array (FPGA) solutions which implement Device Feature List.
  127. It provides enumeration APIs and feature device infrastructure.
  128. config FPGA_DFL_FME
  129. tristate "FPGA DFL FME Driver"
  130. depends on FPGA_DFL
  131. help
  132. The FPGA Management Engine (FME) is a feature device implemented
  133. under Device Feature List (DFL) framework. Select this option to
  134. enable the platform device driver for FME which implements all
  135. FPGA platform level management features. There shall be one FME
  136. per DFL based FPGA device.
  137. config FPGA_DFL_FME_MGR
  138. tristate "FPGA DFL FME Manager Driver"
  139. depends on FPGA_DFL_FME && HAS_IOMEM
  140. help
  141. Say Y to enable FPGA Manager driver for FPGA Management Engine.
  142. config FPGA_DFL_FME_BRIDGE
  143. tristate "FPGA DFL FME Bridge Driver"
  144. depends on FPGA_DFL_FME && HAS_IOMEM
  145. help
  146. Say Y to enable FPGA Bridge driver for FPGA Management Engine.
  147. config FPGA_DFL_FME_REGION
  148. tristate "FPGA DFL FME Region Driver"
  149. depends on FPGA_DFL_FME && HAS_IOMEM
  150. help
  151. Say Y to enable FPGA Region driver for FPGA Management Engine.
  152. config FPGA_DFL_AFU
  153. tristate "FPGA DFL AFU Driver"
  154. depends on FPGA_DFL
  155. help
  156. This is the driver for FPGA Accelerated Function Unit (AFU) which
  157. implements AFU and Port management features. A User AFU connects
  158. to the FPGA infrastructure via a Port. There may be more than one
  159. Port/AFU per DFL based FPGA device.
  160. config FPGA_DFL_PCI
  161. tristate "FPGA DFL PCIe Device Driver"
  162. depends on PCI && FPGA_DFL
  163. help
  164. Select this option to enable PCIe driver for PCIe-based
  165. Field-Programmable Gate Array (FPGA) solutions which implement
  166. the Device Feature List (DFL). This driver provides interfaces
  167. for userspace applications to configure, enumerate, open and access
  168. FPGA accelerators on the FPGA DFL devices, enables system level
  169. management functions such as FPGA partial reconfiguration, power
  170. management and virtualization with DFL framework and DFL feature
  171. device drivers.
  172. To compile this as a module, choose M here.
  173. endif # FPGA