linux/drivers/fpga
Xu Yilun 56172ab353 fpga: dfl: add support for N3000 Nios private feature
This patch adds support for the Nios handshake private feature on Intel
PAC (Programmable Acceleration Card) N3000.

The Nios is the embedded processor on the FPGA card. This private feature
provides a handshake interface to FPGA Nios firmware, which receives
retimer configuration command from host and executes via an internal SPI
master (spi-altera). When Nios finishes the configuration, host takes over
the ownership of the SPI master to control an Intel MAX10 BMC (Board
Management Controller) Chip on the SPI bus.

For Nios firmware handshake part, this driver requests the retimer
configuration for Nios firmware on probe, and adds some sysfs nodes for
user to query the onboard retimer's working mode and Nios firmware
version.

For SPI part, this driver adds a spi-altera platform device as well as
the MAX10 BMC spi slave info. A spi-altera driver will be matched to
handle the following SPI work.

[mdf@kernel.org: Fixed up ABI doc kernel release]

Reviewed-by: Tom Rix <trix@redhat.com>
Signed-off-by: Xu Yilun <yilun.xu@intel.com>
Signed-off-by: Wu Hao <hao.wu@intel.com>
Signed-off-by: Matthew Gerlach <matthew.gerlach@linux.intel.com>
Signed-off-by: Russ Weight <russell.h.weight@intel.com>
Signed-off-by: YueHaibing <yuehaibing@huawei.com>
Link: https://lore.kernel.org/r/20210107043714.991646-8-mdf@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-01-07 15:21:27 +01:00
..
altera-cvp.c fpga: altera-cvp: Add Stratix10 (V2) Support 2019-08-24 11:38:29 -07:00
altera-fpga2sdram.c fpga: bridge: add devm_fpga_bridge_create 2018-10-16 11:13:50 +02:00
altera-freeze-bridge.c fpga: bridge: add devm_fpga_bridge_create 2018-10-16 11:13:50 +02:00
altera-hps2fpga.c fpga: bridge: add devm_fpga_bridge_create 2018-10-16 11:13:50 +02:00
altera-pr-ip-core-plat.c fpga: fpga-mgr: altera-pr-ip: Simplify registration 2020-12-01 18:49:32 +01:00
altera-pr-ip-core.c fpga: fpga-mgr: altera-pr-ip: Simplify registration 2020-12-01 18:49:32 +01:00
altera-ps-spi.c fpga: fpga-mgr: altera-ps-spi: Simplify registration 2020-12-01 18:49:32 +01:00
dfl-afu-dma-region.c fpga: dfl: afu: convert get_user_pages() --> pin_user_pages() 2020-06-18 18:12:06 -07:00
dfl-afu-error.c fpga: dfl: afu: add interrupt support for port error reporting 2020-07-06 21:34:46 -07:00
dfl-afu-main.c Linux 5.8-rc7 2020-07-27 11:49:37 +02:00
dfl-afu-region.c fpga: dfl: afu: add afu sub feature support 2018-07-15 13:55:47 +02:00
dfl-afu.h fpga: dfl: afu: add error reporting support. 2019-09-03 19:35:41 -07:00
dfl-fme-br.c fpga: bridge: add devm_fpga_bridge_create 2018-10-16 11:13:50 +02:00
dfl-fme-error.c fpga: dfl: fme: add interrupt support for global error reporting 2020-07-06 21:35:42 -07:00
dfl-fme-main.c fpga: dfl: fme: add interrupt support for global error reporting 2020-07-06 21:35:42 -07:00
dfl-fme-mgr.c fpga: fpga-mgr: dfl-fme-mgr: Simplify registration 2020-12-01 18:49:32 +01:00
dfl-fme-perf.c fpga: dfl: change data type of feature id to u16 2020-08-19 21:05:47 -07:00
dfl-fme-pr.c drivers/fpga/dfl-fme-pr.c: get rid of pointless access_ok() 2020-05-29 11:04:56 -04:00
dfl-fme-pr.h fpga: dfl: fme: add partial reconfiguration sub feature support 2018-07-15 13:55:46 +02:00
dfl-fme-region.c fpga: dfl-fme-region: Use platform_get_drvdata() 2018-11-26 20:47:10 +01:00
dfl-fme.h fpga: dfl: fme: add performance reporting support 2020-04-28 15:49:28 +02:00
dfl-n3000-nios.c fpga: dfl: add support for N3000 Nios private feature 2021-01-07 15:21:27 +01:00
dfl-pci.c fpga: dfl-pci: locate DFLs by PCIe vendor specific capability 2021-01-07 15:21:27 +01:00
dfl.c fpga: dfl: move dfl bus related APIs to include/linux/dfl.h 2021-01-07 15:21:27 +01:00
dfl.h fpga: dfl: move dfl bus related APIs to include/linux/dfl.h 2021-01-07 15:21:27 +01:00
fpga-bridge.c fpga: Fix dead store in fpga-bridge.c 2020-06-18 18:25:42 -07:00
fpga-mgr.c fpga: fpga-mgr: Add devm_fpga_mgr_register() API 2020-12-01 18:49:32 +01:00
fpga-region.c fpga: fpga-region: Cleanup an outdated comment 2020-09-04 20:27:45 -07:00
ice40-spi.c fpga: fpga-mgr: ice40-spi: Simplify registration 2020-12-01 18:49:32 +01:00
Kconfig fpga: dfl: add support for N3000 Nios private feature 2021-01-07 15:21:27 +01:00
machxo2-spi.c fpga: fpga-mgr: machxo2-spi: Simplify registration 2020-12-01 18:49:32 +01:00
Makefile fpga: dfl: add support for N3000 Nios private feature 2021-01-07 15:21:27 +01:00
of-fpga-region.c drivers: Add generic helper to match by of_node 2019-06-24 05:22:31 +02:00
socfpga-a10.c fpga: mgr: add devm_fpga_mgr_create 2018-10-16 11:13:50 +02:00
socfpga.c fpga: fpga-mgr: socfpga: Simplify registration 2020-12-01 18:49:32 +01:00
stratix10-soc.c fpga: stratix10-soc: make FPGA task un-interruptible 2020-08-19 21:05:46 -07:00
ts73xx-fpga.c fpga: fpga-mgr: ts73xx: Simplify registration 2020-12-01 18:49:32 +01:00
xilinx-pr-decoupler.c fpga: xilinx-pr-decoupler: Remove clk_get error message for probe defer 2020-01-10 12:51:56 -08:00
xilinx-spi.c fpga: fpga-mgr: xilinx-spi: Simplify registration 2020-12-01 18:49:32 +01:00
zynq-fpga.c fpga: zynq: Remove clk_get error message for probe defer 2020-03-30 20:45:21 -07:00
zynqmp-fpga.c fpga: fpga-mgr: zynqmp: Simplify registration 2020-12-01 18:49:32 +01:00