Kconfig 8.4 KB
Newer Older
1
# SPDX-License-Identifier: GPL-2.0-only
A
Alan Tull 已提交
2 3 4 5
#
# FPGA framework configuration
#

6
menuconfig FPGA
A
Alan Tull 已提交
7 8 9
	tristate "FPGA Configuration Framework"
	help
	  Say Y here if you want support for configuring FPGAs from the
10
	  kernel.  The FPGA framework adds an FPGA manager class and FPGA
A
Alan Tull 已提交
11 12
	  manager drivers.

13 14
if FPGA

A
Alan Tull 已提交
15 16
config FPGA_MGR_SOCFPGA
	tristate "Altera SOCFPGA FPGA Manager"
17
	depends on ARCH_INTEL_SOCFPGA || COMPILE_TEST
18
	help
A
Alan Tull 已提交
19
	  FPGA manager driver support for Altera SOCFPGA.
20

A
Alan Tull 已提交
21 22
config FPGA_MGR_SOCFPGA_A10
	tristate "Altera SoCFPGA Arria10"
23
	depends on ARCH_INTEL_SOCFPGA || COMPILE_TEST
A
Alan Tull 已提交
24
	select REGMAP_MMIO
25
	help
A
Alan Tull 已提交
26
	  FPGA manager driver support for Altera Arria10 SoCFPGA.
27

A
Alan Tull 已提交
28
config ALTERA_PR_IP_CORE
29 30 31
	tristate "Altera Partial Reconfiguration IP Core"
	help
	  Core driver support for Altera Partial Reconfiguration IP component
32

A
Alan Tull 已提交
33 34 35
config ALTERA_PR_IP_CORE_PLAT
	tristate "Platform support of Altera Partial Reconfiguration IP Core"
	depends on ALTERA_PR_IP_CORE && OF && HAS_IOMEM
36
	help
A
Alan Tull 已提交
37 38
	  Platform driver support for Altera Partial Reconfiguration IP
	  component
39

40 41 42
config FPGA_MGR_ALTERA_PS_SPI
	tristate "Altera FPGA Passive Serial over SPI"
	depends on SPI
43
	select BITREVERSE
44 45 46 47
	help
	  FPGA manager driver support for Altera Arria/Cyclone/Stratix
	  using the passive serial interface over SPI.

A
Alan Tull 已提交
48
config FPGA_MGR_ALTERA_CVP
49
	tristate "Altera CvP FPGA Manager"
A
Alan Tull 已提交
50
	depends on PCI
51
	help
52 53
	  FPGA manager driver support for Arria-V, Cyclone-V, Stratix-V,
	  Arria 10 and Stratix10 Altera FPGAs using the CvP interface over PCIe.
54

A
Alan Tull 已提交
55 56 57
config FPGA_MGR_ZYNQ_FPGA
	tristate "Xilinx Zynq FPGA"
	depends on ARCH_ZYNQ || COMPILE_TEST
58
	help
A
Alan Tull 已提交
59
	  FPGA manager driver support for Xilinx Zynq FPGAs.
60

61 62
config FPGA_MGR_STRATIX10_SOC
	tristate "Intel Stratix10 SoC FPGA Manager"
63
	depends on (ARCH_INTEL_SOCFPGA && INTEL_STRATIX10_SERVICE)
64 65 66
	help
	  FPGA manager driver support for the Intel Stratix10 SoC.

67 68 69 70 71 72 73
config FPGA_MGR_XILINX_SPI
	tristate "Xilinx Configuration over Slave Serial (SPI)"
	depends on SPI
	help
	  FPGA manager driver support for Xilinx FPGA configuration
	  over slave serial interface.

A
Alan Tull 已提交
74 75 76
config FPGA_MGR_ICE40_SPI
	tristate "Lattice iCE40 SPI"
	depends on OF && SPI
77
	help
A
Alan Tull 已提交
78 79
	  FPGA manager driver support for Lattice iCE40 FPGAs over SPI.

80 81 82 83 84 85 86
config FPGA_MGR_MACHXO2_SPI
	tristate "Lattice MachXO2 SPI"
	depends on SPI
	help
	  FPGA manager driver support for Lattice MachXO2 configuration
	  over slave SPI interface.

