Commit 21f8af9f authored by Benjamin Herrenschmidt's avatar Benjamin Herrenschmidt Committed by Greg Kroah-Hartman

powerpc/powernv: Honor the generic "no_64bit_msi" flag

commit 36074381 upstream.

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>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 2374aee4
...@@ -902,7 +902,6 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev, ...@@ -902,7 +902,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);
struct irq_data *idata; struct irq_data *idata;
struct irq_chip *ichip; struct irq_chip *ichip;
unsigned int xive_num = hwirq - phb->msi_base; unsigned int xive_num = hwirq - phb->msi_base;
...@@ -918,7 +917,7 @@ static int pnv_pci_ioda_msi_setup(struct pnv_phb *phb, struct pci_dev *dev, ...@@ -918,7 +917,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 */
......
/* /*
* Support PCI/PCIe on PowerNV platforms * Support PCI/PCIe on PowerNV platforms
* *
...@@ -50,9 +51,8 @@ static int pnv_msi_check_device(struct pci_dev* pdev, int nvec, int type) ...@@ -50,9 +51,8 @@ static int pnv_msi_check_device(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);
if (pdn && pdn->force_32bit_msi && !phb->msi32_support) if (pdev->no_64bit_msi && !phb->msi32_support)
return -ENODEV; return -ENODEV;
return (phb && phb->msi_bmp.bitmap) ? 0 : -ENODEV; return (phb && phb->msi_bmp.bitmap) ? 0 : -ENODEV;
......
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