Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0-only
#
# CONFIG_FPGA framework configuration
#

menuconfig CONFIG_FPGA
	tristate "FPGA Configuration Framework"
	help
	  Say Y here if you want support for configuring FPGAs from the
	  kernel.  The CONFIG_FPGA framework adds a CONFIG_FPGA manager class and CONFIG_FPGA
	  manager drivers.

if CONFIG_FPGA

config CONFIG_FPGA_MGR_SOCFPGA
	tristate "Altera SOCFPGA FPGA Manager"
	depends on CONFIG_ARCH_SOCFPGA || CONFIG_COMPILE_TEST
	help
	  CONFIG_FPGA manager driver support for Altera SOCFPGA.

config CONFIG_FPGA_MGR_SOCFPGA_A10
	tristate "Altera SoCFPGA Arria10"
	depends on CONFIG_ARCH_SOCFPGA || CONFIG_COMPILE_TEST
	select CONFIG_REGMAP_MMIO
	help
	  CONFIG_FPGA manager driver support for Altera Arria10 SoCFPGA.

config CONFIG_ALTERA_PR_IP_CORE
	tristate "Altera Partial Reconfiguration IP Core"
	help
	  Core driver support for Altera Partial Reconfiguration IP component

config CONFIG_ALTERA_PR_IP_CORE_PLAT
	tristate "Platform support of Altera Partial Reconfiguration IP Core"
	depends on CONFIG_ALTERA_PR_IP_CORE && CONFIG_OF && CONFIG_HAS_IOMEM
	help
	  Platform driver support for Altera Partial Reconfiguration IP
	  component

config CONFIG_FPGA_MGR_ALTERA_PS_SPI
	tristate "Altera FPGA Passive Serial over SPI"
	depends on CONFIG_SPI
	select CONFIG_BITREVERSE
	help
	  CONFIG_FPGA manager driver support for Altera Arria/Cyclone/Stratix
	  using the passive serial interface over CONFIG_SPI.

config CONFIG_FPGA_MGR_ALTERA_CVP
	tristate "Altera CvP FPGA Manager"
	depends on CONFIG_PCI
	help
	  CONFIG_FPGA manager driver support for Arria-V, Cyclone-V, Stratix-V,
	  Arria 10 and Stratix10 Altera FPGAs using the CvP interface over PCIe.

config CONFIG_FPGA_MGR_ZYNQ_FPGA
	tristate "Xilinx Zynq FPGA"
	depends on CONFIG_ARCH_ZYNQ || CONFIG_COMPILE_TEST
	help
	  CONFIG_FPGA manager driver support for Xilinx Zynq FPGAs.

config CONFIG_FPGA_MGR_STRATIX10_SOC
	tristate "Intel Stratix10 SoC FPGA Manager"
	depends on (CONFIG_ARCH_STRATIX10 && CONFIG_INTEL_STRATIX10_SERVICE)
	help
	  CONFIG_FPGA manager driver support for the Intel Stratix10 SoC.

config CONFIG_FPGA_MGR_XILINX_SPI
	tristate "Xilinx Configuration over Slave Serial (SPI)"
	depends on CONFIG_SPI
	help
	  CONFIG_FPGA manager driver support for Xilinx CONFIG_FPGA configuration
	  over slave serial interface.

config CONFIG_FPGA_MGR_ICE40_SPI
	tristate "Lattice iCE40 SPI"
	depends on CONFIG_OF && CONFIG_SPI
	help
	  CONFIG_FPGA manager driver support for Lattice iCE40 FPGAs over CONFIG_SPI.

config CONFIG_FPGA_MGR_MACHXO2_SPI
	tristate "Lattice MachXO2 SPI"
	depends on CONFIG_SPI
	help
	  CONFIG_FPGA manager driver support for Lattice MachXO2 configuration
	  over slave CONFIG_SPI interface.

config CONFIG_FPGA_MGR_TS73XX
	tristate "Technologic Systems TS-73xx SBC FPGA Manager"
	depends on CONFIG_ARCH_EP93XX && CONFIG_MACH_TS72XX
	help
	  CONFIG_FPGA manager driver support for the Altera Cyclone II CONFIG_FPGA
	  present on the TS-73xx SBC boards.

config 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 CONFIG_SOCFPGA_FPGA_BRIDGE
	tristate "Altera SoCFPGA FPGA Bridges"
	depends on CONFIG_ARCH_SOCFPGA && CONFIG_FPGA_BRIDGE
	help
	  Say Y to enable drivers for CONFIG_FPGA bridges for Altera SOCFPGA
	  devices.

