mbox series

[0/1] can: esd: add support for esd GmbH PCIe/402 CAN interface family

Message ID 20210728203647.15240-1-Stefan.Maetje@esd.eu (mailing list archive)
Headers show
Series can: esd: add support for esd GmbH PCIe/402 CAN interface family | expand

Message

Stefan Mätje July 28, 2021, 8:36 p.m. UTC
The purpose of this patch is to introduce a new CAN driver to support
the esd GmbH 402 family of CAN interface boards. The hardware design
is based on a CAN controller implemented in a FPGA attached to a
PCIe link.

More information on these boards can be found following the links
included in the commit message.

This patch supports all boards but will operate the CAN-FD capable
boards only in Classic-CAN mode. The CAN-FD support will be added
when the initial patch has stabilized.

The patch is based on the linux-can-next testing branch.

The patch is uses the previous work of my former colleague:
Link: https://lore.kernel.org/linux-can/1426592308-23817-1-git-send-email-thomas.koerper@esd.eu/

*Note*: scripts/checkpatch.pl still emits the following warnings:
1.esd402_pci.c:293: Still prints the non-hashed virtual address for
  debug purposes with pci_err(). This is done only on fatal
  initialization failure during modprobe and seems sensible in this
  case to debug the error. This will never occur in normal operation.
2.esdacc.h:269: The irq_cnt pointer is still declared volatile and
  this has a reason and is explained in detail in the header
  referencing the exception noted in volatile-considered-harmful.rst.

Stefan Mätje (1):
  can: esd: add support for esd GmbH PCIe/402 CAN interface family

 drivers/net/can/Kconfig          |   1 +
 drivers/net/can/Makefile         |   1 +
 drivers/net/can/esd/Kconfig      |  12 +
 drivers/net/can/esd/Makefile     |  11 +
 drivers/net/can/esd/esd402_pci.c | 531 +++++++++++++++++++++++
 drivers/net/can/esd/esdacc.c     | 717 +++++++++++++++++++++++++++++++
 drivers/net/can/esd/esdacc.h     | 394 +++++++++++++++++
 7 files changed, 1667 insertions(+)
 create mode 100644 drivers/net/can/esd/Kconfig
 create mode 100644 drivers/net/can/esd/Makefile
 create mode 100644 drivers/net/can/esd/esd402_pci.c
 create mode 100644 drivers/net/can/esd/esdacc.c
 create mode 100644 drivers/net/can/esd/esdacc.h


base-commit: 8dad5561c13ade87238d9de6dd410b43f7562447