powerpc/pseries: Check for MSI-X also in rtas_msi_pci_irq_fixup()
authorMichael Ellerman <michael@ellerman.id.au>
Thu, 22 Jan 2009 20:54:32 +0000 (20:54 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 11 Feb 2009 02:38:01 +0000 (13:38 +1100)
We also need to check that the device isn't using MSI-X in the irq fixup
routine, otherwise we might leave MSI-Xs configured at boot.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/platforms/pseries/msi.c

index acf1070d65c0bac0a7952e7a5736c510a7e3a0dd..e6c80ac076974e491264a51b2c33dc3d6ff5188d 100644 (file)
@@ -244,8 +244,8 @@ static void rtas_msi_pci_irq_fixup(struct pci_dev *pdev)
        }
 
        /* No MSI -> MSIs can't have been assigned by fw, leave LSI */
-       if (check_req_msi(pdev, 1)) {
-               dev_dbg(&pdev->dev, "rtas_msi: no req#msi, nothing to do.\n");
+       if (check_req_msi(pdev, 1) && check_req_msix(pdev, 1)) {
+               dev_dbg(&pdev->dev, "rtas_msi: no req#msi/x, nothing to do.\n");
                return;
        }