forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 23
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fpga: dfl: reorganize to subdir layout
Follow drivers/net/ethernet/ which has control configs NET_VENDOR_BLA that map to drivers/net/ethernet/bla Since fpgas do not have many vendors, drop the 'VENDOR' and use FPGA_BLA. There are several new subdirs altera/ dfl/ lattice/ xilinx/ Each subdir has a Kconfig that has a new/reused if FPGA_BLA ... existing configs ... endif FPGA_BLA Which is sourced into the main fpga/Kconfig Each subdir has a Makefile whose transversal is controlled in the fpga/Makefile by obj-$(CONFIG_FPGA_BLA) += bla/ This is the dfl/ subdir part. Create a dfl/ subdir Move dfl-* files to it. Add a Kconfig and Makefile Because FPGA_DFL is now used in dfl/Kconfig in a if/endif block, all the other configs in dfl/Kconfig implicitly depend on FPGA_DFL. So the explicit dependence can be removed. Also since FPGA_DFL depends on HAS_IOMEM, it can be removed from the other configs. Signed-off-by: Tom Rix <trix@redhat.com>
- Loading branch information
1 parent
94f0b2d
commit 56f921c
Showing
23 changed files
with
102 additions
and
97 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,83 @@ | ||
# SPDX-License-Identifier: GPL-2.0-only | ||
|
||
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. | ||
|
||
if FPGA_DFL | ||
|
||
config FPGA_DFL_FME | ||
tristate "FPGA DFL FME Driver" | ||
depends on 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 | ||
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 | ||
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 | ||
help | ||
Say Y to enable FPGA Region driver for FPGA Management Engine. | ||
|
||
config FPGA_DFL_AFU | ||
tristate "FPGA DFL AFU Driver" | ||
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" | ||
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 | ||
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. | ||
|
||
endif #FPGA_DFL |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# SPDX-License-Identifier: GPL-2.0-only | ||
# | ||
# FPGA Device Feature List (DFL) Support | ||
obj-$(CONFIG_FPGA_DFL) += dfl.o | ||
obj-$(CONFIG_FPGA_DFL_AFU) += dfl-afu.o | ||
obj-$(CONFIG_FPGA_DFL_FME) += dfl-fme.o | ||
obj-$(CONFIG_FPGA_DFL_FME_BRIDGE) += dfl-fme-br.o | ||
obj-$(CONFIG_FPGA_DFL_FME_MGR) += dfl-fme-mgr.o | ||
obj-$(CONFIG_FPGA_DFL_FME_REGION) += dfl-fme-region.o | ||
obj-$(CONFIG_FPGA_DFL_NIOS_INTEL_PAC_N3000) += dfl-n3000-nios.o | ||
obj-$(CONFIG_FPGA_DFL_PCI) += dfl-pci.o | ||
|
||
dfl-fme-objs := dfl-fme-main.o dfl-fme-pr.o dfl-fme-error.o \ | ||
dfl-fme-perf.o | ||
dfl-afu-objs := dfl-afu-main.o dfl-afu-region.o dfl-afu-dma-region.o \ | ||
dfl-afu-error.o |
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.