diff options
author | Martin Jocic <martin.jocic@kvaser.com> | 2024-09-09 13:35:12 +0200 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2024-09-12 09:40:09 +0200 |
commit | d0fa06408ccf96b1d3d93d97fad6618e942efd38 (patch) | |
tree | a7a5034440cf99838b0cd566cf493a8ca736a74c /drivers/net/can | |
parent | can: esd_usb: Remove CAN_CTRLMODE_3_SAMPLES for CAN-USB/3-FD (diff) | |
download | linux-d0fa06408ccf96b1d3d93d97fad6618e942efd38.tar.xz linux-d0fa06408ccf96b1d3d93d97fad6618e942efd38.zip |
can: kvaser_pciefd: Enable 64-bit DMA addressing
Enabling 64-bit addressing for DMA buffers will prevent issues
on some memory constrained platforms like e.g. Raspberry Pi 5,
where the driver won't load because it cannot allocate enough
continuous memory in the default 32-bit memory address range.
Signed-off-by: Martin Jocic <martin.jocic@kvaser.com>
Link: https://patch.msgid.link/d7340f78e3db305bfeeb8229d2dd1c9077e10b92.1725875278.git.martin.jocic@kvaser.com
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'drivers/net/can')
-rw-r--r-- | drivers/net/can/kvaser_pciefd.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/can/kvaser_pciefd.c b/drivers/net/can/kvaser_pciefd.c index 9ffc3ffb4e8f..f86c9671a03a 100644 --- a/drivers/net/can/kvaser_pciefd.c +++ b/drivers/net/can/kvaser_pciefd.c @@ -1104,6 +1104,9 @@ static int kvaser_pciefd_setup_dma(struct kvaser_pciefd *pcie) /* Disable the DMA */ iowrite32(0, KVASER_PCIEFD_SRB_ADDR(pcie) + KVASER_PCIEFD_SRB_CTRL_REG); + + dma_set_mask_and_coherent(&pcie->pci->dev, DMA_BIT_MASK(64)); + for (i = 0; i < KVASER_PCIEFD_DMA_COUNT; i++) { pcie->dma_data[i] = dmam_alloc_coherent(&pcie->pci->dev, KVASER_PCIEFD_DMA_SIZE, |