A
Alan Tull 已提交
87 88 89 90 91 92
config FPGA_MGR_TS73XX
	tristate "Technologic Systems TS-73xx SBC FPGA Manager"
	depends on ARCH_EP93XX && MACH_TS72XX
	help
	  FPGA manager driver support for the Altera Cyclone II FPGA
	  present on the TS-73xx SBC boards.
93

A
Alan Tull 已提交
94 95 96 97 98 99
config FPGA_BRIDGE
	tristate "FPGA Bridge Framework"
	help
	  Say Y here if you want to support bridges connected between host
	  processors and FPGAs or between FPGAs.

100 101
config SOCFPGA_FPGA_BRIDGE
	tristate "Altera SoCFPGA FPGA Bridges"
102
	depends on ARCH_INTEL_SOCFPGA && FPGA_BRIDGE
103 104 105 106
	help
	  Say Y to enable drivers for FPGA bridges for Altera SOCFPGA
	  devices.

A
Alan Tull 已提交
107 108
config ALTERA_FREEZE_BRIDGE
	tristate "Altera FPGA Freeze Bridge"
109
	depends on FPGA_BRIDGE && HAS_IOMEM
A
Alan Tull 已提交
110 111 112 113 114 115
	help
	  Say Y to enable drivers for Altera FPGA Freeze bridges.  A
	  freeze bridge is a bridge that exists in the FPGA fabric to
	  isolate one region of the FPGA from the busses while that
	  region is being reprogrammed.

116 117 118 119 120
config XILINX_PR_DECOUPLER
	tristate "Xilinx LogiCORE PR Decoupler"
	depends on FPGA_BRIDGE
	depends on HAS_IOMEM
	help
121
	  Say Y to enable drivers for Xilinx LogiCORE PR Decoupler
122
	  or Xilinx Dynamic Function eXchange AIX Shutdown Manager.
123 124 125
	  The PR Decoupler exists in the FPGA fabric to isolate one
	  region of the FPGA from the busses while that region is
	  being reprogrammed during partial reconfig.
126 127 128 129 130 131
	  The Dynamic Function eXchange AXI shutdown manager prevents
	  AXI traffic from passing through the bridge. The controller
	  safely handles AXI4MM and AXI4-Lite interfaces on a
	  Reconfigurable Partition when it is undergoing dynamic
	  reconfiguration, preventing the system deadlock that can
	  occur if AXI transactions are interrupted by DFX.
132

A
Alan Tull 已提交
133 134 135 136
config FPGA_REGION
	tristate "FPGA Region"
	depends on FPGA_BRIDGE
	help
137
	  FPGA Region common code.  An FPGA Region controls an FPGA Manager
A
Alan Tull 已提交
138 139 140 141 142 143 144 145 146 147
	  and the FPGA Bridges associated with either a reconfigurable
	  region of an FPGA or a whole FPGA.

config OF_FPGA_REGION
	tristate "FPGA Region Device Tree Overlay Support"
	depends on OF && FPGA_REGION
	help
	  Support for loading FPGA images by applying a Device Tree
	  overlay.

W
Wu Hao 已提交
148 149 150 151
config FPGA_DFL
	tristate "FPGA Device Feature List (DFL) support"
	select FPGA_BRIDGE
	select FPGA_REGION
152
	depends on HAS_IOMEM
W
Wu Hao 已提交
153 154 155 156 157 158 159 160 161 162 163 164
	help
	  Device Feature List (DFL) defines a feature list structure that
	  creates a linked list of feature headers within the MMIO space
	  to provide an extensible way of adding features for FPGA.
	  Driver can walk through the feature headers to enumerate feature
	  devices (e.g. FPGA Management Engine, Port and Accelerator
	  Function Unit) and their private features for target FPGA devices.

	  Select this option to enable common support for Field-Programmable
	  Gate Array (FPGA) solutions which implement Device Feature List.
	  It provides enumeration APIs and feature device infrastructure.

165 166
config FPGA_DFL_FME
	tristate "FPGA DFL FME Driver"
167
	depends on FPGA_DFL && HWMON && PERF_EVENTS
