PCI: layerscape: Modify the MSIX to the doorbell mode
authorXiaowei Bao <xiaowei.bao@nxp.com>
Fri, 18 Sep 2020 08:00:20 +0000 (16:00 +0800)
committerLorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Mon, 21 Sep 2020 10:46:05 +0000 (11:46 +0100)
dw_pcie_ep_raise_msix_irq was never called in the exisitng driver
before, because the ls1046a platform don't support the MSIX feature
and msix_capable was always set to false.
Now that add the ls1088a platform with MSIX support, use the doorbell
method to support the MSIX feature.

Link: https://lore.kernel.org/r/20200918080024.13639-9-Zhiqiang.Hou@nxp.com
Signed-off-by: Xiaowei Bao <xiaowei.bao@nxp.com>
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Andrew Murray <andrew.murray@arm.com>
drivers/pci/controller/dwc/pci-layerscape-ep.c

index 9601f9c09cb13cefd3675bc2fa66b012fc3bd9d0..bfab1c694f0054a22a04dd993f889d2bb2d6b09f 100644 (file)
@@ -79,7 +79,8 @@ static int ls_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no,
        case PCI_EPC_IRQ_MSI:
                return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num);
        case PCI_EPC_IRQ_MSIX:
-               return dw_pcie_ep_raise_msix_irq(ep, func_no, interrupt_num);
+               return dw_pcie_ep_raise_msix_irq_doorbell(ep, func_no,
+                                                         interrupt_num);
        default:
                dev_err(pci->dev, "UNKNOWN IRQ type\n");
                return -EINVAL;