On 6/17/2024 10:10 PM, Bjorn Helgaas wrote: > On Mon, Jun 17, 2024 at 03:33:54PM +0530, Basavaraj Natikar wrote: >> Add support for AMD AE4DMA controller. It performs high-bandwidth >> memory to memory and IO copy operation. Device commands are managed >> via a circular queue of 'descriptors', each of which specifies source >> and destination addresses for copying a single buffer of data. >> +++ b/drivers/dma/amd/ae4dma/Kconfig >> @@ -0,0 +1,13 @@ >> +# SPDX-License-Identifier: GPL-2.0 >> +config AMD_AE4DMA >> + tristate "AMD AE4DMA Engine" >> + depends on X86_64 && PCI > Possible "(X86_64 || COMPILE_TEST)"? Sure i will change this to "depends on (X86_64 || COMPILE_TEST) && PCI" > >> +++ b/drivers/dma/amd/ae4dma/ae4dma-pci.c >> +static int ae4_get_irqs(struct ae4_device *ae4) >> +{ >> + struct pt_device *pt = &ae4->pt; >> + struct device *dev = pt->dev; >> + int ret; >> + >> + ret = ae4_get_msix_irqs(ae4); >> + if (!ret) >> + return 0; >> + >> + /* Couldn't get MSI-X vectors, try MSI */ >> + dev_err(dev, "could not enable MSI-X (%d), trying MSI\n", ret); >> + ret = ae4_get_msi_irq(ae4); >> + if (!ret) >> + return 0; > Consider pci_alloc_irq_vectors() and pci_free_irq_vectors() here. Sure, I will change all code to use pci_alloc_irq_vectors Thanks, -- Basavaraj > >> + /* Couldn't get MSI interrupt */ >> + dev_err(dev, "could not enable MSI (%d)\n", ret); >> + >> + return ret; >> +}