]> www.infradead.org Git - users/jedix/linux-maple.git/commit
misc: keba: Add basic KEBA CP500 system FPGA support
authorGerhard Engleder <eg@keba.com>
Sun, 30 Jun 2024 19:47:39 +0000 (21:47 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 4 Jul 2024 10:29:07 +0000 (12:29 +0200)
commita1944676767e855869b6af8e1c7e185372feaf31
tree5765f51fbceca5c69b7b97a3e7a99321430460bb
parent6150e5e1ae2d8ad72f52217f8f41fe446cae9e27
misc: keba: Add basic KEBA CP500 system FPGA support

The KEBA CP500 system FPGA is a PCIe device, which consists of multiple
IP cores. Every IP core has its own auxiliary driver. The cp500 driver
registers an auxiliary device for each device and the corresponding
drivers are loaded by the Linux driver infrastructure.

Currently 3 variants of this device exists. Every variant has its own
PCI device ID, which is used to determine the list of available IP
cores. In this first version only the auxiliary device for the I2C
controller is registered.

Besides the auxiliary device registration some other basic functions of
the FPGA are implemented; e.g, FPGA version sysfs file, keep FPGA
configuration on reset sysfs file, error message for errors on the
internal AXI bus of the FPGA.

Signed-off-by: Gerhard Engleder <eg@keba.com>
Link: https://lore.kernel.org/r/20240630194740.7137-2-gerhard@engleder-embedded.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Documentation/ABI/stable/sysfs-driver-misc-cp500 [new file with mode: 0644]
drivers/misc/Kconfig
drivers/misc/Makefile
drivers/misc/keba/Kconfig [new file with mode: 0644]
drivers/misc/keba/Makefile [new file with mode: 0644]
drivers/misc/keba/cp500.c [new file with mode: 0644]
include/linux/misc/keba.h [new file with mode: 0644]