Skip to content
  • Stephane Grosjean's avatar
    RT-socket-CAN: Add support of PEAK PCAN-PCIe FD cards family · 88d10a9d
    Stephane Grosjean authored and Jan Kiszka's avatar Jan Kiszka committed
    
    
    This patch includes the driver that supports the CANFD interfaces of
    the PCAN-PCIe FD family. This driver is largely inspired by the peak_pciefd
    driver included in the kernel since version 4.12. Except for the
    differences related to the RTDM model, this driver differs from the
    socket-CAN driver by the following points:
    
    . CAN 2.0 a/b support only (CAN-FD not available in rt-socket-can)
    . all interrupts are required (or released) when loading (or unloading)
      the module, not when activating (or deactivating) the CAN interface as in
      the socket-CAN model. Only hardware interruptions are enabled (or
      disabled) when the rtcan interface is set up (or down).
    . This way of operating allows the usage of the MSI mode: if CONFIG_PCI_MSI
      is defined while CONFIG_XENO_OPT_SHIRQ is not, then the driver activates
      the MSI mode by default. The legacy INTA mode is used otherwise. In case
      CONFIG_PCI_MSI is defined, the parameter module "usemsi" allows to change
      this default behaviour: usemsi=0 selects INTA mode while usemsi=1 selects
      MSI mode.
    . the Tx flow is managed more easily (no echo management in rt-socket-can)
    
    Signed-off-by: default avatarStephane Grosjean <s.grosjean@peak-system.com>
    Tested-by: default avatarAndy Tannenbaum <trb@bioniklabs.com>
    [Jan: added to CI]
    Signed-off-by: default avatarJan Kiszka <jan.kiszka@siemens.com>
    88d10a9d