269 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			269 lines
		
	
	
		
			8.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # 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 an FPGA manager class and FPGA
 | |
| 	  manager drivers.
 | |
| 
 | |
| if FPGA
 | |
| 
 | |
| config FPGA_MGR_SOCFPGA
 | |
| 	tristate "Altera SOCFPGA FPGA Manager"
 | |
| 	depends on ARCH_INTEL_SOCFPGA || COMPILE_TEST
 | |
| 	help
 | |
| 	  FPGA manager driver support for Altera SOCFPGA.
 | |
| 
 | |
| config FPGA_MGR_SOCFPGA_A10
 | |
| 	tristate "Altera SoCFPGA Arria10"
 | |
| 	depends on ARCH_INTEL_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_INTEL_SOCFPGA && 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_INTEL_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
 | |
| 	  or Xilinx Dynamic Function eXchange AIX Shutdown Manager.
 | |
| 	  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.
 | |
| 	  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.
 | |
| 
 | |
| config FPGA_REGION
 | |
| 	tristate "FPGA Region"
 | |
| 	depends on FPGA_BRIDGE
 | |
| 	help
 | |
| 	  FPGA Region common code.  An FPGA Region controls an 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_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).
 | |
| 
 | |
| 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.
 | |
| 
 | |
| 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.
 | |
| 
 | |
| config FPGA_M10_BMC_SEC_UPDATE
 | |
| 	tristate "Intel MAX10 BMC Secure Update driver"
 | |
| 	depends on MFD_INTEL_M10_BMC
 | |
| 	select FW_LOADER
 | |
| 	select 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.
 | |
| 
 | |
| config FPGA_MGR_MICROCHIP_SPI
 | |
| 	tristate "Microchip Polarfire SPI FPGA manager"
 | |
| 	depends on SPI
 | |
| 	help
 | |
| 	  FPGA manager driver support for Microchip Polarfire FPGAs
 | |
| 	  programming over slave SPI interface with .dat formatted
 | |
| 	  bitstream image.
 | |
| 
 | |
| endif # FPGA
 |