1 # SPDX-License-Identifier: GPL-2.0-only
3 # FPGA framework configuration
7 tristate "FPGA Configuration Framework"
9 Say Y here if you want support for configuring FPGAs from the
10 kernel. The FPGA framework adds a FPGA manager class and FPGA
15 config FPGA_MGR_SOCFPGA
16 tristate "Altera SOCFPGA FPGA Manager"
17 depends on ARCH_SOCFPGA || COMPILE_TEST
19 FPGA manager driver support for Altera SOCFPGA.
21 config FPGA_MGR_SOCFPGA_A10
22 tristate "Altera SoCFPGA Arria10"
23 depends on ARCH_SOCFPGA || COMPILE_TEST
26 FPGA manager driver support for Altera Arria10 SoCFPGA.
28 config ALTERA_PR_IP_CORE
29 tristate "Altera Partial Reconfiguration IP Core"
31 Core driver support for Altera Partial Reconfiguration IP component
33 config ALTERA_PR_IP_CORE_PLAT
34 tristate "Platform support of Altera Partial Reconfiguration IP Core"
35 depends on ALTERA_PR_IP_CORE && OF && HAS_IOMEM
37 Platform driver support for Altera Partial Reconfiguration IP
40 config FPGA_MGR_ALTERA_PS_SPI
41 tristate "Altera FPGA Passive Serial over SPI"
44 FPGA manager driver support for Altera Arria/Cyclone/Stratix
45 using the passive serial interface over SPI.
47 config FPGA_MGR_ALTERA_CVP
48 tristate "Altera Arria-V/Cyclone-V/Stratix-V CvP FPGA Manager"
51 FPGA manager driver support for Arria-V, Cyclone-V, Stratix-V
52 and Arria 10 Altera FPGAs using the CvP interface over PCIe.
54 config FPGA_MGR_ZYNQ_FPGA
55 tristate "Xilinx Zynq FPGA"
56 depends on ARCH_ZYNQ || COMPILE_TEST
58 FPGA manager driver support for Xilinx Zynq FPGAs.
60 config FPGA_MGR_STRATIX10_SOC
61 tristate "Intel Stratix10 SoC FPGA Manager"
62 depends on (ARCH_STRATIX10 && INTEL_STRATIX10_SERVICE)
64 FPGA manager driver support for the Intel Stratix10 SoC.
66 config FPGA_MGR_XILINX_SPI
67 tristate "Xilinx Configuration over Slave Serial (SPI)"
70 FPGA manager driver support for Xilinx FPGA configuration
71 over slave serial interface.
73 config FPGA_MGR_ICE40_SPI
74 tristate "Lattice iCE40 SPI"
77 FPGA manager driver support for Lattice iCE40 FPGAs over SPI.
79 config FPGA_MGR_MACHXO2_SPI
80 tristate "Lattice MachXO2 SPI"
83 FPGA manager driver support for Lattice MachXO2 configuration
84 over slave SPI interface.
86 config FPGA_MGR_TS73XX
87 tristate "Technologic Systems TS-73xx SBC FPGA Manager"
88 depends on ARCH_EP93XX && MACH_TS72XX
90 FPGA manager driver support for the Altera Cyclone II FPGA
91 present on the TS-73xx SBC boards.
94 tristate "FPGA Bridge Framework"
96 Say Y here if you want to support bridges connected between host
97 processors and FPGAs or between FPGAs.
99 config SOCFPGA_FPGA_BRIDGE
100 tristate "Altera SoCFPGA FPGA Bridges"
101 depends on ARCH_SOCFPGA && FPGA_BRIDGE
103 Say Y to enable drivers for FPGA bridges for Altera SOCFPGA
106 config ALTERA_FREEZE_BRIDGE
107 tristate "Altera FPGA Freeze Bridge"
108 depends on FPGA_BRIDGE && HAS_IOMEM
110 Say Y to enable drivers for Altera FPGA Freeze bridges. A
111 freeze bridge is a bridge that exists in the FPGA fabric to
112 isolate one region of the FPGA from the busses while that
113 region is being reprogrammed.
115 config XILINX_PR_DECOUPLER
116 tristate "Xilinx LogiCORE PR Decoupler"
117 depends on FPGA_BRIDGE
120 Say Y to enable drivers for Xilinx LogiCORE PR Decoupler.
121 The PR Decoupler exists in the FPGA fabric to isolate one
122 region of the FPGA from the busses while that region is
123 being reprogrammed during partial reconfig.
126 tristate "FPGA Region"
127 depends on FPGA_BRIDGE
129 FPGA Region common code. A FPGA Region controls a FPGA Manager
130 and the FPGA Bridges associated with either a reconfigurable
131 region of an FPGA or a whole FPGA.
133 config OF_FPGA_REGION
134 tristate "FPGA Region Device Tree Overlay Support"
135 depends on OF && FPGA_REGION
137 Support for loading FPGA images by applying a Device Tree
141 tristate "FPGA Device Feature List (DFL) support"
145 Device Feature List (DFL) defines a feature list structure that
146 creates a linked list of feature headers within the MMIO space
147 to provide an extensible way of adding features for FPGA.
148 Driver can walk through the feature headers to enumerate feature
149 devices (e.g. FPGA Management Engine, Port and Accelerator
150 Function Unit) and their private features for target FPGA devices.
152 Select this option to enable common support for Field-Programmable
153 Gate Array (FPGA) solutions which implement Device Feature List.
154 It provides enumeration APIs and feature device infrastructure.
157 tristate "FPGA DFL FME Driver"
160 The FPGA Management Engine (FME) is a feature device implemented
161 under Device Feature List (DFL) framework. Select this option to
162 enable the platform device driver for FME which implements all
163 FPGA platform level management features. There shall be one FME
164 per DFL based FPGA device.
166 config FPGA_DFL_FME_MGR
167 tristate "FPGA DFL FME Manager Driver"
168 depends on FPGA_DFL_FME && HAS_IOMEM
170 Say Y to enable FPGA Manager driver for FPGA Management Engine.
172 config FPGA_DFL_FME_BRIDGE
173 tristate "FPGA DFL FME Bridge Driver"
174 depends on FPGA_DFL_FME && HAS_IOMEM
176 Say Y to enable FPGA Bridge driver for FPGA Management Engine.
178 config FPGA_DFL_FME_REGION
179 tristate "FPGA DFL FME Region Driver"
180 depends on FPGA_DFL_FME && HAS_IOMEM
182 Say Y to enable FPGA Region driver for FPGA Management Engine.
185 tristate "FPGA DFL AFU Driver"
188 This is the driver for FPGA Accelerated Function Unit (AFU) which
189 implements AFU and Port management features. A User AFU connects
190 to the FPGA infrastructure via a Port. There may be more than one
191 Port/AFU per DFL based FPGA device.
194 tristate "FPGA DFL PCIe Device Driver"
195 depends on PCI && FPGA_DFL
197 Select this option to enable PCIe driver for PCIe-based
198 Field-Programmable Gate Array (FPGA) solutions which implement
199 the Device Feature List (DFL). This driver provides interfaces
200 for userspace applications to configure, enumerate, open and access
201 FPGA accelerators on the FPGA DFL devices, enables system level
202 management functions such as FPGA partial reconfiguration, power
203 management and virtualization with DFL framework and DFL feature
206 To compile this as a module, choose M here.
208 config FPGA_MGR_ZYNQMP_FPGA
209 tristate "Xilinx ZynqMP FPGA"
210 depends on ARCH_ZYNQMP || COMPILE_TEST
212 FPGA manager driver support for Xilinx ZynqMP FPGAs.
213 This driver uses the processor configuration port(PCAP)
214 to configure the programmable logic(PL) through PS