[PATCH Xilinx Alveo 8/8] fpga: xrt: Kconfig and Makefile updates for XRT drivers

From: Sonal Santan
Date: Sat Nov 28 2020 - 19:04:38 EST


From: Sonal Santan <sonal.santan@xxxxxxxxxx>

Update fpga Kconfig/Makefile and add Kconfig/Makefile for
new drivers.

Signed-off-by: Sonal Santan <sonal.santan@xxxxxxxxxx>
---
drivers/fpga/Kconfig | 2 ++
drivers/fpga/Makefile | 3 +++
drivers/fpga/alveo/Kconfig | 7 ++++++
drivers/fpga/alveo/lib/Kconfig | 11 +++++++++
drivers/fpga/alveo/lib/Makefile | 42 ++++++++++++++++++++++++++++++++
drivers/fpga/alveo/mgmt/Kconfig | 11 +++++++++
drivers/fpga/alveo/mgmt/Makefile | 28 +++++++++++++++++++++
7 files changed, 104 insertions(+)
create mode 100644 drivers/fpga/alveo/Kconfig
create mode 100644 drivers/fpga/alveo/lib/Kconfig
create mode 100644 drivers/fpga/alveo/lib/Makefile
create mode 100644 drivers/fpga/alveo/mgmt/Kconfig
create mode 100644 drivers/fpga/alveo/mgmt/Makefile

diff --git a/drivers/fpga/Kconfig b/drivers/fpga/Kconfig
index 7cd5a29fc437..8687ef231308 100644
--- a/drivers/fpga/Kconfig
+++ b/drivers/fpga/Kconfig
@@ -215,4 +215,6 @@ config FPGA_MGR_ZYNQMP_FPGA
to configure the programmable logic(PL) through PS
on ZynqMP SoC.

+source "drivers/fpga/alveo/Kconfig"
+
endif # FPGA
diff --git a/drivers/fpga/Makefile b/drivers/fpga/Makefile
index d8e21dfc6778..59943dccf405 100644
--- a/drivers/fpga/Makefile
+++ b/drivers/fpga/Makefile
@@ -46,3 +46,6 @@ dfl-afu-objs += dfl-afu-error.o

