Commit 36074381 authored by Benjamin Herrenschmidt's avatar Benjamin Herrenschmidt

powerpc/powernv: Honor the generic "no_64bit_msi" flag

Instead of the arch specific quirk which we are deprecating
and that drivers don't understand.
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
CC: <stable@vger.kernel.org>
parent db79afa1
...@@ -1509,7 +1509,6 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev, ...@@ -1509,7 +1509,6 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev,
unsigned int is_64, struct msi_msg *msg) unsigned int is_64, struct msi_msg *msg)
{ {
struct pnv_ioda_pe *pe = pnv_ioda_get_pe(dev); struct pnv_ioda_pe *pe = pnv_ioda_get_pe(dev);
struct pci_dn *pdn = pci_get_pdn(dev);
unsigned int xive_num = hwirq - phb->msi_base; unsigned int xive_num = hwirq - phb->msi_base;
__be32 data; __be32 data;
int rc; int rc;
...@@ -1523,7 +1522,7 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev, ...@@ -1523,7 +1522,7 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev,
return -ENXIO; return -ENXIO;
/* Force 32-bit MSI on some broken devices */ /* Force 32-bit MSI on some broken devices */
if (pdn && pdn->force_32bit_msi) if (dev->no_64bit_msi)
is_64 = 0; is_64 = 0;
/* Assign XIVE to PE */ /* Assign XIVE to PE */
......
...@@ -50,7 +50,6 @@ static int pnv_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type) ...@@ -50,7 +50,6 @@ static int pnv_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
{ {
struct pci_controller *hose = pci_bus_to_host(pdev->bus); struct pci_controller *hose = pci_bus_to_host(pdev->bus);
struct pnv_phb *phb = hose->private_data; struct pnv_phb *phb = hose->private_data;
struct pci_dn *pdn = pci_get_pdn(pdev);
struct msi_desc *entry; struct msi_desc *entry;
struct msi_msg msg; struct msi_msg msg;
int hwirq; int hwirq;
...@@ -60,7 +59,7 @@ static int pnv_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type) ...@@ -60,7 +59,7 @@ static int pnv_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
if (WARN_ON(!phb) || !phb->msi_bmp.bitmap) if (WARN_ON(!phb) || !phb->msi_bmp.bitmap)
return -ENODEV; return -ENODEV;
if (pdn && pdn->force_32bit_msi && !phb->msi32_support) if (pdev->no_64bit_msi && !phb->msi32_support)
return -ENODEV; return -ENODEV;
list_for_each_entry(entry, &pdev->msi_list, list) { list_for_each_entry(entry, &pdev->msi_list, list) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment