hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
# SPDX-License-Identifier: GPL-2.0-only
#
# FPGA framework configuration
#
 
menuconfig FPGA
   tristate "FPGA Configuration Framework"
   help
     Say Y here if you want support for configuring FPGAs from the
     kernel.  The FPGA framework adds a FPGA manager class and FPGA
     manager drivers.
 
if FPGA
 
config FPGA_MGR_SOCFPGA
   tristate "Altera SOCFPGA FPGA Manager"
   depends on ARCH_SOCFPGA || COMPILE_TEST
   help
     FPGA manager driver support for Altera SOCFPGA.
 
config FPGA_MGR_SOCFPGA_A10
   tristate "Altera SoCFPGA Arria10"
   depends on ARCH_SOCFPGA || COMPILE_TEST
   select REGMAP_MMIO
   help
     FPGA manager driver support for Altera Arria10 SoCFPGA.
 
config ALTERA_PR_IP_CORE
   tristate "Altera Partial Reconfiguration IP Core"
   help
     Core driver support for Altera Partial Reconfiguration IP component
 
config ALTERA_PR_IP_CORE_PLAT
   tristate "Platform support of Altera Partial Reconfiguration IP Core"
   depends on ALTERA_PR_IP_CORE && OF && HAS_IOMEM
   help
     Platform driver support for Altera Partial Reconfiguration IP
     component
 
config FPGA_MGR_ALTERA_PS_SPI
   tristate "Altera FPGA Passive Serial over SPI"
   depends on SPI
   select BITREVERSE
   help
     FPGA manager driver support for Altera Arria/Cyclone/Stratix
     using the passive serial interface over SPI.
 
config FPGA_MGR_ALTERA_CVP
   tristate "Altera CvP FPGA Manager"
   depends on PCI
   help
     FPGA manager driver support for Arria-V, Cyclone-V, Stratix-V,
     Arria 10 and Stratix10 Altera FPGAs using the CvP interface over PCIe.
 
config FPGA_MGR_ZYNQ_FPGA
   tristate "Xilinx Zynq FPGA"
   depends on ARCH_ZYNQ || COMPILE_TEST
   help
     FPGA manager driver support for Xilinx Zynq FPGAs.
 
config FPGA_MGR_STRATIX10_SOC
   tristate "Intel Stratix10 SoC FPGA Manager"
   depends on (ARCH_STRATIX10 && INTEL_STRATIX10_SERVICE)
   help
     FPGA manager driver support for the Intel Stratix10 SoC.
 
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.
 
config FPGA_MGR_ICE40_SPI
   tristate "Lattice iCE40 SPI"
   depends on OF && SPI
   help
     FPGA manager driver support for Lattice iCE40 FPGAs over SPI.
 
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.
 
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.
 
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.
 
config SOCFPGA_FPGA_BRIDGE
   tristate "Altera SoCFPGA FPGA Bridges"
   depends on ARCH_SOCFPGA && FPGA_BRIDGE
   help
     Say Y to enable drivers for FPGA bridges for Altera SOCFPGA
     devices.
 
config ALTERA_FREEZE_BRIDGE
   tristate "Altera FPGA Freeze Bridge"
   depends on FPGA_BRIDGE && HAS_IOMEM
   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.
 
config XILINX_PR_DECOUPLER
   tristate "Xilinx LogiCORE PR Decoupler"
   depends on FPGA_BRIDGE
   depends on HAS_IOMEM
   help
     Say Y to enable drivers for Xilinx LogiCORE PR Decoupler.
     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.
 
config FPGA_REGION
   tristate "FPGA Region"
   depends on FPGA_BRIDGE
   help
     FPGA Region common code.  A FPGA Region controls a FPGA Manager
     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.
 
config FPGA_DFL
   tristate "FPGA Device Feature List (DFL) support"
   select FPGA_BRIDGE
   select FPGA_REGION
   depends on HAS_IOMEM
   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.
 
config FPGA_DFL_FME
   tristate "FPGA DFL FME Driver"
   depends on FPGA_DFL && HWMON && PERF_EVENTS
   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.
 
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.
 
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.
 
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.
 
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.
 
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.
 
config FPGA_MGR_ZYNQMP_FPGA
   tristate "Xilinx ZynqMP FPGA"
   depends on ZYNQMP_FIRMWARE || (!ZYNQMP_FIRMWARE && COMPILE_TEST)
   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.
 
endif # FPGA