# Drivers for FPGAs which implement DFL
obj-$(CONFIG_FPGA_DFL_PCI) += dfl-pci.o
+
+obj-$(CONFIG_FPGA_ALVEO_LIB) += alveo/lib/
+obj-$(CONFIG_FPGA_ALVEO_XMGMT) += alveo/mgmt/
diff --git a/drivers/fpga/alveo/Kconfig b/drivers/fpga/alveo/Kconfig
new file mode 100644
index 000000000000..a583c3543945
--- /dev/null
+++ b/drivers/fpga/alveo/Kconfig
@@ -0,0 +1,7 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Xilinx Alveo FPGA device configuration
+#
+
+source "drivers/fpga/alveo/lib/Kconfig"
+source "drivers/fpga/alveo/mgmt/Kconfig"
diff --git a/drivers/fpga/alveo/lib/Kconfig b/drivers/fpga/alveo/lib/Kconfig
new file mode 100644
index 000000000000..62175af2108e
--- /dev/null
+++ b/drivers/fpga/alveo/lib/Kconfig
@@ -0,0 +1,11 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Xilinx Alveo FPGA device configuration
+#
+
+config FPGA_ALVEO_LIB
+ tristate "Xilinx Alveo Driver Library"
+ depends on HWMON && PCI
+ select LIBFDT
+ help
+ Xilinx Alveo FPGA PCIe device driver common library.
diff --git a/drivers/fpga/alveo/lib/Makefile b/drivers/fpga/alveo/lib/Makefile
new file mode 100644
index 000000000000..a14204dc489d
--- /dev/null
+++ b/drivers/fpga/alveo/lib/Makefile
@@ -0,0 +1,42 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Copyright (C) 2020 Xilinx, Inc. All rights reserved.
+#
+# Authors: Sonal.Santan@xxxxxxxxxx
+#
+
+FULL_ALVEO_PATH=$(srctree)/$(src)/..
+FULL_DTC_PATH=$(srctree)/scripts/dtc/libfdt
+
+obj-$(CONFIG_FPGA_ALVEO_LIB) := xrt-lib.o
+
+xrt-lib-objs := \
+ xrt-main.o \
+ xrt-subdev.o \
+ xrt-cdev.o \
+ ../common/xrt-metadata.o \
+ subdevs/xrt-partition.o \
+ subdevs/xrt-test.o \
+ subdevs/xrt-vsec.o \
+ subdevs/xrt-vsec-golden.o \
+ subdevs/xrt-axigate.o \
+ subdevs/xrt-qspi.o \
+ subdevs/xrt-gpio.o \
+ subdevs/xrt-mailbox.o \
+ subdevs/xrt-icap.o \
+ subdevs/xrt-cmc.o \
+ subdevs/xrt-cmc-ctrl.o \
+ subdevs/xrt-cmc-sensors.o \
+ subdevs/xrt-cmc-mailbox.o \
+ subdevs/xrt-cmc-bdinfo.o \
+ subdevs/xrt-cmc-sc.o \
+ subdevs/xrt-srsr.o \
+ subdevs/xrt-clock.o \
+ subdevs/xrt-clkfreq.o \
+ subdevs/xrt-ucs.o \
+ subdevs/xrt-calib.o
+
+
+ccflags-y := -I$(FULL_ALVEO_PATH)/include \
+ -I$(FULL_ALVEO_PATH)/common \
+ -I$(FULL_DTC_PATH)
diff --git a/drivers/fpga/alveo/mgmt/Kconfig b/drivers/fpga/alveo/mgmt/Kconfig
new file mode 100644
index 000000000000..8a5590842dad
--- /dev/null
+++ b/drivers/fpga/alveo/mgmt/Kconfig
@@ -0,0 +1,11 @@
+# SPDX-License-Identifier: GPL-2.0-only
+#
+# Xilinx Alveo FPGA device configuration
+#
+
+config FPGA_ALVEO_XMGMT
+ tristate "Xilinx Alveo Management Driver"
+ depends on HWMON && PCI && FPGA_ALVEO_LIB
+ select LIBFDT
+ help
+ Xilinx Alveo FPGA PCIe device driver for Management Physical Function.
diff --git a/drivers/fpga/alveo/mgmt/Makefile b/drivers/fpga/alveo/mgmt/Makefile
new file mode 100644
index 000000000000..08be7952a832
--- /dev/null
+++ b/drivers/fpga/alveo/mgmt/Makefile
@@ -0,0 +1,28 @@
+# SPDX-License-Identifier: GPL-2.0
+#
+# Copyright (C) 2019-2020 Xilinx, Inc. All rights reserved.
+#
+# Authors: Sonal.Santan@xxxxxxxxxx
+#
+
+FULL_ALVEO_PATH=$(srctree)/$(src)/..
+FULL_DTC_PATH=$(srctree)/scripts/dtc/libfdt
+
+obj-$(CONFIG_FPGA_ALVEO_XMGMT) += xmgmt.o
+
+commondir := ../common
+
+xmgmt-objs := xmgmt-root.o \
+ xmgmt-main.o \
+ xmgmt-fmgr-drv.o \
+ xmgmt-main-ulp.o \
+ xmgmt-main-mailbox.o \
+ $(commondir)/xrt-root.o \
+ $(commondir)/xrt-metadata.o \
+ $(commondir)/xrt-xclbin.o
+
+
+
+ccflags-y := -I$(FULL_ALVEO_PATH)/include \
+ -I$(FULL_ALVEO_PATH)/common \
+ -I$(FULL_DTC_PATH)
--
2.17.1