config CONFIG_ALTERA_FREEZE_BRIDGE
	tristate "Altera FPGA Freeze Bridge"
	depends on CONFIG_FPGA_BRIDGE && CONFIG_HAS_IOMEM
	help
	  Say Y to enable drivers for Altera CONFIG_FPGA Freeze bridges.  CONFIG_A
	  freeze bridge is a bridge that exists in the CONFIG_FPGA fabric to
	  isolate one region of the CONFIG_FPGA from the busses while that
	  region is being reprogrammed.

config CONFIG_XILINX_PR_DECOUPLER
	tristate "Xilinx LogiCORE PR Decoupler"
	depends on CONFIG_FPGA_BRIDGE
	depends on CONFIG_HAS_IOMEM
	help
	  Say Y to enable drivers for Xilinx LogiCORE PR Decoupler.
	  The PR Decoupler exists in the CONFIG_FPGA fabric to isolate one
	  region of the CONFIG_FPGA from the busses while that region is
	  being reprogrammed during partial reconfig.

config CONFIG_FPGA_REGION
	tristate "FPGA Region"
	depends on CONFIG_FPGA_BRIDGE
	help
	  CONFIG_FPGA Region common code.  CONFIG_A CONFIG_FPGA Region controls a CONFIG_FPGA Manager
	  and the CONFIG_FPGA Bridges associated with either a reconfigurable
	  region of an CONFIG_FPGA or a whole CONFIG_FPGA.

config CONFIG_OF_FPGA_REGION
	tristate "FPGA Region Device Tree Overlay Support"
	depends on CONFIG_OF && CONFIG_FPGA_REGION
	help
	  Support for loading CONFIG_FPGA images by applying a Device Tree
	  overlay.

config CONFIG_FPGA_DFL
	tristate "FPGA Device Feature List (DFL) support"
	select CONFIG_FPGA_BRIDGE
	select CONFIG_FPGA_REGION
	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 CONFIG_FPGA.
	  Driver can walk through the feature headers to enumerate feature
	  devices (e.g. CONFIG_FPGA Management Engine, Port and Accelerator
	  Function Unit) and their private features for target CONFIG_FPGA devices.

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

config CONFIG_FPGA_DFL_FME
	tristate "FPGA DFL FME Driver"
	depends on CONFIG_FPGA_DFL
	help
	  The CONFIG_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
	  CONFIG_FPGA platform level management features. There shall be one FME
	  per DFL based CONFIG_FPGA device.

config CONFIG_FPGA_DFL_FME_MGR
	tristate "FPGA DFL FME Manager Driver"
	depends on CONFIG_FPGA_DFL_FME && CONFIG_HAS_IOMEM
	help
	  Say Y to enable CONFIG_FPGA Manager driver for CONFIG_FPGA Management Engine.

config CONFIG_FPGA_DFL_FME_BRIDGE
	tristate "FPGA DFL FME Bridge Driver"
	depends on CONFIG_FPGA_DFL_FME && CONFIG_HAS_IOMEM
	help
	  Say Y to enable CONFIG_FPGA Bridge driver for CONFIG_FPGA Management Engine.

config CONFIG_FPGA_DFL_FME_REGION
	tristate "FPGA DFL FME Region Driver"
	depends on CONFIG_FPGA_DFL_FME && CONFIG_HAS_IOMEM
	help
	  Say Y to enable CONFIG_FPGA Region driver for CONFIG_FPGA Management Engine.

config CONFIG_FPGA_DFL_AFU
	tristate "FPGA DFL AFU Driver"
	depends on CONFIG_FPGA_DFL
	help
	  This is the driver for CONFIG_FPGA Accelerated Function Unit (AFU) which
	  implements AFU and Port management features. CONFIG_A User AFU connects
	  to the CONFIG_FPGA infrastructure via a Port. There may be more than one
	  Port/AFU per DFL based CONFIG_FPGA device.

config CONFIG_FPGA_DFL_PCI
	tristate "FPGA DFL PCIe Device Driver"
	depends on CONFIG_PCI && CONFIG_FPGA_DFL
	help
	  Select this option to enable PCIe driver for PCIe-based
	  Field-Programmable Gate Array (CONFIG_FPGA) solutions which implement
	  the Device Feature List (DFL). This driver provides interfaces
	  for userspace applications to configure, enumerate, open and access
	  CONFIG_FPGA accelerators on the CONFIG_FPGA DFL devices, enables system level
	  management functions such as CONFIG_FPGA partial reconfiguration, power
	  management and virtualization with DFL framework and DFL feature
	  device drivers.

	  To compile this as a module, choose CONFIG_M here.

config CONFIG_FPGA_MGR_ZYNQMP_FPGA
	tristate "Xilinx ZynqMP FPGA"
	depends on CONFIG_ARCH_ZYNQMP || CONFIG_COMPILE_TEST
	help
	  CONFIG_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 # CONFIG_FPGA