168 169 170 171 172 173 174
	help
	  The FPGA Management Engine (FME) is a feature device implemented
	  under Device Feature List (DFL) framework. Select this option to
	  enable the platform device driver for FME which implements all
	  FPGA platform level management features. There shall be one FME
	  per DFL based FPGA device.

175 176 177 178 179 180
config FPGA_DFL_FME_MGR
	tristate "FPGA DFL FME Manager Driver"
	depends on FPGA_DFL_FME && HAS_IOMEM
	help
	  Say Y to enable FPGA Manager driver for FPGA Management Engine.

181 182 183 184 185 186
config FPGA_DFL_FME_BRIDGE
	tristate "FPGA DFL FME Bridge Driver"
	depends on FPGA_DFL_FME && HAS_IOMEM
	help
	  Say Y to enable FPGA Bridge driver for FPGA Management Engine.

187 188 189 190 191 192
config FPGA_DFL_FME_REGION
	tristate "FPGA DFL FME Region Driver"
	depends on FPGA_DFL_FME && HAS_IOMEM
	help
	  Say Y to enable FPGA Region driver for FPGA Management Engine.

193 194 195 196 197 198 199 200 201
config FPGA_DFL_AFU
	tristate "FPGA DFL AFU Driver"
	depends on FPGA_DFL
	help
	  This is the driver for FPGA Accelerated Function Unit (AFU) which
	  implements AFU and Port management features. A User AFU connects
	  to the FPGA infrastructure via a Port. There may be more than one
	  Port/AFU per DFL based FPGA device.

202 203 204 205 206 207 208 209 210 211 212
config FPGA_DFL_NIOS_INTEL_PAC_N3000
	tristate "FPGA DFL NIOS Driver for Intel PAC N3000"
	depends on FPGA_DFL
	select REGMAP
	help
	  This is the driver for the N3000 Nios private feature on Intel
	  PAC (Programmable Acceleration Card) N3000. It communicates
	  with the embedded Nios processor to configure the retimers on
	  the card. It also instantiates the SPI master (spi-altera) for
	  the card's BMC (Board Management Controller).

Z
Zhang Yi 已提交
213 214 215 216 217 218 219 220 221 222 223 224 225 226 227
config FPGA_DFL_PCI
	tristate "FPGA DFL PCIe Device Driver"
	depends on PCI && FPGA_DFL
	help
	  Select this option to enable PCIe driver for PCIe-based
	  Field-Programmable Gate Array (FPGA) solutions which implement
	  the Device Feature List (DFL). This driver provides interfaces
	  for userspace applications to configure, enumerate, open and access
	  FPGA accelerators on the FPGA DFL devices, enables system level
	  management functions such as FPGA partial reconfiguration, power
	  management and virtualization with DFL framework and DFL feature
	  device drivers.

	  To compile this as a module, choose M here.

228 229
config FPGA_MGR_ZYNQMP_FPGA
	tristate "Xilinx ZynqMP FPGA"
A
Arnd Bergmann 已提交
230
	depends on ZYNQMP_FIRMWARE || (!ZYNQMP_FIRMWARE && COMPILE_TEST)
231 232 233 234 235 236
	help
	  FPGA manager driver support for Xilinx ZynqMP FPGAs.
	  This driver uses the processor configuration port(PCAP)
	  to configure the programmable logic(PL) through PS
	  on ZynqMP SoC.

237 238 239 240 241 242 243 244 245
config FPGA_MGR_VERSAL_FPGA
	tristate "Xilinx Versal FPGA"
	depends on ARCH_ZYNQMP || COMPILE_TEST
	help
	  Select this option to enable FPGA manager driver support for
	  Xilinx Versal SoC. This driver uses the firmware interface to
	  configure the programmable logic(PL).

	  To compile this as a module, choose M here.
246 247 248 249 250 251 252 253 254 255 256 257

config FPGA_M10_BMC_SEC_UPDATE
	tristate "Intel MAX10 BMC Secure Update driver"
	depends on MFD_INTEL_M10_BMC && FW_UPLOAD
	help
	  Secure update support for the Intel MAX10 board management
	  controller.

	  This is a subdriver of the Intel MAX10 board management controller
	  (BMC) and provides support for secure updates for the BMC image,
	  the FPGA image, the Root Entry Hashes, etc.

258
endif # FPGA