can: kvaser_pciefd: Add support for Kvaser PCIe 8xCAN
authorMartin Jocić <martin.jocic@kvaser.com>
Fri, 1 Mar 2024 12:37:08 +0000 (12:37 +0000)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Mon, 4 Mar 2024 07:38:34 +0000 (08:38 +0100)
Add support for new Kvaser pciefd device, PCIe 8xCAN, based on Xilinx FPGA.

Signed-off-by: Martin Jocic <martin.jocic@kvaser.com>
Link: https://lore.kernel.org/all/2b2c720a788e1904283e354abb320adb5b631d26.camel@kvaser.com
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/Kconfig
drivers/net/can/kvaser_pciefd.c

index 620766eb6bc1b56cde1516cc020f93d02a714880..2e31db55d9278610718e4db35bb1e0c31e24e9c1 100644 (file)
@@ -169,6 +169,7 @@ config CAN_KVASER_PCIEFD
            Kvaser Mini PCI Express 1xCAN v3
            Kvaser Mini PCI Express 2xCAN v3
            Kvaser M.2 PCIe 4xCAN
+           Kvaser PCIe 8xCAN
 
 config CAN_SLCAN
        tristate "Serial / USB serial CAN Adaptors (slcan)"
index 416f10480b406a48d06f0c5e71b13fcc3b461bf4..f81b598147b3062b453a246f27032c23f9e0d2cb 100644 (file)
@@ -27,7 +27,7 @@ MODULE_DESCRIPTION("CAN driver for Kvaser CAN/PCIe devices");
 #define KVASER_PCIEFD_BEC_POLL_FREQ (jiffies + msecs_to_jiffies(200))
 #define KVASER_PCIEFD_MAX_ERR_REP 256U
 #define KVASER_PCIEFD_CAN_TX_MAX_COUNT 17U
-#define KVASER_PCIEFD_MAX_CAN_CHANNELS 4UL
+#define KVASER_PCIEFD_MAX_CAN_CHANNELS 8UL
 #define KVASER_PCIEFD_DMA_COUNT 2U
 
 #define KVASER_PCIEFD_DMA_SIZE (4U * 1024U)
@@ -49,6 +49,7 @@ MODULE_DESCRIPTION("CAN driver for Kvaser CAN/PCIe devices");
 
 /* Xilinx based devices */
 #define KVASER_PCIEFD_M2_4CAN_DEVICE_ID 0x0017
+#define KVASER_PCIEFD_8CAN_DEVICE_ID 0x0019
 
 /* Altera SerDes Enable 64-bit DMA address translation */
 #define KVASER_PCIEFD_ALTERA_DMA_64BIT BIT(0)
@@ -496,6 +497,10 @@ static struct pci_device_id kvaser_pciefd_id_table[] = {
                PCI_DEVICE(KVASER_PCIEFD_VENDOR, KVASER_PCIEFD_M2_4CAN_DEVICE_ID),
                .driver_data = (kernel_ulong_t)&kvaser_pciefd_xilinx_driver_data,
        },
+       {
+               PCI_DEVICE(KVASER_PCIEFD_VENDOR, KVASER_PCIEFD_8CAN_DEVICE_ID),
+               .driver_data = (kernel_ulong_t)&kvaser_pciefd_xilinx_driver_data,
+       },
        {
                0,
        },