Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PCI: bt1: Set 64-bit DMA mask

The DW PCIe Root Port IP core is synthesized with the 64-bit AXI address
bus. Since the device is also equipped with the eDMA engine, explicitly
set the device DMA mask so DMA engine clients can allocate data buffers
anywhere in the 64-bit memory space.

Link: https://lore.kernel.org/r/20230113171409.30470-27-Sergey.Semin@baikalelectronics.ru
Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Signed-off-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>

authored by

Serge Semin and committed by
Bjorn Helgaas
68373f2c 6c784e21

+4
+4
drivers/pci/controller/dwc/pcie-bt1.c
··· 583 583 struct device *dev = &btpci->pdev->dev; 584 584 int ret; 585 585 586 + ret = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64)); 587 + if (ret) 588 + return ret; 589 + 586 590 btpci->dw.version = DW_PCIE_VER_460A; 587 591 btpci->dw.dev = dev; 588 592 btpci->dw.ops = &bt1_pcie_ops;